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