?? th17_sram.asm
字號:
DIN BIT P1.1
CLK BIT P1.2
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV SP,#60H
MOV A,#00H
MOV DPTR,#0000H
MOV R0,#00H
LOOP:
ADD A,#1
DA A
ANL A,#0FH ;總在0到9之間
MOVX @DPTR,A
INC DPTR
DJNZ R0,LOOP ;載入256個(gè)
DISP: ;讀出送到靜態(tài)串行顯示口
MOV R3,#00H ;讀數(shù)據(jù)的個(gè)數(shù)
MOV DPTR,#0000H
GET_LOOP:
MOV R0,#30H ;存放的首地址
MOV R1,#31H
MOV R2,#5 ;5個(gè)顯示的數(shù)據(jù)
SHIFT_LOOP: ;推入到顯示存儲區(qū),向后移動
MOV A,@R1
MOV @R0,A
INC R0
INC R1
DJNZ R2,SHIFT_LOOP
MOVX A,@DPTR
MOV @R0,A ;寫到最后一個(gè)位置
LCALL SHOW ;顯示在數(shù)碼管上
LCALL DELAY
INC DPTR
DJNZ R3,GET_LOOP
LJMP DISP
DELAY: ;延時(shí)子程序,大約1秒
MOV R4,#05
MOV R5,#0
MOV R6,#0
DELAYLOOP:
DJNZ R6,DELAYLOOP ;原地循環(huán)
DJNZ R5,DELAYLOOP
DJNZ R4,DELAYLOOP
RET
SHOW:
PUSH DPH
PUSH DPL
;MOV SCON,#00H ;設(shè)定串行工作模式為0
MOV R1,#05H ;數(shù)碼管顯示的位數(shù)6
MOV R0,#30H ;字型碼首地址偏移量
MOV DPTR,#TABLE
LOOPSHOW:
MOV A,@R0
MOVC A,@A+DPTR ;取出字型碼
MOV R2, #8
OUTData:
RRC A
MOV DIN, C
CLR CLK
SETB CLK
DJNZ R2,OUTData
INC R0 ;指向下一字型碼
DJNZ R1,LOOPSHOW
POP DPL
POP DPH
RET
TABLE:
DB 0FCH, 060H, 0DAH, 0F2H, 066H ;0,1,2,3,4
DB 0B6H, 0BEH, 0E0H, 0FEH, 0F6H ;5, 6,7,8,9
END
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -