使用無線藍牙進行文件傳輸和配置,是我們經(jīng)常會用到的技術(shù)之一。不過這種技術(shù)不僅可以應(yīng)用在文件配置中,它也可以通過無線命令的傳輸加載程序,進而實現(xiàn)無線條件下的產(chǎn)品配置和程序升級。這種方式目前已經(jīng)被全球二十多個國家的工程師廣泛應(yīng)用在各個領(lǐng)域中,本文將會針對這種啟動加載的新方式進行詳細的解讀。
目前工程師進行產(chǎn)品程序升級所采用的主要方法有兩種,一種是通過內(nèi)置式的引導(dǎo)加載程序進行升級,另一種是通過藍牙配置文件的方式,啟動加載程序。傳統(tǒng)的程序升級方法通常涉及引導(dǎo)加載程序主機和目標之間的有線連接。而在藍牙到串行適配器的幫助下,同樣可以引導(dǎo)加載操作可以以無線方式進行。如果目標位于一個很難用物理方法觸及的區(qū)域,或者是處于密封空間內(nèi),使用無線方式是非常有用的。
要使用引導(dǎo)程序,首先必須配置該產(chǎn)品,以保證運行的是引導(dǎo)程序,而不是應(yīng)用程序。當(dāng)啟動加載程序運行時,主機可以通過通信信道發(fā)送一個“引導(dǎo)加載啟動”命令。如果引導(dǎo)程序發(fā)出一個“OK”的回應(yīng),引導(dǎo)加載就可以開始。引導(dǎo)加載過程中,主機讀取新應(yīng)用程序文件,將其解析為閃存寫入指令,并把這些命令發(fā)送到引導(dǎo)加載程序。之后,整個文件被發(fā)送,引導(dǎo)程序驗證文件的完整性,之后將控制權(quán)交給新的應(yīng)用程序。
使用藍牙到串口適配器的無線引導(dǎo)加載,可以在任何一個支持應(yīng)用藍牙串行端口配置文件(SPP)的UART引導(dǎo)程序的目標上運行,無需對主機或者運行在目標上的引導(dǎo)程序固件進行任何修改。藍牙核心規(guī)范用來說明使用具有藍牙功能的設(shè)備與其他擁有相同文件的藍牙設(shè)備進行通訊時的一般行為表現(xiàn),藍牙配置文件是藍牙核心規(guī)范的附屬協(xié)議。
串行端口配置文件是基于射頻通信協(xié)議的,它主要模仿了RS-232串行端口。它定義了如何在兩個設(shè)備之間設(shè)置虛擬串行端口,以及如何用藍牙將其連接起來。一臺擁有藍牙的電腦可以連接到目標端的藍牙串口適配器,并執(zhí)行引導(dǎo)加載操作。通過發(fā)送串行命令到當(dāng)前在目標設(shè)備上運行的應(yīng)用程序,可以無線方式激活引導(dǎo)加載命令。
結(jié)語
使用藍牙進行無線引導(dǎo)加載程序,可以有效克服有線連接的弊端。除此之外,藍牙低功耗(BLE)模塊也可以用于無線引導(dǎo)加載。不同于經(jīng)典藍牙,藍牙低功耗沒有串行端口配置文件。然而,在藍牙低功耗技術(shù)中,所有的配置文件和服務(wù)支持全部處于應(yīng)用空間中。產(chǎn)品開發(fā)人員可以在藍牙低功耗模塊的通用屬性協(xié)議(GATT)上開發(fā)自己的串行端口服務(wù),并將其用于無線引導(dǎo)加載。