Page 91 -
P. 91
MOV A,Sec ;測試是否要求'分'之輸入
CPL A
MOV Sec,A
JB P3.5,RD10
RD1: INC R1 ;測試是否完成'分'之設定
CJNE R1,#60,RD11 ;未輸入之時間以閃爍方式提醒
RD11 MOV R1,#0
RD12: MOV Min,R1 ;顯示目前設定值
JB P3.5,RD00
MOV A,Sec
CPL A
MOV Sec,A
CALL SHOW0
JNB P3.7,RD1
JMP RD12
RD00: CALL SHOW0 ;顯示目前設定值
MOV A,Sec ;未輸入之時間以閃爍方式提醒
CPL A
MOV Sec,A ;測試是否要求'秒'之輸入
JB P3.4,RD00
RD0: INC R0 ;測試是否完成'秒'之設定
CJNE R0,#60,RD01
RD01 MOV R0,#0
RD02: MOV Sec,R0
CALL SHOW0
JB P3.4,BEGIN
JNB P3.7,RD0
JMP RD02
; 計時中斷模式設定, Timer0 與 Timer1 均設定為模式 1
; Timer0 用於計時, 設定為高優先, Timer1 用於聲音頻率計數
BEGIN: MOV TMOD,#11H ;設定 16 位元計時模式
MOV IP,#00000010B ;設定 Timer0 為高優先權
MOV IE,#10000010B ;致能 Timer0 中斷