📄 serial led disp.asm
字号:
DBUF0 EQU 30H ;置存储区首址
TEMP EQU 40H ;置存储区首址
DIN BIT 0B0H ;置串行输出口
CLK BIT 0B1H ;置时钟输出口
ORG 00H
MOV 30H,#1H ;存入显示数据
MOV 31H,#5H
DISP: MOV R0,#DBUF0
MOV R1,#TEMP
MOV R2,#2
DP10: MOV DPTR,#SEGTAB ;表头地址
MOV A,@R0
MOVC A,@A+DPTR ;查表指令
MOV @R1,A
INC R1
INC R0
DJNZ R2,DP10
MOV R0,#TEMP ;段码地址指针
MOV R1,#2 ;段码字节数
DP12: MOV R2,#8 ;输出子程序
MOV A,@R0 ;取段码
DP13: RLC A ;段码左移
MOV DIN,C ;输出一位段码
CLR CLK ;发送位移脉冲一位
SETB CLK
DJNZ R2,DP13
INC R0
DJNZ R1,DP12
SJMP $
SEGTAB: DB 3FH,06H,5BH,4FH,66H ;0,1,2,3,4
DB 6DH,7DH,07H,7FH,6FH ;5,6,7,8,9
DELAY: MOV R4,#03H ;延时子程序
AA1: MOV R5,#0FFH
AA: DJNZ R5,AA
DJNZ R4,AA1
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -