📄 显示子程序.asm
字号:
;VOL_L EQU 28H ;存放读取数据的底四位
VOL_H EQU 29H ;存放读取数据的高四位
A_BIT EQU 20H ;高位存放
B_BIT EQU 21H ;地位存放
;-----------------------------------
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN:
SETB P3.3 ;清显示
SETB P3.4
SETB P3.5
START:
CLR P3.2 ;写有效
JADC:
JB P3.0, $
;ACALL DISP0
;JMP JADC
ZADC:
CPL P3.2
CLR P3.1
SETB P3.7
MOV R2,P1
MOV A,R2
ANL A,#0FH
MOV R2,A
NOP
NOP
SETB P3.1
CLR P3.7
MOV R3,P1
MOV A,R3
ANL A,#0FH
SWAP A
ORL A,R2
LCALL DISP0
AJMP MAIN
DISP0:
SETB P3.7
SETB P3.1
;CLR P3.3
MOV 29H,R2
MOV A, 29H ;将29H中的十六进制数转换成10进制
MOV B,#10H
DIV AB
;------------十六进制数转换成10进制------------------
;CHANGE16_10:
;CLR C
;MOV R5,#00H
;MOV R4,#00H
;MOV R3,#08H
;CLOOP:
;RLC A
;MOV R2,A
;MOV A,R5
;ADDC A,R5
;DA A
;MOV R5,A
;MOV A,R4
;ADDC A,R4
;DA A
;MOV R4,A
;MOV A,R2
;DJNZ R3,CLOOP
;MOV A,R5
;ADD A,R5
;DA A
;MOV R5,A
;MOV A,R4
;ADDC A,R4
;DA A
;MOV R4,A
;RET
MOV A_BIT,A
MOV B_BIT,B
MOV DPTR,#NUMTAB0
MOV R0,#4
DISLOP0:MOV R1,#250
DISLOP1:MOV A,A_BIT
MOVC A,@A+DPTR
MOV P1,A
CLR P3.3
LCALL D1MS
SETB P3.3
MOV A,B_BIT
MOVC A,@A+DPTR
MOV P1,A
CLR P3.4
LCALL D1MS
SETB P3.4
DJNZ R1,DISLOP1
DJNZ R0,DISLOP0
;JMP DISP0
RET
D1MS:
MOV R7,#80
DJNZ R7,$
RET
;7段数码管0~9数字的共阴显示代码
;无小数点
NUMTAB0: DB 0FCH,60H,0DAH,0F2H,66H,0B6H,0BEH,0E0H,0FEH,0F6H
;有小数点
NUMTAB1: DB 0FDH,61H,0DBH,0F3H,67H,0B7H,0BFH,0E1H,0FFH,0F7H
; 0 1 2 3 4 5 6 7 8 9
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -