zoukankan      html  css  js  c++  java
  • STM32对内部Flash的保护措施

    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读保护允许

  • 相关阅读:
    jQuery实现动态搜索显示功能
    面试
    Struts1和Struts2的区别和对比(完整版)
    JAVA调用增删改的存储过程
    Spring MVC入门
    jQuery Ajax通用js封装
    js ==与===区别
    shell脚本awk
    C++对象模型初窥
    再见,2021
  • 原文地址:https://www.cnblogs.com/hnrainll/p/1936081.html
Copyright © 2011-2022 走看看