详解什么是STM32对其Flash的保护

发布者:rockstar7最新更新时间:2024-07-25 来源: elecfans关键字:STM32  Flash  保护 手机看文章 扫描二维码
随时随地手机看文章

如果你还不了解什么是STM32对其Flash的保护,那么就由小橙同学来给你讲解一下什么是STM32的Flash保护!


什么是Flash?

STM32的FLASH组织结构,可能因不同系列、型号略有不同。比如大家熟悉的STM32F1中小容量一页大小只有1K,而F1大容量一页有2K。

还比如有些系列以扇区为最小单元,有的扇区最小16K,有的128K不等。

通常Flash包含几大块,这里以F40x为例:

主存储器:用来存放用户代码或数据。

系统存储器:用来存放出厂程序,一般是启动程序代码。

OTP 区域:一小段一次性可编程区域,供用户存放特定的数据。

选项字节:存放与芯片资源或属性相关的配置信息。

什么是STM32对内部Flash的保护?

所有的STM32芯片都会提供对Flash的保护,防止对Flash的非法访问,分为:写保护和读保护。

1、读保护就是大家通常说的“加密”,作用于整个Flash存储区域。如果一旦设置了Flash的读保护,那么单片机内置的Flash存储区就只能通过程序的正常执行才能读出,而不能通过下述方式读出:

(1) 使用调试器(JTAG或SWD);

(2)从内存RAM中启动并执行的程序;

2、写保护是以四页(1KB/页) Flash存储区为单位提供写保护,如果对Flash设置了写保护,那么就无法对Flash进行编程和擦除,而且同时产生操作错误标志。 当出现下图标志的时候,就要检查Flash是否被保护起来了。

读保护与写保护的相关效果

当设置读保护与写保护时,其效果如下图所示:

读保护写保护 对Flash的操作功能

有效有效CPU只能读,禁止调试和非法访问。

有效无效CPU可以读写,禁止调试和非法访问,页0~3为写保护。

无效有效CPU可读,允许调试和非法访问。

无效无效CPU可以读写,允许调试和非法访问。

1、flash保护的相关函数


2、STM32如何设置读保护?

我们只需要在程序开头加入“设置读保护”的代码就可以,这样就可以在每次运行代码的时候都检查一下,如果没有开的话就打开,如果开了就跳过。下面是读保护的代码:

ed7daabe-d6b2-11eb-9e57-12bb97331649.png

当我们在程序的开头执行了上面的代码之后,使用j-link就不能在读出程序了,这样就实现了读保护。

3、如何通过代码接触Flash保护解除读保护可以下面代码来进行解除,我们为了方便解锁,可以设置一个按键。

ed903544-d6b2-11eb-9e57-12bb97331649.png


关键字:STM32  Flash  保护 引用地址:详解什么是STM32对其Flash的保护

上一篇:GD32与STM32谁更好?
下一篇:stm32中断怎么处理的

推荐阅读最新更新时间:2024-11-11 11:24

