注意!引導(dǎo)藍(lán)牙加載程序設(shè)計要考慮這些

2015-05-29 09:51 來源:電子信息網(wǎng) 作者:柚子

藍(lán)牙無線引導(dǎo)加載的方式,可以幫助工程師通過無線傳輸,實現(xiàn)新文件配置和程序升級,具有傳輸配置快、不受空間限制等優(yōu)勢。但在使用這一方法的過程中,工程師在進(jìn)行程序設(shè)計時需要注意哪些方面才能最大限度的避免電源故障?一旦出現(xiàn)加載無效的情況應(yīng)該如何處理?就讓我們通過下文的講解敘述,來看一看在進(jìn)行引導(dǎo)藍(lán)牙加載程序設(shè)計時都要考慮哪些問題。

一個強(qiáng)大的藍(lán)牙引導(dǎo)裝載程序應(yīng)該能夠檢測、報告和妥善地處理無線引導(dǎo)加載過程中發(fā)生錯誤,如數(shù)據(jù)包在傳輸過程中丟失,數(shù)據(jù)損壞,和閃存寫入錯誤。閃存錯誤檢查通常是通過為應(yīng)用程序存儲校驗和或循環(huán)冗余碼(CRC)來實現(xiàn)的。當(dāng)引導(dǎo)加載操作啟動時,它會清除這些比特。如果應(yīng)用程序下載并安裝成功,他們將會更新。

不過,還要說一下引導(dǎo)加載發(fā)生電源故障的情況。在重置時,引導(dǎo)加載程序檢測無效校驗位,并且不會把控制權(quán)轉(zhuǎn)交給部分加載的應(yīng)用程序。相反,它會等待主機(jī)啟動另一個引導(dǎo)加載操作。一旦一個新的應(yīng)用程序被引導(dǎo)加載,引導(dǎo)加載程序必須驗證可引導(dǎo)加載圖像,然后把控制權(quán)轉(zhuǎn)移給新的應(yīng)用程序。引導(dǎo)加載程序也應(yīng)該能夠檢查自己閃存中的圖像,看它是否是有效的。

另一個要考慮的關(guān)鍵因素是避免應(yīng)用程序覆蓋引導(dǎo)加載程序本身。如果引導(dǎo)加載程序被破壞,或由應(yīng)用程序覆蓋,則系統(tǒng)可能無法運(yùn)行,并可能需要引導(dǎo)程序被重新編程到系統(tǒng)中。為了避免這種情況,在閃存中的引導(dǎo)加載程序區(qū)域必須得到保護(hù),以避免被加載程序代碼意外覆蓋。

在引導(dǎo)藍(lán)牙加載程序設(shè)計中,另一個重要的考慮因素是開始與主機(jī)通信的時機(jī)。在確定該應(yīng)用程序有效之后,該引導(dǎo)加載程序可以等待一定的時間,使主機(jī)啟動一個新的引導(dǎo)加載操作。如果等待時間太短,主機(jī)可能不能夠可靠啟動通信。如果時間太長,產(chǎn)品的整體啟動時間可能也被延長了。類似于為了避免設(shè)備重置而啟動加載新應(yīng)用程序的方案,定時問題也可以通過使應(yīng)用程序調(diào)用引導(dǎo)加載程序來解決。

為了使目標(biāo)系統(tǒng)容錯,可以使用Multi-APP引導(dǎo)加載程序,它能夠在閃存中存儲多個應(yīng)用程序的圖像。如果引導(dǎo)加載程序檢測到其中一個應(yīng)用程序圖像被損壞,那么引導(dǎo)加載程序可以跳轉(zhuǎn)到其他圖像中的一個。能夠存儲的應(yīng)用程序的數(shù)量取決于在目標(biāo)系統(tǒng)中閃速存儲器的大小。

引導(dǎo)藍(lán)牙加載程序還可以包含簡單的調(diào)試功能,可以通過使用UART接口和像“TERA TERM”這樣的終端模擬程序在PC上顯示調(diào)試信息來實現(xiàn)。所有調(diào)試信息都可以通過藍(lán)牙到串行適配器無線發(fā)送。

用于不同微控制器的標(biāo)準(zhǔn)主機(jī)自舉工具應(yīng)用程序現(xiàn)在是很容易得到的。它們可以直接使用SPP(串行端口配置文件)無線引導(dǎo)加載,而無需進(jìn)行任何修改。然而,主機(jī)自舉工具可以進(jìn)行定制,以更好地滿足無線引導(dǎo)加載,和/或嵌入終端仿真器窗口查看調(diào)試信息,甚至通過無線使用SPP發(fā)送特定數(shù)據(jù),從應(yīng)用程序中調(diào)用引導(dǎo)加載程序。

為了充分利用終端仿真器,引導(dǎo)加載到目標(biāo)系統(tǒng)中的任何新的應(yīng)用程序還必須包含一個UART接口,并且當(dāng)特定的數(shù)據(jù)從主機(jī)發(fā)送到目標(biāo)系統(tǒng)時,能夠調(diào)用引導(dǎo)程序。引導(dǎo)程序和應(yīng)用程序共享UART接口。用一個稍微復(fù)雜的Multi-App藍(lán)牙引導(dǎo)程序設(shè)計,有可能通過使用SPP從主機(jī)無線發(fā)送圖像到目標(biāo)系統(tǒng)中,實現(xiàn)存儲在閃盤中的多個應(yīng)用程序間的切換。這將節(jié)省新應(yīng)用程序引導(dǎo)加載所需的時間。

結(jié)語

工程師在進(jìn)行藍(lán)牙加載程序設(shè)計時,需要進(jìn)行綜合比對和反復(fù)試驗,盡可能的節(jié)省加載時間并避免加載代碼出現(xiàn)意外覆蓋等故障情況。

藍(lán)牙 加載程序

相關(guān)閱讀

暫無數(shù)據(jù)

一周熱門