• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

STM32读写内部的flash要先解保护吗

Edisons 2019-05-05 浏览量:2749
不解保护能不能实现读写的操作
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 在FLASH_CR中,有一个OPTWRE位,该位为0时,不允许进行选项字节操作(擦除、编程)。这称为选项字节写使能。只有该位为1时,才能进行选项字节操作。 该位不能软件置1,但可以软件清零。只有向FLASH_OPTKEYR依次写入KEY1和KEY2后,硬件会自动对该位置1,此时,才允许选项字节操作。这称为解锁(打开)选项字节写使能。该位为1后,可以由软件清零,关闭写使能。复位后,该位为0。错误操作不会永远关闭写使能,只要写入正确的键序列,则又可以打开写使能。写使能已打开时,再次打开,不会出错,并且依然是打开的。 很显然,进行选项字节操作前,先要解开闪存锁,然后打开选项字节写使能,之后,才能进行选项字节操作。
    • 发布于 2019-05-05
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:6
  • 读不需要解锁,直接用指针读取flash地址就可以了,写和擦除需要解锁,写完之后需要上锁,
    • 发布于2019-05-05
    • 举报
    • 评论 1
    • 3
    • 0
川楠 回复了 yhj416606438 :正解 回复

  • 内部flash的读写其实和外部普通的flash操作差不多,但也稍有不同的就是内部操作不需要进行外设初始化;写之前必须先进行解锁,写完后再上锁
    • 发布于2019-05-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 如果你通过OPTION选项字节开启了Flash保护功能,要先擦除OPTION解除保护并复位芯片。没有开启保护的话,直接用 flash的Unlock函数解锁就可以擦写操作了。
    • 发布于2019-05-05
    • 举报
    • 评论 0
    • 0
    • 0

  • STM32在对flash进行擦写操作的时候必须要解锁,解锁期间其余的程序不会运行,直到重新锁定flash,这样是为了保证在flash擦写过程中不会有误操作

    然后对flash进行读操作不需要加锁,读可以直接用绝对地址访问

    • 发布于2019-05-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 是要先进行解锁的,由于内部的Flash还有程序,所以,要有保护机制
    • 发布于2019-05-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 各种读操作是不需要解锁的,可以直接的读

    写和擦除是需要解锁后执行,执行完成后上锁。

    • 发布于2019-05-06
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STM32读写内部的flash要先解保护吗