Page 125 -
P. 125
實驗 10-7 四個七段 LED 與 4*4 個按鍵掃描顯示實驗(中斷)
功能:MCS-51 之埠 0 控制七段 LED 顯示數字,埠 2 掃描四個七段 LED 及 4*4 個按鍵,
系統開機時顯示 0000,當按鍵時會將按鍵值在七段 LED 上顯示。
開關設定:SW1-1、SW2-10ON
程式:
KEYFLAG REG 20H
KEYBUF0 REG 21H
KEYBUF1 REG 22H
COUNTER REG 23H
BUFFER REG 30H
OPEN REG KEYFLAG.0
PRESS REG KEYFLAG.1
CHANGE REG KEYFLAG.2
;
ORG 00H
JMP START
ORG 0BH
JMP TIMER0
ORG 30H
START:
MOV SP,#60H
MOV TMOD,#01010001B
MOV TH0,#>(2**16-5000)
MOV TL0,#<(2**16-5000)
MOV IE,#10000010B
MOV COUNTER,#00H
CLR A
MOV R0,#20H
MOV R1,#20H
$1:
MOV @R0,A
INC R0
DJNZ R1,$1
SETB TR0
$2:
JNB CHANGE,$2
CALL SHIFT_BUFFER
CLR CHANGE
SETB OPEN