STM32 备份寄存器

BKP(Backup Register)备份寄存器

BKP可用于存储用户应用程序数据。当VDD电源被切断,他们仍然由VBAT供电。当系统在待机模式下被唤醒,或系统复位或电源复位时他们也不会被复位。主要作用包括存储关键配置参数、系统状态标志、RTC校准值或其他需要在断电后保留的数据。

备份寄存器特性

供电方式:主电源VDD正常时,BKP由VDD供电。VDD掉电后,自动切换为VBAT供电(需外部接纽扣电池,电压范围1.8~3.6V)。

存储容量:不同型号差异不大,典型为42个16位寄存器(共84字节),仅支持存储少量关键数据(非海量存储)。

访问权限:需通过备份域接口访问,通常需先使能PWR和BKP时钟。

写保护:可配置写保护防止意外修改。

RTC相关功能支持

部分BKP寄存器可配置为RTC闹钟/唤醒事件的触发输出口(如BKP_DR1~DR10可映射到TAMPER引脚)。

支持RTC校准:通过BKP_CR寄存器的RTC_CAL位,实现RTC时钟的微调校准。

tamper(防篡改)功能协同

当TAMPER引脚触发防篡改事件(电平变化或脉冲)时,可配置BKP自动清除部分或全部备份寄存器数据,或触发系统复位,保护敏感数据。

典型应用场景

  1. 系统配置参数保存:如设备地址、通信波特率、校准系数、用户设置(无需频繁写入Flash)。

  2. 故障记录存储:如系统异常码、掉电前的运行状态(方便后续故障排查)。

  3. RTC辅助功能:结合RTC实现定时唤醒、闹钟触发,适用于低功耗场景(如物联网传感器节点)。

  4. 敏感数据防篡改:配合TAMPER引脚,实现数据防篡改保护(如金融设备、工业控制中的关键参数)。

相关推荐
Zeku2 小时前
20260120 - Linux驱动学习笔记:SPI子系统核心层到具体硬件驱动
stm32·freertos·linux驱动开发·linux应用开发
阿华hhh2 小时前
day4(IMX6ULL)<定时器>
c语言·开发语言·单片机·嵌入式硬件
钰珠AIOT2 小时前
在电源的滤波电路中10uf 和100nF 的电容滤波的频率大概是多少?如何计算?
单片机·物联网
CQ_YM2 小时前
ARM中断
arm开发·嵌入式硬件·arm
羽获飞3 小时前
51单片机UART-串口通讯的配置方法
stm32·单片机·嵌入式硬件
猫猫的小茶馆3 小时前
【Linux 驱动开发】一. 搭建开发环境
linux·汇编·arm开发·驱动开发·stm32·嵌入式硬件·mcu
猫猫的小茶馆3 小时前
【Linux 驱动开发】嵌入式 Linux 开发概念
linux·服务器·arm开发·stm32·单片机·嵌入式硬件·mcu
EVERSPIN3 小时前
单片机CH554电容触摸屏控制器方案
单片机·嵌入式硬件·单片机ch554
容测电子3 小时前
ISO 11452-4:大电流注入BCI,从原理到校准
经验分享·嵌入式硬件·汽车·电磁兼容·emc测试·emc测试设备
兆龙电子单片机设计3 小时前
【STM32项目开源】STM32单片机智能宠物喂养系统
stm32·单片机·开源·毕业设计·电子信息