小酒馆 发表于 2024-12-24 11:07:55

使用第三方升级固件疑问

<p>1,使用</p>
<p>STC8H4K64TLCD   给另一个STC8H4K64TLCD在线下载 有如下疑问。进入A芯片给B芯片下载,B芯片原本有一个程序,如果在下载过程中,信号断了,B芯片之前的程序还能用吗。B芯片是否需要分2个区来存储芯片,原有程序一个区,接收到数据一个区如果采用分区,那重启后,怎么进入新的代码空间,我看到bootload,好像我们改动不了, A芯片给B芯片烧录过程序,是先把程序发送完给B芯片,B芯片在进行内部拆除,在重启吗,升级过程中,是先断电,在发送数据,还是升级完成后,进行擦除存储后,在进行断电复位。</p>
<pre><code>1,A发送给B时,是B先断电,A在发送,还是A先发送完成,B进行擦除操作后,在断电。中断传输异常,是否影响B原有固件
</code></pre>

DebugLab 发表于 2024-12-24 11:25:10

一般分2个区(用户ISP也就是bootloader和用户程序),分3个区(用户ISP、用户程序A、用户程序B)的话太复杂了

下载过程中断了,B芯片之前的程序不能使用,因为已经被擦除了,不擦除不能下载新的程序

下载过程中断了,B芯片之前的程序不能正常工作,不会清除DFU标志,会重新进入用户ISP等待下载,重新下载就可以了

要升级时,设置DFU标志,软件复位到用户ISP区升级




小酒馆 发表于 2024-12-24 11:28:56

DebugLab 发表于 2024-12-24 11:25
一般分2个区(用户ISP也就是bootloader和用户程序),分3个区(用户ISP、用户程序A、用户程序B)的话太复杂 ...

谢谢大神,我试试
页: [1]
查看完整版本: 使用第三方升级固件疑问