RTC理论知识

RTC

Unix时间戳

  • 从 UTC+0 时区的 1970 年 1 月 1 日 00:00:00 开始,到当前时刻所经过的总秒数
  • 单位:秒,秒计数器为32位/64位
  • 基准点:1970-01-01 00:00:00 UTC 被称为 Unix 纪元(Epoch)
  • 特点:纯数字、跨平台统一、无时区歧义

时间戳转换

头文件为"time.h"

BKP - 备份寄存器

  • BKP可用于存储用户应用程序数据。当VDD(2.0~3.6V) 电源被切断,他们仍然由VBAT (1.8~3.6V)维持供电。当系统在待机模式下被唤醒,或系统复位或电源复位时,他们也不会被复位
  • TAMPER引脚产生的侵入事件将所有备份寄存器内容清除
  • RTC引脚输出RTC校准时钟、RTC闹钟脉冲或者秒脉冲
  • 存储RTC时钟校准寄存器
  • 用户数据存储容量:20字节(中容量和小容量)/84字节(大容量和互联型)

RTC - 实时时钟

  • RTC是一个独立的定时器,可为系统提供时钟和日历的功能
  • RTC和时钟配置系统处于后备区域,系统复位时数据不清零(2.03.6V)断电后可借助VBAT(1.83.6V) 供电继续走时
  • 32位的可编程计数器,可对应Unix时间戳的秒计数器
  • 20位的可编程预分频器,可适配不同频率的输入时钟可
  • 选择三种RTC时钟源:
    • HSE时钟除以128(通常为8MHz/128)
    • LSE振荡器时钟(通常为32.768KHz)
    • LSI振荡器时钟(40KHz)
  • RTC_ALR 闹钟功能(只能响一次,需要再次设置)
    • 生成中断信号
    • 退出待机模式

操作事项

  • 执行以下操作将使能对BKP和RTC的访问:
    • 设置RCC_APB1ENR的PWREN和BKPEN,使能PWR和BKP时钟
    • 设置PWR_CR的DBP,使能对BKP和RTC的访问
  • 若在读取RTC寄存器时,RTC的APB1接口曾经处于禁止状态,则软件首先必须等待RTC_CRL寄存器中的RSF位(寄存器同步标志)被硬件置1
  • 必须设置RTC_CRL寄存器中的CNF位,使RTC进入配置模式后,才 能写入RTC PRL、RTC_CNT、RTC ALR寄存器
  • 对RTC任何寄存器的写操作,都必须在前一次写操作结束后进行。可以通过查询RTC_CR寄存器中的RTOFF状态位,判断RTC寄存器是否处于更新中。仅当RTOFF状态位是1时,才可以写入RTC寄存器
相关推荐
黑白园6 分钟前
STM32F103ZET6移植-电机2804-驱动板SimpleFOC Mini实现速度开环_位置开环控制(一、硬件介绍及接线)
stm32·单片机·嵌入式硬件
星夜夏空997 分钟前
STM32单片机学习(12)——串口通信相关概念
stm32·单片机·学习
ytttr87320 分钟前
基于 STM32 的示波器实现
stm32
Stream_Silver43 分钟前
【 libusb4java实战:跨平台USB设备通信完全指南】
java·笔记·嵌入式硬件·microsoft
黑白园1 小时前
STM32F103ZET6移植-电机2804(星型接法)-驱动板SimpleFOC Mini实现速度开环_位置开环控制(四、功能演示)
stm32·单片机·嵌入式硬件
Jack_02201 小时前
基于51单片机的停车场刷卡进出计费设计
单片机·嵌入式硬件·51单片机
振浩微433射频芯片1 小时前
433射频方案在远距离工业遥控中的应用解析:从TM-03到RM521的成熟之道
网络·单片机·嵌入式硬件·物联网·智能家居
Hello_Embed1 小时前
libmodbus 移植到 STM32H5
笔记·stm32·单片机·嵌入式硬件·嵌入式·ai编程
REDcker2 小时前
嵌入式MCU内存布局详解 Flash SRAM Keil MAP与启动分散加载实践
单片机·嵌入式硬件
qdprobot2 小时前
【无标题】
人工智能·单片机·嵌入式硬件·51单片机·硬件工程·iot·mixly