日期和时间应该每个都是两位可你的显示只有一位的空档,问题应该很清楚了,正如楼上所言。 |
unsigned char now_date[] = { 0 }; unsigned char old_date[] = { 19, 40, 14, 16, 12, 19 }; 这里的问题,单片机不能直接读取十进制数,把它分组转换为16进制即可 |
楼主把读取1302的十进制2位数直接保存在显示缓存中,再送到1602,造成乱码。必须把十进制位数分解保存,按单个字符送到1602才行。程序补充完整显示正常。缓存写法unsigned char now_date[12];![]()
|
你好!重点检查一下DS1302读取时序吧 |