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

  • 相关阅读:
    luogu P1833 樱花 看成混合背包
    luogu P1077 摆花 基础记数dp
    luogu P1095 守望者的逃离 经典dp
    Even Subset Sum Problem CodeForces
    Maximum White Subtree CodeForces
    Sleeping Schedule CodeForces
    Bombs CodeForces
    病毒侵袭持续中 HDU
    病毒侵袭 HDU
    Educational Codeforces Round 35 (Rated for Div. 2)
  • 原文地址:https://www.cnblogs.com/hnrainll/p/1936081.html
Copyright © 2011-2022 走看看