单片机/MCU论坛
直播中

李中宏

7年用户 1349经验值
私信 关注

程序放在PFLASH0 S4-S24逻辑块,现在程序对PFLASH0 S26的逻辑块进行擦除,报读取内存失败的原因?

程序放在PFLASH0 S4-S24逻辑块,现在程序对PFLASH0 S26的逻辑块进行擦除,直接报读取内存(擦除的块地址)失败,请问该怎么处理,或者说不能同时对PFLASH0的不同扇区进行读写操作                                                                                                                                                                                                                                                                                                                    

回帖(2)

李晓欢

2024-2-18 15:04:28
  PFLASH0 1不能擦除自身的其他扇区,但可以擦除对方任意扇区。方法有2个:
1.先将程序拷贝到RAM里,再擦除PFLASH0其他扇区;
2.程序放在PFLASH1里。                                                                                                                                             
举报

王燕

2024-2-18 15:52:45
读取内存失败的原因可能是因为擦除操作导致该内存地址的数据被擦除或者该地址不可访问。

处理该问题的几个可能的方法:
1. 检查擦除操作是否正确,确保传递给擦除函数的地址是正确的。
2. 确认程序是否有足够的权限对该地址进行擦除操作,某些权限设置可能会限制对特定地址的访问。
3. 确定是否有其他并发操作正在同时对PFLASH0进行读写操作,如果是,则可能需要同步访问,避免冲突。

判断是否可以同时对PFLASH0的不同扇区进行读写操作,需要查看设备手册或参考相关文档,了解芯片的具体技术规格,以及是否有针对并发访问的限制。同时,确保程序对不同扇区的访问操作正确且合理,以避免冲突或错误操作。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分