1, 测试工程代码 DA14580_OTA测试工程代码下载
https://download.csdn.net/download/jiangchao3392/10406404
编译环境:keil5
编译后生产 HEX文件, 需要先抓BIN文件, 再转IMG文件。
转换工具下载:
https://download.csdn.net/download/jiangchao3392/10406425
转换分3步完成:
1, 打开CMD
首先要将需要转换的HEX文件放在转换目录下。
CD到文件所在目录:
例如
cd C:\Users\JC\Desktop\测试\OTA_test\OTA_test\projects\target_apps\ble_examples\ble_app_ota\Keil_5\out_580
2,将HEX文件转换为bin文件,使用如下指令:
hex2bin -e bin ble_app_ota_580.hex
此处.hex文件为上面工程编译后生成,文件名称根据编译后的文件名称灵活更改。执行此条指令后生成 .bin文件。
mkimage single ble_app_ota_580.bin fw_0_version.h ble_app_ota_580.img
其中:fw_0_version.h 文件是比较重要的文件
#define DA14580_SW_VERSION "v_5.10.17.41"
#define DA14580_SW_VERSION_DATE "2018-05-10 17:41 "
#define DA14580_SW_VERSION_STATUS "REPOSITORY VERSION"
fw_0_version.h文件下载模板:https://download.csdn.net/download/jiangchao3392/10406546
每生成img文件时,需要更改一下版本参数或是时间,不改变会导致升级时报错。
2,二次引导工程文件DA1458X二次引导工程下载
https://download.csdn.net/download/jiangchao3392/10406116
编译后生成:secondary_bootloader.hex 如上图。
文件下载:
1,先下载二次引导文件 secondary_bootloader.hex
按图标步骤,1,-5, 链接,全部擦除, 选择文件, 下载, 弹框选yes。
2,在下载配置文件
点击
其中一个配置文件Pdt_Header.txt 这里https://download.csdn.net/download/jiangchao3392/10406468 下载
3, 下载 .img文件
再点击:
重新选择 img文件。
偏移设置为3000
链接,下载。
手机端实现 空中升级
1, iPhone手机到手机商店下载:SUOTA
2,把要升级的img文件拷贝到手机。工具可以选择iTunes或者iTools,其道理是一样的,这里以iTools为例,将手机连上iTools,然后选择:
打开SUOTA的文件共享,并选择以下文件夹,将要升级的文件拷贝到该文件夹下
拷贝完毕后关闭iTools,断开手机。
然后打开手机APP,点击搜索
这是我们事先烧录好的程序,点击设备建立连接。
配置默认, 点击Update,选择full_emb_sysram_fw_1.img。
点击, Yes,reboot 再刷新界面,可以看到更新后的设备
参考文档: https://blog.csdn.net/yueqian_scut/article/details/50849033
https://blog.csdn.net/yueqian_scut/article/details/62229262
http://www.snowywind.com/snowywind/?post=40
https://blog.csdn.net/gyb510/article/details/71496930