STM32读写备份寄存器BKP

今天学习的读写STM32的备份寄存器BKP的步骤,这节知识是比较简单的,一共也就两大部:

这个BKP寄存器的意思就是在芯片的VB引脚上接个电池,就能保存其寄存器中的数据掉电不丢失。先来看看电池的接法:

好,下面介绍一下读写过程:

大体的步骤为:先初始化,然后写DR,再读DR

第一步:开启PWR和BKP的时钟

第二步:使用PWR的一个函数,使能对BKP和RTC的访问

写入数据:BKP有个写入的函数

读取数据:BKP也有个读取的函数

再来看看总体的程序,其实就只写了一个main函数,并没有封装新模块:

cs 复制代码
#include "stm32f10x.h"                  // Device header
#include "OLED.h"


int main(void)
{
	OLED_Init();       //oled  屏幕初始化
	
	/*
	大体的步骤为:先初始化,然后写DR,再读DR
	第一步:开启PWR和BKP的时钟
	第二步:使用PWR的一个函数,使能对BKP和RTC的访问
			写入数据:BKP有个写入的函数
			读取数据:BKP也有个读取的函数
	
	*/
	
	//第一步:开启PWR和BKP的时钟
	RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
	RCC_APB1PeriphClockCmd(RCC_APB1Periph_BKP, ENABLE);
	
	//第二步:使用PWR的一个函数,使能对BKP和RTC的访问
	PWR_BackupAccessCmd(ENABLE);
	
	    //写入数据:BKP有个写入的函数
	BKP_WriteBackupRegister(BKP_DR1, 0x1234);
	
	OLED_ShowHexNum(1,1, BKP_ReadBackupRegister(BKP_DR1), 4);
}

将其编译下载后就能显示这次的实验结果了:这个结果只要VB有电池供电,其他都断电,其DR中的数据也不会丢失。

相关推荐
嗯嗯=18 分钟前
STM32单片机学习篇9
stm32·单片机·学习
小范馆5 小时前
ESP各模组的引脚图-小智接线图
stm32
松涛和鸣5 小时前
DAY63 IMX6ULL ADC Driver Development
linux·运维·arm开发·单片机·嵌入式硬件·ubuntu
想放学的刺客8 小时前
单片机嵌入式试题(第23期)嵌入式系统电源管理策略设计、嵌入式系统通信协议栈实现要点两个全新主题。
c语言·stm32·单片机·嵌入式硬件·物联网
猫猫的小茶馆8 小时前
【Linux 驱动开发】五. 设备树
linux·arm开发·驱动开发·stm32·嵌入式硬件·mcu·硬件工程
YouEmbedded9 小时前
解码内部集成电路(IIC)与OLED屏
stm32·0.96寸oled·硬件iic·软件模拟iic·图片取模·汉字取模
jghhh0110 小时前
基于上海钜泉科技HT7017单相计量芯片的参考例程实现
科技·单片机·嵌入式硬件
恶魔泡泡糖10 小时前
51单片机外部中断
c语言·单片机·嵌入式硬件·51单片机
意法半导体STM3210 小时前
【官方原创】如何基于DevelopPackage开启安全启动(MP15x) LAT6036
javascript·stm32·单片机·嵌入式硬件·mcu·安全·stm32开发
v_for_van10 小时前
STM32低频函数信号发生器(四通道纯软件生成)
驱动开发·vscode·stm32·单片机·嵌入式硬件·mcu·硬件工程