MOV 50H,#00H ;05H=1,闹铃开,显示为 00:00: 0。
AJMP WAITSS
WAITSS11: MOV 50H,#0aH ;闹铃不开,显示为00:00:- .
AJMP WAITSS
FFFF: LCALL DS20MS ;消抖 ;
JB P1.2, WAITSS
DSSFUNMM: LCALL DISPLAY ;键释放等待
JNB P1.2, DSSFUNMM
CLR EA
MOV R0,#55H
LCALL ADD1
MOV A,R3 ;
CLR C ;
CJNE A,#24H,ADDHH33N ;
ADDHH33N: JC WAITSS ;小于24点返回
ACALL CLR0 ;大于等于24点清零
AJMP WAITSS
DDDD : LCALL DS20MS ;消抖 ;
JB P1.0, WAITSS
DSSFUNDD: LCALL DISPLAY ;键释放等待
JNB P1.0, DSSFUNDD
CLR EA
MOV R0,#55H
LCALL SUBB1
LJMP WAITSS
;*********************
;以下是闹铃判断子程序
;*********************
BAOJ: JNB 05H,BBAO ;05H=1,闹钟开,要比较数据
MOV A,79H ;从时十位、个位、分十位、分个位顺序比较
CJNE A,55H,BBAO
MOV A,78H
CLR C
BB3: CJNE A,54H,BBAO
MOV A,77H
CLR C
CJNE A,53H,BBAO
MOV A,76H
CLR C
BB2: CJNE A,52H,BBAO
JNB 07H,BBAO ;07H在1秒到时会取反
CLR BELL ;时分相同时呜叫(1秒间隔叫)
RET
;
BBAO: SETB BELL ;不相同或闹铃不开
RET
;********************************************************
END ;程序结束
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15]
本文关键字:程序 51单片机,单片机-工控设备 - 51单片机