STM32入门-时钟篇
STM32中使用任何一个外设都必须打开相应的时钟。在STM32中有5个时钟源可供用户选择: 1.HSI高速内部时钟,RC震荡器,频率为8MHz。 2.HSE高速外部时钟,右英/陶瓷谐振器,或着外部时钟源,4MHz-16MHz. 3.LSI内部低速时钟,RC震荡器频率为40Hz。 4.LSE外部低速时钟,接频率为32.768KHz的石英晶体。 5.PLL锁相环频输出,时钟源可选为HIS/2、HSE或HSE/2。倍频可选2-16倍,但其输出频率最大不能超过72MHz。 系统时钟SYSCLK,它是供STM32中绝大部分器件工作的时钟源,系统时钟可选择为PLL输出、HSI或者HSE。系统时钟的做大频率为72MHz,它通过AHB分频器分频后
[单片机]
STM32外部中断之二
STM32 外部中断配置 1配置中断 1、 分配中断向量表: /* Set the Vector Table base location at 0x20000000 */ NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0); 2、 设置中断优先级: NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0); //设置中断优先级 3、 初始化外部中断: /*允许EXTI4中断 */ NVIC_InitStructure.NVIC_IRQChannel = EXTI4_IRQChannel; //中断通道
[单片机]
STM32L152XX--读写内部Flash
Flash模块组织 存储器被组织为程序存储器模块,数据EEPROM模块和信息块。 程序存储器块分为4 KB的扇区,每个扇区都是进一步分成16页,每页256字节。 程序存储器页面擦除 该操作用于擦除程序存储器中的页面(64个字)。要做到这一点: ●解锁FLASH_PECR寄存器 1.将PEKEY1 = 0x89ABCDEF写入编程/擦除密钥寄存器(FLASH_PEKEYR) 2.将PEKEY2 = 0x02030405写入编程/擦除密钥寄存器(FLASH_PEKEYR) ●解锁程序存储器 ●解锁FLASH_PECR寄存器 1. 将PRGKEY1 = 0x8C9DAEBF写入程序存储器密钥寄存器 (FLASH_
[单片机]
第4章 初识STM32—零死角玩转STM32-F429系列
本章参考资料:1、《STM8和STM32产品选型手册》2、SetupSTM32CubeMX-4.11.0.exe 4.1 什么是STM32 STM32,从字面上来理解,ST是意法半导体,M是Microelectronics的缩写,32表示32位,合起来理解,STM32就是指ST公司开发的32位微控制器。在如今的32位控制器当中,STM32可以说是最璀璨的新星,它受宠若娇,大受工程师和市场的青睐,无芯能出其右。 4.1.1 STM32诞生的背景 51 是嵌入式学习中一款入门级的精典 MCU,因其结构简单,易于教学,且可以通过串口编程而不需要额外的仿真器,所以在教学时被大量采用,至今很多大学在嵌入式教学中用的还是 51。51
[单片机]
第4章 初识<font color='red'>STM32</font>—零死角玩转STM32-F429系列
ST先进的内置安全模块汽车处理器保护互联网汽车
电子网消息,横跨多重电子应用领域、全球领先的半导体供应商意法半导体( ST )凭借其最新的内置专用安全模块的汽车处理器,领跑互联网汽车信息安全保护市场。 在路上行驶的互联网汽车已达到数百万辆,工业分析机构预测,到2020年,互联网汽车总量将超过2.5亿 。车载信息服务控制器、Wi-Fi热点终端、Bluetooth® 设备支持的汽车互联网服务和车载诊断(OBD)接口控制器等后装市场装备可以提高汽车的安全性、驾乘人员办事效率、社交娱乐功能。可另一方面,这种联网功能也为黑客提供了一个货真价实的攻击面。 汽车企业正在快速寻找应对的安全措施,以支持内容流、基于位置的援助、智能紧急救援、车载电控单元(ECU)软件空中更新等互联网
[半导体设计/制造]
如何解决STM32调试无法进入main函数的问题?
昨天调试STM32程序,以前使用的是MDK3.40的版本,把版本升了下级,升到了MDK4.10,装好后,一运行,哈哈,新版本给人的感觉就是不一样啊,很爽,较之前有很多改进,把自己以前的程序打开,编译运行发现程序调试时无法进入Main函数,弄了很久,很是郁闷啊,最后还是在ourdev的坛子里,找到了同样问题的解决方法,多谢ourdev,以下是坛子里面的帖子,我把他贴出来了. sdc666 : 请问高手,我在调试我的STM32F101c8t6时,遇到一个问题,因为我要调试串口,我在main.c中添加了#include,编译可以通过,但是当我用jlink硬件调试时,一开始就停在了 0x08001460 BEAB BKPT 0xAB
[单片机]
汽车电子系统如何选择合适的保护器件?
关键任务子系统必须健壮可靠,以确保驾驶员和乘客安全。 除非车辆的电子电路具有高度的可靠性和抗电冲击能力,否则自动驾驶汽车(AV)所提供的安全性和便利性无法实现。通过提供过流保护,瞬态浪涌保护,静电放电(ESD)保护和反极性保护,设计人员可以大大降低电路故障的风险。电路保护策略应从三个关键任务子系统开始:摄像头,雷达和ADAS。 保护相机子系统 在音视频设备中,多个摄像机可提供基本的前向和后向视觉,并协同工作以提供深度感知,通过CCD / CMOS图像传感器将可见光转换为电信号,以发送给通信和控制电路。摄像机子系统中的电路块如图2所示。需要保护组件的关键是与外部电路连接的部分。 摄像机电源子系统需要保护免受三种潜
[汽车电子]
汽车电子系统如何选择合适的<font color='red'>保护</font>器件?
基于stm32的异步电机反嵌绕组检测方法
  1.引言   电机是在工业生产过程中普遍使用的装置,电机的故障往往会带来严重的后果与损失。定子绕组是三相异步电动机的主要组成部分,也是电动机最容易损坏而造成故障的部件。异步电机在生产过程中,由于生产工人的失误,有可能发生定子绕组反嵌的现象,发生电动机启动困难,三相电流严重失衡且电流急剧上升,接反元件的那一组绕组中的电流更大,电动机发生异常响声并剧烈振。如果不及时断电停机,电动转速下降,机定子绕组很快会被烧毁。为避免造成更大的损失,需要及时检出。   现有的检测方法在实际应用中,往往在生产应用中需要拆除电机,或者等到电机产生故障时才能够发现绕组错误。检测方法主要是在电机出现故障后,将电机定子取出,接入直流电源后,使用磁针来判断是
[电源管理]
基于<font color='red'>stm32</font>的异步电机反嵌绕组检测方法
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved