打印

关于IAP请教版主

[复制链接]
1706|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
贾斯文|  楼主 | 2009-5-26 10:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在ISP工具或程序中读出“写保护寄存器WRP”都为FFFFFFFF,理解为没有写保护,也就没有进行解锁操作,直接擦除800 0000开始的10页,总是返回擦除成功,而800 0000开始的应该是我写的IAP程序,这个擦除操作相当于自杀,但是总提示擦除成功,而程序还能运行。
沙发
香水城| | 2009-5-26 12:04 | 只看该作者

“写保护寄存器WRP”都为FFFFFFFF,表明是写保护

请看STM32闪存编程手册。

使用特权

评论回复
板凳
vigia| | 2009-5-26 12:07 | 只看该作者

RX

要先执行  FLASH_Unlock();
不然Flash_CR寄存器不可写。

使用特权

评论回复
地板
贾斯文|  楼主 | 2009-5-26 13:59 | 只看该作者

谢谢各位

正常了,忘了FLASH_Unlock();
对这个FLASH的操作理解不够深,为什么没有FLASH_Unlock,擦除和写入都返回成功呢?

使用特权

评论回复
5
vigia| | 2009-5-26 15:00 | 只看该作者

没有UNLOCK就不能写CR寄存器

不能写CR寄存器就不会执行擦除或者写操作。

没有执行擦除或者写操作,当然就不会有出错信号了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

24

帖子

0

粉丝