(一)设计思路和方法:
本实验实现的获取实时时钟模块的年、月、日、时、分、秒信息通过串口发送给上位机进行显示,同时上位机发送指令给单片机,包含地址、校准值信息,来修改单片机寄存器值,实现单片机校时功能。
(二)电路原理图如下所示
1、串口通信模块电路图
2、 实时时钟模块电路图
3、 按键模块电路图(右边部分key1引脚)
(三)电路工作原理
从实时时钟模块读取到年、月、日、时、分、秒信息,通过年、月、日计算阴历年、月、日、星期,将年、月、日、星期、时、分、秒、阴历年、阴历月、阴历日10个字节通过定时器定时地、连续地通过串口发送给上位机,上位机对获取到的10个字节进行解析并进行显示到对应的控件上面。上位机通过选定地址、校准值,点击发送按钮,连续发送0xf0、寄存器地址、校准值3个字节给下位机,下位机通过缓存保存串口收到的数据,判断接收到的第一个字节是0xf0,第二个字节对应地址、第三个字节对应校准值,对实时时钟进行写操作,在写之前注意禁止写保护,晶振停止工作,寄存器写入数据,启动晶振,重写写保护。同时按键1控制年月日、时分秒的显示。
(四)程序总框图设计流程如下
(五)相关寄存器配置
1. 串口相关寄存器
<