首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

关于STM32的FLASH操作(3)

关于STM32的FLASH操作(3)

主存储块的编程

对主存储块编程每次可以写入16位。当FLASH_CR寄存器的PG位为1时,在一个闪存地址写入一个半字(16位)将启动一次编程;写入任何非半字的数据,FPEC都会产生总线错误。在编程过程中(BSY位为1),任何读写闪存的操作都会使CPU暂停,直到此次闪存编程结束。

建议使用如下步骤对主存储块进行编:

      1.检查FLASH_SR寄存器的BSY位,以确认没有其他正在进行的编程操作。

      2.设置FLASH_CR寄存器的PG位为1。选择编程操作。

      3.在指定的地址写入要编程的半字。直接用指针写。

      4.等待FLASH_SR寄存器的BSY位变为0,表示操作完成。

      5.查询FLASH_SR寄存器的EOP位,EOP1时,表示操作成功。

6.读出写入的地址并验证数据。


继承事业,薪火相传
返回列表