這是一個三位數碼管顯示的程序按下按鍵一可以清零按下按鍵二可以暫定在按下按鍵二程序繼續執行到了整數喇叭就響一次請各位大哥們幫幫忙
RUN EQU 00H
ORG 0000H
START:
MOV R0,#00H
MOV R1,#00H
MOV R2,#00H
MOV R7,#00H
MOV DPTR,#TABLE1
LOOP:
JB P3.4,NEXT
JNB P3.4,$
MOV R0,#00H
MOV R1,#00H
MOV R2,#00H
NEXT: JB P3.5,NEXT1
JNB P3.5,$
CPL RUN
NEXT1: MOV A,R0
MOVC A,@A+DPTR
MOV P0,A
MOV P2,#0DFH
LCALL DELAY_1MS
MOV A,R1
MOVC A,@A+DPTR
MOV P0,A
MOV P2,#7FH
LCALL DELAY_1MS
MOV A,R2
MOVC A,@A+DPTR
MOV P0,A
MOV P2,#0BFH
LCALL DELAY_1MS
JB RUN,LOOP
DJNZ R7,LOOP
INC R0
CJNE R0,#10,LOOP
MOV P2,#11110111B
LCALL DELAY
MOV R0,#0
INC R1
CJNE R1,#10,LOOP
MOV R1,#0
INC R2
CJNE R2,#10,LOOP
MOV R2,#0
AJMP LOOP
TABLE1: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
DELAY_1MS:MOV R4,#100
D0:MOV R3,#5
DJNZ R3,$
DJNZ R4,D0
RET
END
DELAY: MOV PSW,#08H
D0: MOV R1,#100
D1: MOV R2,#100
MOV R3,#50
DJNZ R3,$
DJNZ R2,D1
DJNZ R0,D0
RET
END
有點亂~!好像按鍵消抖有點問題!你在看看吧
| 歡迎光臨 (http://www.raoushi.com/bbs/) | Powered by Discuz! X3.1 |