cuijinsheng2023 发表于 2023-6-28 09:02:55

ISP远程升级

通过第3方远程升级,第三方只发送数据,不做任何处理,我想通过DFU标志进行远程升级,如果升级一半失败了,是不是原来的用户程序也没有了,这个有没有办法解决呢

zhp 发表于 2023-6-28 10:38:13

这要看升级到什么程度
如果只是刚刚开始握手,那原来的代码依然存在
如果已经开始擦除或者擦除已经完成,那原来的代码一定是不存在了,没有任何办法恢复

cuijinsheng2023 发表于 2023-6-28 10:44:10

能有办法实现,如果升级不成功,恢复到原来的代码吗?

zhp 发表于 2023-6-28 10:46:49

cuijinsheng2023 发表于 2023-6-28 10:44
能有办法实现,如果升级不成功,恢复到原来的代码吗?
Flash里面的数据一旦被擦除为FF,是没有任何办法恢复为未擦除之前的状态的
升级不成功,可以再升级一次

cuijinsheng2023 发表于 2023-6-28 11:06:32

在升级一次,原来的用户程序没有了,怎么进入到ISP呢,因为我是通过串口命令进入ISP

chen 发表于 2023-6-28 11:33:05

先把程序存储到本地,然后自己擦除写入rom

hsrzq 发表于 2023-6-28 17:21:23

cuijinsheng2023 发表于 2023-6-28 10:44
能有办法实现,如果升级不成功,恢复到原来的代码吗?

做A/B分区呗,手机都是这么干的。
假设当前是A分区处于激活状态,则升级实际是修改B分区的Flash。
升级完成后再将激活分区标记到B,若升级失败则活动分区还是A。

cuijinsheng2023 发表于 2023-6-29 15:35:47

那这样要选择储存大的MCU,我们的程序也要40-50K

cuijinsheng2023 发表于 2023-6-29 15:38:28

还有一个问题想问下,我们现在是通过第三方升级程序,第三方只负责发送数据,不做任何处理,我看了你们ISP程序,有很多协议,比如擦除,连接等等,我们通过这种方式,接收到数据就直接写进去就可以了吗?

jiangshan1xiao 发表于 2024-11-29 17:06:18

只要ISP程序不被破坏,可以重新升级啊。升级一般只是用户AP程序有问题,ISP程序依然是好的呀
页: [1]
查看完整版本: ISP远程升级