一、 概述
OTA , 即空中下载技术,通过无线技术进行远程升级固件包,本文将介绍如何使用 QN9080 进行蓝牙 OTA 的升级操作
二、 环境搭建
2.1 SDK 下载
本文基于 NXP QN9080 IC,SDK 可在 NXP 官网 https://mcuxpresso.nxp.com 下载
2.2 硬件
本文基于 QN9080 DK 板进行开发,DK 板如图 2.2 所示
图 2.2
2.3 开发软件
SDK 支持 IAR 、 Keil 、 MCUXpreeso IDE 三种开发软件、本文以 IAR 为开发环境作为介绍
三、 工程移植
在SDK_2.2.0_QN908XCDK\boards\qn908xcdk\wireless_examples\bluetooth\otap_client_att目录下的工程已经实现蓝牙 OTA 的功能,我们可使用此工程完成 OTA 升级操作
3.1 OTA 代码烧录
1) 烧录OTA 程序之前需要添加 QN9080 的 OTA Bootloader 程序,在 SDK 安装目录 \tools\wireless\binaries 的文件夹下找到 OTA Bootloader 的 bin文件 bootloader_otap_qn908xcdk.bin,如图 3.1-1 所示
图 3.1-1
2) 将 bootloader_otap_qn908xcdk.bin 放入烧录软件 QN908x Programming Tool 安装目录 nxp\QN908x Programming Tool 下,如图 3.1-2 所示
图 3.1-2
3)打开 QN908x Programming Tool 烧录软件,在 Dowmload 窗口中勾上 Download Application File 、Secondary Bootloader 、Verify 三个复选框,如图 3.1-3 所示
图 3.1-3
3.2 升级文件 .srec 生成
1)在生成 .srec 之前需要进行升级的工程要作一些修改,在 option—>linker 中添加两条设置,这两条设置在烧录的时候预留前面 Bootloader 的空间避免覆盖掉之前烧录好的 Bootloader 内容,如图 3.2-1 所示
图 3.2-1
2)在option—>Output Converter 中选择 Motorola S-records 生成 .srec 文件,如图 3.2-2 所示
图 3.2-2
3.3 手机端 APP 升级
1)将生成的 .srec 放入手机目录下,手机端的测试APP为 IoT Toolbox,可在 NXP官网下载,进入 APP 界面之后选择 OTA 的图标 ,如图 3.3-1 所示
图 3.3-1
2)开发板按下 Button1 按键,开发板的灯会由白灯闪烁变成红灯闪烁的状态。在手机上就会搜索到设备端的广播信号,如图 3.3-2 所示
图 3.3-2
3)连接完成后点击 Open 按钮选择之前下载到手机的 .serc 文件,完成如图 3.3-3 所示
图 3.3-3
4)在界面上点击 upload 按钮进行升级,如图 3.3-4 所示
图 3.3-4
5)升级成功后会弹出成功弹框,如图 3.3-5 所示
图 3.3-5
四、 总结
本文介绍 QN9080 升级的操作步骤,在实际产品开发中还需将 OTA 升级的代码移植到产品代码中,具体移植方法可在大大通博文专区查找《基于NXP QN9080 蓝牙OTA 移植》博文进行参考
五、 参考文献
【1】《 QN908x user manual 》
【2】《 BLE Application Developer’s Guide 》
评论
DING
2021年5月13日