OTA升級時的存放地址時0x7000,看手冊里在CodeFlash的地址區(qū)間內(nèi),但是程序中說的是在DataFlash,是我理解的有問題嗎?

image.pngimage.pngOTA升級時的存放地址時0x7000,看手冊里在CodeFlash的地址區(qū)間內(nèi),但是程序中說的是在DataFlash,是我理解的有問題嗎?

您好,區(qū)分用的是codeflash還是dataflash,主要看接口函數(shù)名,codeflash 與 dataflash 分為兩組接口,詳見EVT包中的FLASH例程。

codeflash的基地址為0,dataflash 的基地址為0x70000。接口函數(shù)中已在flash操作庫中添加好了基地址,用戶調(diào)用接口時只需關(guān)心偏移地址。


所以操作codeflash的函數(shù)是FLASH_ROM_WRITE,操作dataflash的是EEPROM_WRITE。請問是這樣嘛?


對的,是這樣的,不過上面的OTA_DATAFLASH_ADD是用來存放ota標(biāo)志的,并不是用來放ota的程序的,所以地址是dataflash的。


現(xiàn)在遇到一個問題,我移植了一個文件系統(tǒng)進(jìn)去,操作的是codeflash,但是因?yàn)槲募到y(tǒng)源碼是按照下圖操作的image.png

由于codeflash的擦除后是不經(jīng)過加解密的,但是讀是有加解密,這樣就導(dǎo)致下載程序時清空codeflash后,我在初始化文件系統(tǒng)時讀出來的數(shù)據(jù)不是FF,文件系統(tǒng)進(jìn)行合法性檢查,檢查后報錯。這有什么辦法解決嗎,或者說貴司有無提供相應(yīng)的操作codelfash的文件系統(tǒng)。謝謝!


codeflash操作會進(jìn)行加密,如果沒有寫的話也就是沒有進(jìn)行加密的過程,但是讀的話進(jìn)行了解密。所以在擦了之后讀出來的數(shù)據(jù)是a9 bd f9 f3,實(shí)際上是擦除成功的。

因此可以嘗試修改你的操作系統(tǒng),在沒有寫的情況下,判斷為上述的數(shù)據(jù)則為成功。


這里的操作系統(tǒng)不止需要修改一個地方,整體的邏輯都需要修改,太麻煩了。貴司有沒有提供操作codeflash的文件系統(tǒng)呢


?目前暫無專門的操作codeflash的文件系統(tǒng)demo提供參考。


只有登錄才能回復(fù),可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频