【沁恒蓝牙开发】IAP升级流程

沁恒官方提供的下载方式都是需要冷启动(拉低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:

上位机:

相关推荐
czhaii2 小时前
RTL8019AS、555,DS3231等芯片的跳线方式和引脚定义
嵌入式硬件
geats人山人海3 小时前
数据结构第六章c语言 树的存储下二叉树的概念和存储
c语言·数据结构·算法
影视飓风TIM4 小时前
Linux下C语言缓冲区原理 + Git版本控制
linux·c语言·git
czhaii4 小时前
基本电器元件 电阻 resistance R 电容 capacitance C 电感 inductance L
嵌入式硬件
冻柠檬飞冰走茶4 小时前
PTA基础编程题目集 7-31 字符串循环左移(C语言实现)
c语言·开发语言·数据结构·算法
2301_777998345 小时前
C/C++:预处理详解
c语言·c++
156082072196 小时前
飞腾D2000接入外部时钟HYM8563芯片调试
驱动开发·嵌入式硬件·mcu
殷忆枫6 小时前
基于STM32+OV2640+ESP8266的无线图像采集系统设计与实现
stm32·单片机·嵌入式硬件
llilian_166 小时前
便携式相位测量模块应用方案的核心优势
网络·功能测试·单片机