bijiao:
mov a, dspba+0
cjne a,DspBuf+7,bijiao_1 ;比较当前时间与闹钟时间的时十位
mov a, dspba+1
cjne a,DspBuf+8,bijiao_1 ;比较当前时间与闹钟时间的时个位
mov a, dspba+2
cjne a,DspBuf+9,bijiao_1 ;比较当前时间与闹钟时间的分钟十位
mov a, dspba+3
cjne a,DspBuf+10,bijiao_1;比较当前时间与闹钟时间的分钟个位
setb TR0
ret
bijiao_1:
clr TR0
setb pf
clr led
ret
; 整点报时子程序
zhengshi:
mov a,sec ;判断当前时间是否是整时,即能否报时
jnz js ;判断是否位0秒
mov a,min
jnz js ;判断是否位0分
mov a,DspBuf+7
mov b,#10
mul ab
add a,DspBuf+8 ;;BCD码转化位二进制
cjne a,#13,$+3 ;判断时是否超过12小时
jc ss
clr c
subb a,#12
ss:
mov shengshu,a
cpl bs ;暂时关闭判断整时
clr cxbs ;开始报时
js: ret
;执行报时baoshi
baoshi: ;执行报时功能
mov a,chuzhi
cjne a,sec,ltt
setb tr1
mov a,chuzhi
add a,#01h
da a
mov chuzhi,a
djnz shengshu,ltt
cpl bs
setb cxbs
mov chuzhi,#00h
ltt: ret
;蜂鸣器响功能设置
sub1:
cpl pf
reti
sub2:
mov th1,#0f8h ;设置报时声的音色
cpl pf
djnz jiepai,sub2_1
mov jiepai,#80h ;设置节拍常数
clr tr1
sub2_1: reti
end