K005: CALL DATE_DELAY ;校年
JNB K3,K005 ;K3为位移键
K050: CALL CHULI
JNB 0AH,KY01
MOV 64H,7FH ;送入熄灭符
MOV 65H,7FH
JMP KY02
KY01: MOV 64H,7AH ;送实时值
MOV 65H,7BH ;送实时值
KY02: MOV R0,#DATE_DATA
CALL DISP
MOV R0,#DATE_DATA
CALL TIME_DISPLAY
JNB K1,K051A
JNB K2,K051B
JNB K3,K008
JMP K050
K051A:
MOV A,45H
ADD A,#01H
DA A
MOV 45H,A
XRL A,#9AH
JNZ K052A
MOV 45H,#00H
K052A: MOV R1,#8CH ;写年寄存器
MOV R0,45H
LCALL WRITE
CALL DATE_DELAY
JMP K050
K051B:
MOV A,45H
XRL A,#00H
JZ K052B
SETB C ;求补运算
CLR A
ADDC A,#99H ;加99
SUBB A,#01H ;减去减数
ADD A,45H ;加被减数
DA A ;十进制调整
MOV 45H,A ;
XRL A,#00H
JNZ K052C
K052B: MOV 45H,#99H
K052C: MOV R1,#8CH ;写年寄存器
MOV R0,45H
LCALL WRITE
CALL DATE_DELAY
JMP K050
;-------------------------------------------------
K008: JNB K3,K008
MOV R1,#80H ;写秒寄存器
MOV R0,#00H ;启动振荡器工作
LCALL WRITE
MOV R1,#8EH ;写保护寄存器
MOV R0,#80H ;禁止写入
LCALL WRITE
CALL DATE_DELAY
CLR 0AH
CLR TR0
CALL BEEP_BL
RET
;===================================================
;定时时间设定子程序
;K1为加键、K2为减键、K3为选择键
;===================================================
DSSET:
SETB TR0
DS01: LCALL DS_DELAY ;定时分设定
JNB K4,$
DS010: CALL DS_CHULI
JNB 0AH,DS01_1
MOV 58H,7FH ;送入熄灭符
MOV 59H,7FH
JMP DS01_2
DS01_1: MOV 58H,70H ;送实时值
MOV 59H,71H ;送实时值
DS01_2: MOV R0,#58H
LCALL DS_SP
MOV R0,#58H
LCALL DS_DISPLAY
JNB K1,DS01A ;加键
JNB K2,DS01B ;减键
JNB K3,DS02
JMP DS010
DS01A: ;加
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] 下一页
本文关键字:数码管 51单片机,单片机-工控设备 - 51单片机