新手入门
- 积分
- 12
- 金钱
- 12
- 注册时间
- 2019-8-29
- 在线时间
- 3 小时
|
发表于 2019-8-30 09:12:10
|
显示全部楼层
楼主发的只能成功一次的问题我已经找到了,是因为擦除sector的时候有问题,用楼主发布的算法当你在下载的时候选择擦除整个芯片,会每一次都成功的。
将
int EraseSector (unsigned long adr) {
W25QXX_Erase_Sector(adr-base_adr));
return (0); /* Finished without Errors */
}
修改为:
int EraseSector (unsigned long adr) {
W25QXX_Erase_Sector((adr-base_adr)/4096);
return (0); /* Finished without Errors */
}
就也可以在下载时擦除sector了。
现在又有新的问题了,每次下载后在verify都会出错,但是实际程序是可以正常运行的,就是无法仿真成功,有谁知道解决方法吗?
verify错误log如下:
Contents mismatch at: 00200000H (Flash=00H Required=90H) !
Contents mismatch at: 00200001H (Flash=00H Required=65H) !
Contents mismatch at: 00200003H (Flash=00H Required=20H) !
。。。。。。。等等很多
|
|