历史上的今天
今天是:2024年08月23日(星期五)
2021年08月23日 | STM32对内部Flash的保护措施
2021-08-23 来源:eefocus
1、STM32对内部Flash的保护措施
所有STM32的芯片都提供对Flash的保护,防止对Flash的非法访问 - 写保护和读保护。
1)、读保护即大家通常说的“加密”,是作用于整个Flash存储区域。一旦设置了Flash的读保护,内置的Flash存储区只能通过程序的正常执行才能读出,而不能通过下述任何一种方式读出:
通过调试器(JTAG或SWD);
从RAM中启动并执行的程序;
2)、写保护是以四页(1KB/页) Flash存储区为单位提供写保护,对被保护的页实施编程或擦除操作将不被执行,同时产生操作错误标志。
读与写设置的效果见下表:
读保护 写保护 对Flash的操作功能
有效 有效 CPU只能读,禁止调试和非法访问。
有效 无效 CPU可以读写,禁止调试和非法访问,页0~3为写保护。
无效 有效 CPU可读,允许调试和非法访问。
无效 无效 CPU可以读写,允许调试和非法访问。
2、当Flash读保护生效时,CPU执行程序可以读受保护的Flash区,但存在两个例外情况:
1)、调试执行程序时;
2)、从RAM启动并执行程序时
STM32还提供了一个特别的保护,即对Flash存储区施加读保护后,即使没有启用写保护,Flash的第 0 ~ 3 页也将处于写保护状态,这是为了防止修改复位或中断向量而跳转到RAM区执行非法程序代码。
3、Flash保护相关函数
FLASH_Unlock(); //Flash解锁
FLASH_ReadOutProtection(DISABLE); //Flash读保护禁止
FLASH_ReadOutProtection(ENABLE); //Flash读保护允许
史海拾趣
|
摘要:随着电力电子技术的发展,将电力电子技术与自动测量技术相结合,便可以使程控电源的设计变得简单可行。介绍了一种用于自动测量的低压程控电源,实现了对电源的实时控制。 关键词:程控电源;单片机 0 引言 ...… 查看全部问答> |
|
本人初学驱动开发 照着例子写了个简单的GPIO驱动 控制开发板上的LED 可是动态加载驱动后显示错误 过程如下: 硬件:s3c2440开发板 GPB5-8接4个LED 软件:linux-2.6.29内核 arm-linux-gcc- ...… 查看全部问答> |
|
分到一个任务,要用PCI芯片开发PCI接口板及相关驱动, 我会点c/C++,VC++,硬件会的比较少,只会点 数模电及一些基本电路。 有点没有头绪,不知道您不能根据我的情况给我点指点,能给一个能由浅入深,循序渐进的学习过程。 谢谢,祝一切顺利! … 查看全部问答> |
|
nand flash驱动unable to mount partition 我的nand flash驱动加载时可以创建分区,也可以找到对应的文件系统驱动,但却无法mount这个分区,所以也出现不了盘符,请大家帮帮忙啊~~… 查看全部问答> |
|
我的电脑前些天还好好的现在开机显示器黑屏只显示Brilho=0 我拿去别的机子试了不是主机的问题,各位大哥大姐教教小第 我该怎么处理啊 显示器调节按钮 按了都没反应。… 查看全部问答> |
|
VS2005调试目标机上应用程序时,用TCP/IP方式连接总是“设备未就绪”?? 使用VS2005开发win ce的应用程序,在调试的时间用TCP/IP方式连接到开发板,老说“设备未就绪”,该怎么解决啊?… 查看全部问答> |




