STM32 RTC如何清零?算出的小时后+对24取余也不对?求助
时间:10-02
整理:3721RD
点击:
还请大侠帮帮忙:STM32 RTC使用备份电池供电,当主电源断电,RTC到23:59:59时间如何清零?
原先是程序中到23:59:59时间清零,
可是不能清零,开机时间肯定超过24小时,怎么办?后来改成:算出的小时后增加对24取余,小时也显示不对
THH =( TimeVar / 3600) % 24; //对吗?
TMM = (TimeVar % 3600) / 60;
TSS = (TimeVar % 3600) % 60;
printf("Time: %0.2d:%0.2d:%0.2d", THH, TMM, TSS);
原先是程序中到23:59:59时间清零,
可是不能清零,开机时间肯定超过24小时,怎么办?后来改成:算出的小时后增加对24取余,小时也显示不对
THH =( TimeVar / 3600) % 24; //对吗?
TMM = (TimeVar % 3600) / 60;
TSS = (TimeVar % 3600) % 60;
printf("Time: %0.2d:%0.2d:%0.2d", THH, TMM, TSS);
RTC到23:59:59时间如何清零?
-------------
RTC运行到23:59:59时下一秒就会编程01:00:00:00 也就是清零。
THH =( TimeVar / 3600) % 24; //对吗?
---------------
TimeVar是什么?直接读取RTC的小时寄存器就可以了
判断对应位置的数据,当达到23:59:59时配置rtc为00:00:00.