📄 2b_0408.asm
字号:
CLKPIN BIT P2.1 ;用户自定义CLK对应引脚
DIPIN BIT P2.0 ;用户自定义DI对应引脚
ORG 0000H
JMP START
START: MOV SP,#60H
MAIN:
MOV R6,#0CCH
MOV A,R6
LCALL CHULI
MOV A,R6
LCALL CHULI1
CALL USERCONT
CALL TRANSRAM
CALL DELAY
JMP MAIN
USERCONT:
MOV R0,#10H ;10H为两点地址
AA: MOV A,#11H ;11H为段码,显示空白
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV @R0,A
INC R0
CJNE R0,#13H ,AA
MOV A,R3
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV @R0,A
INC R0
MOV A,R4
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV @R0,A
RET
TRANSRAM:
MOV R1,#10H
TSR_PA: MOV A,@R1
CALL TRANSBYTE
INC R1
CJNE R1,#15H,TSR_PA
RET
TRANSBYTE:
MOV R0,#8
TSB_PA: RRC A
CALL TRANSBIT
DJNZ R0,TSB_PA
RRC A
RET
TRANSBIT:
MOV DIPIN,C ;先送数据到数据口线DI
SETB CLKPIN ;再使时钟口线发一个负脉冲
CLR CLKPIN
SETB CLKPIN
RET
DELAY: ;延时子程序
MOV R0,#30
DL4_PA: MOV R1,#50
DL4_PB: MOV R2,#50
DJNZ R2,$
DJNZ R1,DL4_PB
DJNZ R0,DL4_PA
RET
CHULI: ANL A,#0F0H
SWAP A
MOV R3,A
RET
CHULI1: ANL A,#0FH
MOV R4,A
RET
TAB:DB 10001000B,10111011B,11000001B,10010001B,10110010B,10010100B,10000100B,10111001B,10000000B,10010000B,10100000B,10000110B,11001100B,10000011B,11000100B,11100100B,11111111B
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -