1.RTC是个普通32位计数器(F103),1秒累加1次,计满32位的话,大约需要136年,所以不必担心溢出问题。所以常用LINUX时间戳来计算当前时间,即从1970年1月1日0时0分0秒,到当前时间经过了多少秒,从而得到当前的日期和时间。这个涉及到平年和闰年,稍微麻烦一点。
2.RTC的时钟来源有三个,LSI内部RC(默认)、HSE(外部高速时钟)、LSE(外部低速时钟),前两个掉电都停止供电,LSE掉电后可以依靠VBTE供电工作。
3.VBTE给LSE、RTC、和后备寄存器,通常可以往后备寄存器里面随便写个值,开机的时候读取一个这个值复位没有,如果VBTE也没电了的话,说明RTC也不会走了,记录的时间也是不对的,这个时候就要从新写入时间了。
STM23的有VBAT电池,断电后RTC停止运行
最新推荐文章于 2024-09-04 10:51:05 发布