引言
BlueNRG LP 系列芯片支持空中包軟件升級,即 OTA(Over-The-Air)功能。當(dāng)然,ST定制了專門的 OTA 流程。OTA 功能允許在不連接任何物理線纜的情況下,直接通過低功耗藍(lán)牙的空中數(shù)據(jù)包,將需要升級的程序代碼發(fā)送到目標(biāo)板,并完成程序的升級。程序升級完成并重新啟動后,直接運(yùn)行新版本的程序。BlueNRG LP 系列芯片提供了 2 種類型的 OTA 框架, 即 OTA Reset Manager 框架和 OTA Service Manager 框架。
SDK 中提供的相關(guān)資源
第一部分:
ST 的 BLE 協(xié)議棧提供了模塊化的配置選項(xiàng),客戶通過這些模塊化的配置選項(xiàng)按照自身應(yīng)用場景的要求,定制自己的協(xié)議棧代碼。具體請參考文檔 ?PM0269 Bluetooth LE stack v3.xprogramming guidelines ?中章節(jié)“2.1 Bluetooth LE stack Library Framework”的相關(guān)描述。
第二部分:
ST 提供的 SDK 軟件包中,提供非靜態(tài)協(xié)議棧方式下包含 OTA 功能的參考示例,也提供了靜態(tài)協(xié)議棧方式下帶 OTA 功能的參考示例。當(dāng)客戶需要將自己的應(yīng)用改為靜態(tài)協(xié)議棧方式并且支持 OTA 功能時(shí),可以參考這些示例。同時(shí)文檔 ?Bluetooth LE Over The Air FirmwareUpgrade (AN5463) ?里有 OTA 功能的詳盡描述可供參考。
第三部分:
ST 提供的 SDK 軟件包中還提供了 4 種靜態(tài)協(xié)議棧的參考示例,其中后 2 種支持 OTAReset Manager 框架,前兩種 (Release, Basic) 只支持程序跳轉(zhuǎn),但不支持 OTA 方式的程序跳轉(zhuǎn)。
具體實(shí)施步驟
小結(jié)
本文首先論述了基于 ST 提供的協(xié)議??蚣埽鶕?jù)客戶自身應(yīng)用場景的需要如何定制自己的靜態(tài)協(xié)議棧。然后描述了如何將普通帶 OTA 功能的應(yīng)用程序更改為支持靜態(tài)協(xié)議的應(yīng)用程序,這樣的應(yīng)用方式既節(jié)省程序空間,也提高了 OTA 軟件升級的速度。