📄 main.asm
字号:
ORG 0000H
AJMP START
ORG 0100H
START:
MOV P1, #0 ;消隐
MOV R0, #8
MOV R1, #0
LOOP: LCALL DISPLAY
DJNZ R0, LOOP ;判断8位数字是否送完
AJMP START
DISPLAY:
MOV DPTR, #YOUNUMBER ;寻找显示的数字
MOV A, R1
MOVC A, @A+DPTR
MOV DPTR, #TABSEG ;寻找显示数字的码值
MOVC A, @A+DPTR
CPL A
MOV P0, A
SETB P1.3 ;锁存码值信号
NOP
CLR P1.3
MOV DPTR, #TABBIT ;送位选信号
MOV A, R1
MOVC A, @A+DPTR
MOV P0, A
SETB P1.2 ;锁存位选信号
NOP
CLR P1.2
CALL DELAY
MOV P0, #0 ;送消隐信号
SETB P1.2
NOP
CLR P1.2
INC R1
RET
DELAY:
MOV R3, #25
LL1: MOV R4, #10
DJNZ R4, $
DJNZ R3, LL1
RET
TABSEG: ;共阴数码管码表
DB 0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F
TABBIT: ;共阳数码管位选信号
DB 0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01
YOUNUMBER: ;要显示的数字
DB 2,0,0,7,1,1,1,3
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -