FR8008A的Flash读写操作时,读正常,写不进去
-
做软件OTA过程中,将升级文件写入flash时,调用官方driver_flash.h驱动库的读写函数如下:
uint8_t flash_write(uint32_t offset, uint32_t length, uint8_t *buffer);
uint8_t flash_read(uint32_t offset, uint32_t length, uint8_t *buffer);
测试发现读flash正常(读bin文件地址区,核对数据一致),但是写flash没有生效,两个函数的返回值都是0,请问是什么原因?
-
需要先擦后写,写的地址必须是用户空间
-
@mars 用户空间测试可以读写,但是做OTA,需要把程序写到B区域,这个测试下来不可写,要想写入的话,如何解锁呢?看了蓝牙OTA的flash操作,复制过来也不成功
-
@chiyanzhitong 自己做ota要参考官方的ota流程去实现。比如ota_state置位了吗
-
@song 想参考蓝牙OTA的代码做无线OTA,手册里OTA流程的第一步,写入固件信息的时候,重点是flash写不成功啊,用户手册、规格手册、例程代码里也没有flash的说明,你说的官方OTA流程是指哪个文档里哪块内容,ota_state没有置位,这个在哪个文档里体现了?
-
OTA实现函数里面有已经实现了的 不需要你去操作啊