基于51单片机的电子时钟的设计内容摘要:

) ACALL ADD1。 分计时单元加 1 分钟 MOV A,R3。 分数据放入 A CLR C。 清进位标志 CJNE A,60H,ADDHH。 ADDHH: JC OUTT0。 小于 60 分时中断退出 ACALL CLR0。 大于或等于 60 分时分计时单元清 0 MOV R0,79H。 指向小时计时单元( 78H79H) ACALL ADD1。 小时计时单元加 1 小时 MOV A,R3。 时数据放入 A CLR C。 清进位标志 CJNE A,24H,HOUR。 HOUR: JC OUTT0。 小于 24 小时中断退出 ACALL CLR0。 大于或等于 24 小时小时计时单元清 0 OUTT0: MOV 72H,76H。 中断退出时将分、时计时单元数据移 MOV 73H,77H。 入对应显示单元 MOV 74H,78H。 MOV 75H,79H。 POP PSW。 恢复状态字(出栈) POP ACC。 恢复累加器 SETB ET0。 开放 T0 中断 RETI。 中断返回 9。 闪动调时 程 序。 T1 中断服务程序,用作时间调整时调整单元闪烁指示 INTT1: PUSH ACC。 中断现场保护 PUSH PSW。 MOV TL1, 0B0H。 装定时器 T1 定时初值 MOV TH1, 3CH。 DJNZ R2,INTT1OUT。 秒未到退出中断( 50MS 中断 6 次) MOV R2,06H。 重装 秒定时用初值 CPL 02H。 秒定时到对闪烁标志取反 JB 02H,FLASH1。 02H 位为 1 时显示单元 熄灭 MOV 72H,76H。 02H 位为 0 时正常显示 MOV 73H,77H。 MOV 74H,78H。 MOV 75H,79H。 INTT1OUT: POP PSW。 恢复现场 POP ACC。 RETI。 中断退出 FLASH1: JB 01H,FLASH2。 01H 位为 1 时,转小时熄灭控制 MOV 72H,7AH。 01H 位为 0 时, 熄灭符 数据放入分 MOV 73H,7AH。 显示单元( 72H73H),将不显示分数据 MOV 74H,78H。 MOV 75H,79H。 AJMP INTT1OUT。 转中断退出 FLASH2: MOV 72H,76H。 01H 位为 1 时, 熄灭符 数据放入小时 MOV 73H,77H。 显示单元( 74H75H),小时数据将不显示 MOV 74H,7AH。 MOV 75H,7AH。 AJMP INTT1OUT。 转中断退出。 加 1 子 程 序。 ADD1: MOV A,@R0。 取当前计时单元数据到 A 10 DEC R0。 指向前一地址 SWAP A。 A 中数据高四位与低四位交换 ORL A,@R0。 前一地址中数据放入 A 中低四位。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。