ch582 请问如何在用户程序内跳转到ISP模式,实现免按键下载呢?

求程序       ch582 如何在用户程序内跳转到ISP模式,实现免按键下载呢?

参考一下这个博客:

CH573 CH582 用户程序跳转进BOOT - debugdabiaoge - 博客园 (cnblogs.com)


我不明白10秒超时什么意思  超时就不能下载程序了吗   之前的程序还能用吗???  arm  区域为什么  给解释一下哦 大帅哥 我不是恒明白哦???


10秒超时的意思就是进入boot 10s你还没下载程序,那么就会跳到APP区域,但是没有代码运行,下次想要下载代码可以重新上电进boot。


void APPJumpBoot(void)   //此段代码必须运行在RAM中
1.我不明白我怎么控制他在RAM运行啊??程序怎么写让他强制在RAM运行啊???? 
2.app跳转地址都擦除了10秒超时后还能执行APP程序吗????他又跳到哪里执行啊??



  1. 放在ram中跑就是添加__HIGH_CODE或 __attribute__((section(".highcode")))这句代码,可以看我们提供的链接,

  2. app都被擦除了,出了boot是没有代码运行的,所以就需要你使用isp工具去升级,超时了也没关系,这个时候芯片没有app代码,可以理解为空片,重新上电就能够下载代码。


超时了也没关系,这个时候芯片没有app代码,可以理解为空片,重新上电就能够下载代码。


低功耗IOT产品电池都是焊接在PCB上的怎么断电啊???不明白焊接死了我怎么断电啊,还有什么方法超时了还可以继续下载程序啊 不用断电啊呀可以下载程序 万一超时了也能下载程序啊????请赐教??


TECH_Hy :超时了也没关系,这个时候芯片没有app代码,可以理解为空片,重新上电就能够下载代码。

低功耗IOT产品电池都是焊接在PCB上的怎么断电啊???不明白焊接死了我怎么断电啊,还有什么方法超时了还可以继续下载程序啊 不用断电啊呀可以下载程序 万一超时了也能下载程序啊????请赐教??


BOOT有超时退出,即使是空片,超时软复位后程序指针也在用户区,如果不重新上电没法重新回到BOOT。
鉴于你这样的使用场景,可以考虑EVT里面的IAP方案,使用自定义方式进行升级,EVT里面提供了串口、USB和BLE多种方式的IAP升级参考。

image.png

image.png



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