STM32 BKP备份寄存器介绍

1.  BKP可以用来保存数据

BKP中包括了42个16位的寄存器,共可保存84字节的内容,它们由VBAT的供电来维挂。

2.  BKP内保存的数据可以被毁灭(如果有人希望恶意得到这些数据的话,令其丢失比保护数据更重要)。STM32提供了一种称之为TAMPER的机制来完成。中文译为“侵入检测”,这需要占用一个外部引脚(PC13)。

3.  如果不用侵入检测功能,那么这个外部引脚可以用作RTC校准功能,这个稍后再研究。

4.  当有系统复位/电源复位/待机模式下被唤醒这三种情况时,BKP中的值不会丢失或被复位。

先回来研究一下STM32的复位机制。以下是数据手册的相关部分。

       6.1  复位 

       STM32F10xxx支持三种复位形式,分别为系统复位、上电复位和备份区域复位。

       6.1.1  系统复位 

       系统复位将复位除时钟控制寄存器CSR中的复位标志和备份区域中的寄存器以外的所有寄存器

       当以下事件中的一件发生时,产生一个系统复位:

       1.NRST管脚上的低电平(外部复位)

例如:按下板子上的RESET按钮就产生一个外部复位(属于系统复位)

       2.窗口看门狗计数终止(WWDG复位)

       3.独立看门狗计数终止(IWDG复位)

       4.软件复位(SW复位)

       5.低功耗管理复位

       可通过查看RCC_CSR控制状态寄存器中的复位状态标志位识别复位事件来源

 6.1.2  电源复位 

       当以下事件中之一发生时,产生电源复位:

       1. 上电/掉电复位(POR/PDR复位)

       2. 从待机模式中返回

    电源复位将复位除了备份区域外的所有寄存器。

如果必须要人为地令备份域复位(所有数据都被清零),那么有两种方法:

a)         软件复位(操作RCC_BDCR中的BDRST位产生。);

b)        VDD和VBAT均掉电,那么在VDD或都VBAT上电时将引发备分域复位

STM32 BKP备份寄存器介绍

时间: 2024-11-06 02:51:15

STM32 BKP备份寄存器介绍的相关文章

80X86寄存器介绍

80X86寄存器介绍 32位CPU所含有的寄存器有: 4个数据寄存器(EAX.EBX.ECX和EDX)2个变址和指针寄存器(ESI和EDI) 2个指针寄存器(ESP和EBP)6个段寄存器(ES.CS.SS.DS.FS和GS)1个指令指针寄存器(EIP) 1个标志寄存器(EFlags) 1.数据寄存器 数据寄存器主要用来保存操作数和运算结果等信息,从而节省读取操作数所需占用总线和访问存储器的时间. 32位CPU有4个32位的通用寄存器EAX.EBX.ECX和EDX.对低16位数据的存取,不会影响高

ARM寄存器介绍

ARM处理器共有37个寄存器.其中包括:31个通用寄存器,包括程序计数器(PC)在内.这些寄存器都是32位寄存器.以及6个32位状态寄存器.但目前只使用了其中12位.ARM处理器共有7种不同的处理器模式,在每一种处理器模式中有一组相应的寄存器组.任意时刻(也就是任意的处理器模式下),可见的寄存器包括15个通用寄存器(R0-R14).一个或两个状态寄存器及程序计数器(PC).在所有的寄存器中,有些是各模式共用的同一个物理寄存器:有一些寄存器是各模式自己拥有的独立的物理寄存器.表1列出了各处理器模式

STM32 flash 内存分布介绍

摘要: 本文以STM32F103RBT6为例介绍了片上Flash(Embedded Flash)若干问题,包括Flash大小(内存映射).块大小.页面大小.寄存器.这些知识,有利于写Flash驱动. 一.怎么看Flash大小 1.1 通过型号 型号会印在MCU表面,可以通过观察获得,我的是STM32F103RBT6(以下分析基于这个型号),对照下图的STM32产品命名,可知STM32F103RBT6的Flash是128KB. () 图1 Ordering information scheme 1

stm32之RCC寄存器学习

RCC(Reset Clock Controller) -- 复位与时钟控制 一.复位 STM32F10xxx支持三种复位形式,分别为系统复位.上电复位和备份区域复位. 系统复位:除了时钟控制器的RCC_CSR寄存器中的复位标志位和备份区域中的寄存器以外,系统复位将复位所有寄存器至它们的复位状态. 电源复位:将复位除了备份区域外的所有寄存器. 备份区域复位:备份区域拥有两个专门的复位,它们只影响备份区域. 二.时钟 有四种时钟:高速外部时钟信号(HSE)-- HSE外部晶体/陶瓷谐振器 .HSE

STM32时钟库函数RCC_DeInit介绍

void RCC_DeInit(void) { RCC->CR |= (uint32_t)0x00000001; //开启内部8MHz时钟 #ifndef STM32F10X_CL //STM32F10X_CL指的是STM32互联系列微处理器 RCC->CFGR &= (uint32_t)0xF8FF0000; //其它类型处理器的CFGR寄存器中27-31位是保留位,24-26为MCO位 #else //而互联型处理器的CFGR寄存器中,28-31位是保留位,24-27位属MCO R

Arm处理器寄存器介绍及汇编基础

1. ARM处理器支持7种工作模式 · User (usr): The normal ARM program execution state· FIQ (fiq): Designed to support a data transfer or channel process· IRQ (irq):    Used for general-purpose interrupt handling· Supervisor (svc):   Protected mode for the operating

6、存储器与寄存器介绍

本讲主要内容 1.什么是存储器映射  2.什么是寄存器及寄存器映射  3.如何访问STM32寄存器内容 1.什么是存储器映射   存储器本身不具有地址信息,它的地址是由芯片厂商或用户分配,给存储器分配地址的过程称为存储器映射,如果再分配一个地址就叫重映射(具体地址分配参考芯片数据手册及中文参考手册) 2.什么是寄存器及寄存器映射 通过给有特定功能的内存单元起一个别名,这个别名就是我们所说的寄存器.给已经分配好地址的有特定功能的内存单元起别名的过程就叫寄存器映射 3.如何访问STM32寄存器内容 

旧文备份:FFTW介绍

1. FFTW介绍 FFTW由麻省理工学院计算机科学实验室超级计算技术组开发的一套离散傅立叶变换(DFT)的计算库,开源.高效和标准C语言编写的代码使其得到了非常广泛的应用,Intel的数学库和Scilib(类似于matlab的科学计算软件)都使用FFTW做FFT计算. FFTW是计算离散Fourier变换(DFT)的快速C程序的一个完整集合. l        它可计算一维或多维.实和复数据以及任意规模的DFT:甚至包括正弦/余弦变换和离散哈特莱变换(DHT). l        FFTW输入

STM32系列ARM单片机介绍

STM32系列基于专为要求高性能.低成本.低功耗的嵌入式应用专门设计的ARM Cortex-M3内核.按性能分成两个不同的系列:STM32F103"增强型"系列和STM32F101"基本型"系列.增强型系列时钟频率达到72MHz,是同类产品中性能最高的产品:基本型时钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是16位产品用户的最佳选择.两个系列都内置32K到128K的闪存,不同的是SRAM的最大容量和外设接口的组合.时钟频率72MHz时,从