沁恒官方提供的下载方式都是需要冷启动(拉低BOOT后上再电),但是在带电池的或者不方便下电的整机内,无法实现冷启动,就可以使用 OTA 或 IAP demo,IAP可以实现串口 或 USB的固件升级。
IAP 工程,通常在IAP文件内,有APP代码、USB/串口 IAP代码、升级的上位机工具。

IAP 组成
完整的IAP 工程是由2个部分组成的
APP:用户应用功能代码区域,主要开发
IAP:在升级的时候跳转到此区域,接收上位机下发代码,擦写flash,完成后复位、跳转。
烧录的时候,需要同时烧录才可以正常运行。下图是ISP工具烧录2个HEX
IAP流程
①在isp工具里面同时烧录UART_IAP.hex和APP.hex
②接上PA8 PA9, 可以看到串口在不停地打印,这时候你把PP4拉低,就可以看到串口不再打印,说明跳转到IAP去了
③上位机下载代码。才可以正常下载(可以导入hex就不同填写地址,如果是bin就需要在编译器内勾选、生成)
④下载后PB4悬空即可
上操作逻辑对应的代码如下(以CH592 IAP与APP举例):
APP:

IAP:

上位机:
