这里只为了将写入后备寄存器的数据毁灭,相当于擦除操作。

具体详细功能请查看stm32F103数据手册(中文手册:第五章 第47页开始)

侵入脚PC13

//TAMPER引脚中断配置
void TAMPER_ITConfig(void){NVIC_InitTypeDef NVIC_InitStructure;NVIC_InitStructure.NVIC_IRQChannel = TAMPER_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;NVIC_Init(&NVIC_InitStructure);//初始化侵入中断的优先级BKP_ITConfig(ENABLE);//使能侵入中断}int main()
{USART1_Init(115200);
/************************************************************/
//   有兴趣可以封装成函数,这里只是测试功能
//   其他写入,读出网上都有,参考写就行
/************************************************************/RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR | RCC_APB1Periph_BKP, ENABLE);//初始化电源控制时钟与备份寄存器时钟PWR_BackupAccessCmd(ENABLE); //允许访问备份寄存器BKP_TamperPinCmd(DISABLE); //先关闭侵入检测引脚BKP_ITConfig(DISABLE);      //关闭侵入中断BKP_TamperPinLevelConfig(BKP_TamperPinLevel_Low);    //设置检测引脚低电平有效BKP_ClearFlag();   //清除侵入检测事件TAMPER_ITConfig();//配置中断优先级并打开侵入中断,不需要进入中断可以注释掉这句,并不影响侵入事件的发生BKP_TamperPinCmd(ENABLE);//开启侵入检测引脚/************测试之前写入的数据*********************/printf("上电读取BKP数据:");for(i=0x0000;i<=0x0054;i+=4){    // baseaddr:0x0004~0x0028  共10个16位的数据后备寄存器 printf("%x ",BKP_ReadBackupRegister(i));}
}/*******************************************/
//以下放在中断文件中  it.c
/*******************************************/
void TAMPER_IRQHandler(void)
{if(BKP_GetITStatus()!=RESET){printf("giao 我里个giaogiao 触发侵入中断\r\n");BKP_ClearITPendingBit();//清除侵入检测中断BKP_ClearFlag();//清除侵入检测事件//如果将下面两句执行,那么就变成电平触发,导致的现象:若PC.13引脚保持有效电平,则系统会反复进入中断//         BKP_TamperPinCmd(DISABLE);//         BKP_TamperPinCmd(ENABLE);}}/*****************************************
*使用低电平戳PC13引脚(别戳过头了),因为一开始
*配置的是低电平有效。触发中断。戳完就可以在串口
*助手上看到  触发侵入中断了,此时后备寄存器数据
*毁灭
******************************************/

stm32 BKP 擦除后备寄存器存储的数据相关推荐

  1. STM32学习手记5 BKP后备寄存器、RTC和中断

    STM32的后备寄存器: STM32共有42个16位后备寄存器,可以用来存储84个字节的用户数据.而所谓的后备寄存器,并不是真正的EEPROM.当VDD电源被切断,VBAT仍然保持供电,后备寄存器的内 ...

  2. stm32 BKP寄存器操作[操作寄存器+库函数]

    BKP是"BACKUP"的缩写,stm32f103RCTE的内部配备了10个16位宽度的BKP寄存器.在主电源切断或系统产生复位时间时,BKP寄存器仍然可以在备用电源的支持下保持其 ...

  3. STM32F1后备寄存器(BKP)和实时时钟(RTC)

    今天在看正点原子RTC实验的时候有个地方一直有点疑惑,他说系统主电源断电但有BAT供电时备份寄存器的内容不会丢失. 然后RTC的框图如下: 可以看到有一个"后备区域",里面有PRL ...

  4. STM32(二)----寄存器讲解

    寄存器讲解 原理讲解 芯片讲解 STM32F103芯片 存储器映射 寄存器映射 STM32的外设地址映射 操作实例 C语言对寄存器的封装 封装总线和外设基地址 封装寄存器列表 点亮LED灯 思路 程序 ...

  5. 基于STM32采集CO2(MH-Z19C)传感器数据

    本文主要记录利用STM32的USART2串口采集CO2传感器数据,并通过USART1串口利用串口调试助手显示CO2数值. 一.实验器材 正点原子STM32MINI开发板,炜盛科技CO2(MH-Z19C ...

  6. SATA、SAS、SSD三种硬盘存储性能数据

    文章目录 SATA.SAS.SSD三种硬盘存储性能数据 顺序读 顺序写 随机读 随机写 结论: SATA.SAS.SSD三种硬盘存储性能数据 顺序读 可以看到 在对4KB数据包进行连续读的情况下: S ...

  7. 实验4:Zigbee使用非易失性存储器来存储自定义数据 - 新兵训练营(6)

    English | 中文 The article is released under license CC BY-NC-ND 4.0 IoT Boot Camp系列课程是由TorchIoTBootCa ...

  8. STM32获取GY-25A倾角传感器串口输出数据

    STM32获取GY-25A倾角传感器串口输出数据 GY-25A模块是新型的倾角传感器模块,具有X和Y两轴模拟角度输出和串口角度输出的功能.这里介绍STM32获取GY-25A串口输出的角度数据.(获取模 ...

  9. STM32 BSRR BRR ODR 寄存器解析(F4系列已经去掉BRR寄存器了)

    STM32 BSRR BRR ODR 寄存器解析(F4系列已经去掉BRR寄存器了) 一.用法 二.解释 三.BSRR.BRR. ODR 之间的关系 G0x0系列GPIO寄存器 F4系列GPIO寄存器( ...

最新文章

  1. 知名网站的 404 页面长啥样?
  2. 阿里首次公布人工智能调用规模:每天调用超1万亿次
  3. 易语言---字符串操作
  4. 互联网医院 2020年突出成就_资讯丨2020中国医院互联网影响力排行榜
  5. andengine游戏引擎总结基础篇
  6. SAP ABAP实用技巧介绍系列之 ABAP XSLT apply_template keyword
  7. zookeeper伪集群(在一台机器上集群)
  8. pg数据库开启远程连接_疫情之下,开启在家办公模式,远程连接工具篇之向日葵...
  9. linux-休眠命令
  10. oracle支持ipv6,准备现有的网络以支持 IPv6
  11. PHP中使用PDO操作MySQL
  12. matlab griddata外插,matlab griddata方法使用介绍
  13. LDA模型:建立词典+文本数量+建立文档TF-IDF+LDA模型拟合
  14. 计算机启动时硬盘指示灯不亮,电脑启动时没有自检声,硬盘指示灯不亮
  15. 用python处理mp4与gif格式互转,简单到爆!
  16. realme Q2Pro和红米x10哪个好
  17. markdown文档管理工具
  18. 【办公协作软件】万彩办公大师教程丨图片OCR工具的应用
  19. PC历史上的20位英雄
  20. Android11 DHCP初识

热门文章

  1. 22.1.2是否存在三升序列
  2. 这 10 条河,「贡献」了全球 95% 的海洋塑料污染
  3. 若不是因为生活所迫,谁愿把自己搞得满身才华
  4. sharepoint 2010 获取讨论板话题的所有评论回复信息 Get all replies
  5. php fpm设置时区,php设置时区的解决方案
  6. 1、RPC框架解析:开篇-什么是RPC?
  7. 单月涨粉超600w,直播销售额破5亿,2月的黑马都是谁?
  8. awesome php
  9. 日撸代码300行:第九天
  10. python 字节流分段_如何在Python中编写简单代码,并且速度超越Spark?