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

📄 数字电压表.asm

📁 该程序是采用AT89C51和ADC0808为主要硬件构成的数字电压表的源程序(汇编语言)
💻 ASM
字号:
ADC	EQU 	30H
CLOCK	BIT	P2.4
ST      BIT 	P2.5
EOC 	BIT 	P2.6
OE	BIT 	P2.7

        ORG 	00H
        SJMP	START
        ORG     0BH
        LJMP	INTER
        ORG 40H
START:  MOV	R1,#00H
	MOV	R2,#00H
	MOV	R3,#00H
        MOV     R4,#00H
        MOV     P3,#00H
	MOV	DPTR,#TABLE		;段码表首地址
	MOV	TMOD,#02H
	MOV	TH0,#200
	MOV	TL0,#00H
	MOV	IE,#82H
	SETB	TR0

WAIT:   CLR 	ST
	SETB 	ST
	CLR 	ST				;启动AD转换
 	JNB 	EOC,$			;等待转换结束
	SETB 	OE
	MOV 	ADC,P1			;读取AD转换结果
	CLR 	OE
        MOV 	A,ADC
        MOV     B,#51
        DIV     AB
        MOV 	R1,A
        MOV     A,B
        MOV     B,#5
        DIV     AB
        MOV     R2,A
        MOV     A,B
        MOV     B,#10
        MUL     AB
        MOV     B,#5
        DIV     AB
        MOV     R3,A
        LCALL	DISP
	SJMP 	WAIT
INTER:	CPL	CLOCK		 	;提供ADC0809时钟信号
        RETI
DISP:	MOV	A,R1
        SETB    P3.0      	;显示子程序
	MOVC	A,@A+DPTR
	CLR	P2.0
	MOV	P0,A
	LCALL	DELAY
	SETB	P2.0
        CLR     P3.0
      	MOV	A,R2
	MOVC	A,@A+DPTR
	CLR	P2.1
	MOV	P0,A
	LCALL	DELAY
	SETB	P2.1
	MOV	A,R3
	MOVC	A,@A+DPTR
	CLR	P2.2
	MOV	P0,A
	LCALL	DELAY
	SETB	P2.2
        MOV     R4,#10
        MOV     A,R4
        MOVC    A,@A+DPTR
        CLR     P2.3
        MOV     P0,A
        LCALL   DELAY
        SETB    P2.3
        RET
DELAY:	MOV	R6,#10			;延时5毫秒
D1:	MOV	R7,#250
	DJNZ	R7,$
	DJNZ	R6,D1
	RET
TABLE: 	DB 	3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00111110B
        END

⌨️ 快捷键说明

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