⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 数字电压表.asm

📁 采用汇编加C语言书写的LED程序
💻 ASM
字号:
共阳极连接,P1口为字段码口,P3口为位选口
P3。5为单路/循环显示转换按键,P3.6为单路显示时当时通道选择的按键
70H-77H存放采样的8个数据,78H-7BH为显示缓冲区,分别为个位、十位、百位和当前通道值
00H们为单路。循环显示控制位,当为0时循环显示,为1时单路显示

ORG OOOOH
LJMP START


START: 	MOV R0,#70H
       	MOV R2,#0BH
	CLR A
T1:	MOV @R0,A
	INC R0
	DJNZ R2,T1
   	MOV P1,A
	MOV P2,A
	MOV P3,A
MAIN:	LCALL TEST
	LCALL DISPLAY
	AJMP MAIN

   AD转换子程序
TEST:  	CLR A
	MOV RO,#70H
	MOV R1,#0H
	LCALL AD
WAIT:	JNB P3.7,WAIT
	LCALL READAD
AD:  SETB P2.3
	NOP
	NOP
	CLR P2.3
	SETB P2.4
	NOP
	NOP
	CLR P2.4
	NOP
	NOP
	NOP
	NOP
	RET
READAD: SETB P2.5
	MOV A,P0
	CLR P2.5
	MOV @R0,A
	INC @R1
	INC R0
	CLR A
	MOV P2,A
	CJNE @R1,#08H,AD
	MOV A,#0FFH
	MOV P1,A
	MOV P0,A
	MOV P2,A	
	RET

DISPLAY: JB 00H,DISPLAY2
	MOV R0,#70H
	MOV R1,#08H
	MOV 7BH,#0H
DISPLAY1:LCALL TUNBCD    显示三位BCD码子程序
	MOV R3,#0FFH
DIS:	LCALL DISP 
 	LCALL KEYSCAN1
	DJNZ R3,DIS
	INC R0
	INC 7BH
	DJNZ R1,DISPLAY1
	RET

DISPLAY2: DEC @R0
	  DEC 7BH
	  LCALL TUNBCD
	  MOV R1,#0FFH
T2:	  LCALL  DISP
	  LCALL KEYSCAN2
	  DJNZ @R1,T2
	  INC @R0
	  INC 7BH
	  RET

KEYSCAN2: JNB P3.5,KEYSCAN1
	  JNB P3.6,K2WAIT
KGOR:	  RET
K2WAIT:  LCALL DISP
	 JB P3.6,KGOR
	 JNB P3.6,K2WAIT1
K2WAIT2: INC @R0
	 CJNZ @R0,#08H,K2WAIT3
	  MOV @RO,#0H 
K2WAIT3: INC 7BH
	 MOV A,7BH
	CJNZ A,#08H,K2WAIT4
	MOV 78H,#0H
	RET
K2WAIT4: MOV R1,#0AH
	 RET
K2WAIT1: LCALL DISP
	JNB P3.6,K2WAIT1
	JB P3.6,K2WAIT2
	
KEYSCAN1: JNB P3.5,WAIT1
  GOR:   RET

WAIT1: 	LCALL DISP
	JB P3.5,GOR
	JNB WAIT2
WAIT3:  CPL OOH
	MOV R1,#1
	MOV R3,#0AH
	RET
WAIT2: LCALL DISP
	JNB WAIT2
	JB WAIT3



显示子程序
DISP:MOV R0,#78H
     MOV R4,#0FEH
     MOV R6,#04H
DISP1: MOV A,@RO
	MOV DPTR,#TAB
	MOV A,@A+DPTR	
        MOV P1,A
	MOV P3,@R4
	DELAY1MS
	INC R0
	MOV A,@R4
	RL A
	MOV @R4,A
	DJNZ R6,DISP1
RET
	
显示三位BCD码子程序
TUNBCD: MOV A,@RO
	MOV B,#51H
	DIV AB
	MOV 7AH,A
	MOV A,B
	CLR F0
	SUBB A,#1AH
	MOV F0,C
	MOV A,#10
	MUL AB
	MOV B,#51
	DIV AB
	JB F0,LOOP2
	ADD A,#5
LOOP2:  MOV 79H,A
	MOV A,B
	CLR F0
	SUBB A,#1AH
	MOV F0,C
	MOV A,#10H
	MUL AB
	MOV B,#51
	DIV AB
	JB F0,LOOP3
	ADD A,#5
LOOP3:	MOV 78H,A
	RET





⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -