DULA BIT P2.6
WELA BIT P2.7
ORG 0000H
MOV P0,#0 ;關顯示
SETB DULA
CLR DULA
LOOP0:
MOV R0,#0
LOOP1:
MOV DPTR,#TABLEW
MOV P0,#0 ;關顯示
SETB DULA
CLR DULA
MOV A,R0
MOVC A,@A+DPTR
MOV P0,A ;送位選值
SETB WELA ;確定顯示的位
CLR WELA
MOV A,R0
ADD A,#1
MOV DPTR,#TABLEK
MOVC A,@A+DPTR
MOV P0,A ;送段碼
SETB DULA
CLR DULA
LCALL DELAYXMS ;延時X ms,修改延時參數可降低閃爍,小於4ms實現動態掃描
INC R0
CJNE R0,#6,LOOP1
AJMP LOOP0
DELAY: ;延時1S
SETB RS1
MOV R2,#04H
DELAY2:
MOV R1,#150
DELAY1:
MOV R0,#250
DELAY0:
NOP
NOP
DJNZ R0,DELAY0
DJNZ R1,DELAY1
DJNZ R2,DELAY2
CLR RS1
RET
DELAYXMS:
SETB RS1
MOV R1,#3 ;延時3 ms
DELAY4:
MOV R0,#250
DELAY3:
NOP
NOP
DJNZ R0,DELAY3
DJNZ R1,DELAY4
CLR RS1
RET
TABLEK: ;共陰數碼管
DB 3FH,06H,5BH,4FH
DB 66H,6DH,7DH,07H
DB 7FH,6FH,77H,7CH
DB 39H,5EH,79H,71H
TABLEW: ;位選控制
DB 0FEH,0FDH,0FBH,0F7H
DB 0EFH,0DFH
END
51單片機STC89C52 數碼管動態
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.