wx:嵌入式工程师成长日记
RTC是一个独立的定时器,BKP并不能完全掉电不丢失,其可以完成一些主电源掉电时,保存少量数据的任务。而RTC在主电源掉电的时候保证掉电不丢失的关键就是BKP。
(一)时间戳
1、简介
- Unix时间戳(UnixTimestamp)定义为从UTC/GMT的1970年1月1日0时0分0秒开始所经过的秒数(只用秒来计数,永不进位)
- 时间戳存储在一个秒计数器中,秒计数器为32位/64位的整型变量(32位2038年到头,无符号是2106年)
- 世界上所有时区的秒计数器相同,不同时区通过添加偏移来得到当地时间
对于计算器来说一个永不进位的数据,无论是存储还是计算,都是非常方便的,因此在计算程序的底层,应用非常广泛。需要显示当前时间时,直接转换成年月日时分秒这个的格式就行了。
【使用好处】:
①简化硬件电路:在设计RTC硬件电路的时候,直接弄一个很大的秒寄存器就行了,不需要考虑年月日进位大小月平年论润,非常友好。
②进行时间间隔的计算非常方便。
③存储方便,只需要一个很大的变量表示秒数。
2、GMT/UTC
3、时间戳转换
C语言的time.h模块提供了时间获取和时间戳转换的相关函数,可以方便地进行秒计数器、日期时间和字符串之间的转换
(二)BKP外设
-
BKP(备份寄存器)
-
BKP可用于存储用户应用程序数据。当VDD(2.0~3.6V)电源被切断,他们仍然由VBAT(1.8~3.6V)维持供电。当系统在待机模式下被唤醒,或系统复位或电源复位时,他们也不会被复位。
-
(VBAT:当使用电池或其他电源连接到VBAT脚上时,当VDD断电时,可以保存备份寄存器的内容和维持RTC的功能。如果应用中没有使用外部电池,VBAT引脚应接到VDD引脚上)
-
TAMPER引脚产生的侵入事件将所有备份寄存器内容清除
-
TAMPER引脚是用于引入检测信号(可以是或上升沿/下降沿)的,当发生入侵时,将清除BKP所有内容,并申请中断。
-
并且是由备用电源供电&
-