当前位置: 首页 > article >正文

STM32 RTC实时时钟

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

RTC实时时钟
BKP可以在VBAT维持供电时,完成主电源掉电时,保存少量数据的任务。备份寄存器和VBAT引脚同时存在,更多是为了服务RTC的。

目前,Linux、Windows、安卓这些系统,底层的计时系统都是使用的Unix时间戳,Unix Timestamp,
只计秒的好处:简化硬件电路,不用考虑年月日寄存器、仅为
时间间隔计算很方便
存储方便
但是比较占用软件资源,需要转换位年月日
2038年32的计时系统可能会出问题。

UTC的闰秒机制可能导致一分钟出现61秒的情况,

BKP会读写相关寄存器就行,RTC需要重点掌握,TAMPER引脚是一个安全保障设计,防拆功能,如果BKP里存储了一些敏感数据,可以使用TAMPER的侵入检测功能,先加一个默认的上拉和下拉电阻,到设备外壳的防拆开关和触点。在TAMPER产生下降沿或上升沿,STM32检测到侵入时间了,BKP数据自动清空并申请中断,在中断里,还可以继续保护设备,比如清楚其他存储器数据,然后设备锁死。

后备区域不只有BKP,还有RTC的相关电路,STM32后备区域特点,当VDD主电源掉电时,后备区域可由VBAT备用电池供电。
BKP主要由数据寄存器(主要部分用来存储数据,每个数据16位,1个数据寄存器存储两个字节)、状态寄存器、控制寄存器和RTC时钟校准寄存器(当输出校准时钟时,再配合校准寄存器,可以对RTC的误差进行校准(如何实现的?))
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
这些函数是用于配置TAMPER侵入检测功能的
BKP_TamperPinLevelConfig ,可以配置TAMPER引脚的有效电平,
BKP_TamperPinCmd ,就是是否开启侵入检测功能,
那就先配置TAMPER有效电平,再使能侵入检测功能,
BKP_ITConfig 中断配置
BKP_RTCOutputConfig 时钟输出功能的配置 可以选择在RTC引脚输出时钟信号,输出RTC校准时钟,RTC闹钟脉冲或者秒脉冲
BKP_SetRTCCalibrationValue 其实就是写入RTC校准寄存器
这些是BKP附加的一些小功能,了解即可
下面才是重点:
BKP_WriteBackupRegister 写备份寄存器
BKP_ReadBackupRegister 读备份寄存器
下面四个是老朋友,不用解释。

PWR_BackupAccessCmd 备份寄存器访问使能,就是设置PWR_CR寄存器里的DBP位,

代码:1.开启PWR和BKP时钟,外设时钟控制,开启PWR时钟,读取BKP

LSE需要手动开启,不然用不了,

进入睡眠的目的是:如果STM32一直没有收到数据,那这个主循环也会一直查询标志位,,这是无意义的耗电操作,不如让它睡眠


http://www.kler.cn/a/297392.html

相关文章:

  • 【数学建模】2024数学建模国赛经验分享
  • SpringCloud:Gateway
  • Spring Boot集成Hazelcast Jet快速入门DEMO
  • Oceanbase 数据库审计
  • cas单点登录流程揭密
  • 八、3 DMA数据转运(代码)
  • ICLR2024: 大视觉语言模型中对象幻觉的分析和缓解
  • 数学建模笔记——层次分析法
  • 图像去噪技术:传统中值滤波与改进中值滤波算法的比较
  • 虚幻引擎VR游戏开发02 | 性能优化设置
  • Docker打包镜像
  • 基于SpringBoot的大健康养老公寓管理系统
  • 如何最好地制定自动化测试策略
  • 《万事法则》
  • 浏览器百科:网页存储篇-如何在Chrome中打开sessionStorage窗格(八)
  • Elasticsearch之原理详解
  • JS中给元素添加事件监听器的各种方法详解(包含比较和应用场景)
  • Git 拉取代码,图形化工具即开即用
  • [Android] [SnapdragonCamera] 单摄(横屏)阶段总结
  • W外链微信推广短连接怎么做?