CH32V307有没有办法从SD卡里刷代码?

具体来讲我有三个问题

第一个问题是CH32V307有没有办法从SD卡里刷代码,应该相当于IAP?

第二个问题是由于我的应用也需要用SD卡和修改FLASH,如果我在bootloader和应用里都留一套读SD卡和写flash的代码感觉有点浪费,有没有办法让bootloader和应用里的读SD卡和flash的代码变成同一套啊?

第三个问题是CH32V307的零等待flash的具体实现是啥?能不能一边运行零等待区里的代码一边修改flash?能不能一边运行非零等待区里的代码一边修改flash?我目前理解是零等待区相当于在ram里运行代码,所有是可以一边运行零等待区一边修改的,不知道这样的理解对不对?

您好,关于你的问题:

1、可以通过SDIO或SPI操作SD卡,通过对SD卡内固件的读取然后写入FLASH实现IAP的操作;

2、若你此处的BootLoader程序是指出厂自带的,没法和读SD卡和写FLASH放在一起。若此处Bootloader程序是指用户自己写的IAP程序,本身就需要放在一起的,IAP是将MCU的FLASH分为两个部分,一部分存放IAP程序,一部分存放APP程序。IAP程序包含读取SD卡固件以及写入FLASH这个过程,你可以具体去了解一下IAP;

3、关于零等待以及非零等待,零等待区域代码运行速度会快一些。可以一边运行代码一边修改FLASH,但修改的这部分区域不能和运行代码的存放区域重合,即上面所说的需要将FLASH分为两个部分。

后续若有问题,可通过邮箱(lzs@wch.cn)和我沟通



只有登录才能回复,可以选择微信账号登录