999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于TMS320F28335的STM32應用軟件在線升級方法

2024-11-12 00:00:00吳碧霞徐亮吳佳佳
無線互聯科技 2024年19期

摘要:機載衛星通信機箱中的嵌入式模塊通常具有拆卸外殼不便、難以通過外接仿真器來進行STM32應用程序升級更新的問題。針對該問題,文章提出一種基于TMS320F28335的STM32應用軟件在線升級方法。該方法具有較好的穩定性和可靠性,在不拆卸模塊外殼的情況下可實現STM32應用軟件的在線升級。

關鍵詞:TMS320F28335;STM32;在線升級

中圖分類號:TP311 文獻標志碼:A

0 引言

機載衛星通信機箱中的嵌入式模塊須要經常更新修改其中的嵌入式軟件程序,傳統的軟件升級方法是將模塊從機箱中取出,打開模塊蓋板后接入仿真器連接芯片,再通過電腦燒寫軟件進行程序升級。在該方法中,模塊的多次插拔容易造成機箱和模塊的結構損壞,甚至還會出現仿真器無法連接芯片的情況,增加了開發人員的調試工作量。有時為了升級程序,專業技術人員還須奔赴外場,這提高了產品的維護成本。

目前,針對嵌入式軟件的在線升級也得到了廣泛的研究[1-6]。針對傳統軟件升級問題,本文提出了一種基于“上位機+DSP+SPI-Flash+STM32”架構的在線升級方法。該方法將STM32應用軟件數據通過上位機發送給數字信號處理器(Digital Signal Processor,DSP);在DSP接收數據并校驗后,將STM32應用軟件數據存儲在DSP外掛的SPI-Flash相應扇區中;再從SPI-Flash中讀取保存的數據并燒寫到STM32內部的Flash中;進而完成STM32應用程序的升級。

1 總體方案

本文提出的STM32應用程序在線升級方法架構主要包括上位機和嵌入式模塊,其中嵌入式模塊主要由DSP芯片、W25Q64芯片、STM32芯片組成,DSP軟件與上位機通過CAN接口交互,與W25Q64通過SPIA接口交互,與STM32自舉程序通過SCIC接口交互。

當STM32進行在線升級時,開發人員在上位機軟件中選擇待升級的STM32應用程序文件,由上位機將文件數據進行分包,按照特定的幀格式發送給DSP;DSP根據幀格式中的程序代碼編號,將收到的數據存儲到W25Q64的相應扇區中;當W25Q64收到最后一包數據時,系統對所收的全部應用程序數據進行校驗;校驗成功后先將STM32切換到自舉程序模式,然后將應用程序數據從W25Q64中讀出并寫入STM32的內部FLASH;待所有數據寫完后再將STM32切換到應用程序模式,即可運行升級后的應用程序。

2 芯片存儲空間

2.1 W25Q64芯片的Flash空間分配

DSP外掛的SPI-Flash選用W25Q64芯片,該存儲器共有2048個扇區,每個扇區大小為4096個字節,共有8 MB的存儲空間。開發人員根據實際STM32應用程序的bin格式文件大小進行存儲空間的分配,將第1000~1499個扇區用來存儲常規模式的STM32應用程序,將第1500~1999個扇區用來存儲抗干擾模式的STM32應用程序,其余扇區可作他用。

2.2 STM32芯片的內部Flash空間及自舉模式

STM32選用STM32F429芯片,其內部Flash存儲空間共有2 MB,地址為 0x8000000—0x8200000。自舉程序存儲在STM32的內部自舉ROM存儲器中,其通過一種可用的串行外設將STM32應用程序下載到芯片內部Flash中。研發人員將STM32的BOOT0配置為1、BOOT1配置為0,再執行RESET即可激活自舉程序;將BOOT0配置為0、BOOT1配置為0,再執行RESET即可運行STM32應用程序。

3 軟件實現

3.1 STM32的bin格式文件生成

當通過仿真器燒寫STM32應用軟件時,研發人員選擇Keil集成開發環境編譯生成的hex文件,在本文的在線升級方法中寫入STM32內部Flash的文件是二進制bin格式文件,Keil集成開發環境自帶的fromelf.exe工具軟件可生成bin格式文件。

3.2 在線升級工作流程

上位機軟件的工作流程如圖1所示。上位機軟件選擇待升級的STM32應用程序的bin格式文件,按照已定義的程序更新指令幀格式對bin格式文件進行分包發送給DSP;待收到DSP應答的程序加載回傳成功指令后,再繼續發送下一包數據;待所有分包數據均發送完成后,會收到DSP應答的程序加載結果回傳;待程序燒寫完成后,若收到DSP應答的程序燒寫結果回傳指令后,則在界面中顯示燒寫成功,否則顯示燒寫失敗。

DSP軟件的工作流程如圖2所示。DSP軟件接收上位機軟件分包(每包128字節,最后一包按實際剩余字節數)發送的程序更新指令,只有程序代碼編號字段為STM32應用程序,才能保存程序代碼編號并進行之后的升級步驟。當收到開始幀時,系統需要保存校驗值,若后續收到的數據包幀序號與上一幀不連續,則此次升級結束;若連續,則計算每包幀格式數據部分的累加和,將數據存入W25Q64的相應存儲區域。當收到最后一包時,系統將所有分包數據部分的總累加和與保存的校驗值進行比較,若相等則表明收到的數據正確,可進行后續STM32應用程序的擦除和更新操作。STM32應用程序的在線升級需要將STM32從正常啟動應用程序模式切換到自舉模式;在完成與自舉程序的握手后,可將STM32內部Flash的內容全局擦除;擦除成功后可從W25Q64相應地址讀取出程序數據的總長度,按照每次128字節進行分次讀取并寫入STM32內部Flash;當所有程序數據都被寫入后,可將STM32重新切換到正常啟動應用程序模式,此時運行程序即為在線升級后的STM32應用程序。

3.3 上位機軟件

上位機軟件是“CAN總線測試軟件”。該軟件既可實現bin格式文件的分包組幀發送,又可實現特定指令的發送以及接收DSP軟件回傳的指令。STM32應用程序的在線升級需要使用上位機軟件發送程序更新指令,接收程序加載應答回傳指令、程序加載結果回傳指令、程序燒寫結果回傳指令。

3.4 DSP軟件

DSP軟件與上位機軟件通過CAN接口交互,上位機軟件將bin格式文件按照程序更新指令幀格式進行分包組幀發送給DSP軟件,程序更新指令幀格式如表1所示。在開始幀中,數據字段的內容由校驗字(4字節)+基線版本號(3字節)+程序固化時間(7字節)+可執行程序數據組成,后續幀的數據字段僅為可執行程序數據。校驗字的獲取是將“基線版本號”“程序固化時間”和所有“可執行程序數據”按字節進行累加,累加和的長度為32位,在累加時不進行數據截斷變為實際的累加值;按大段序處理,基線版本號和程序固化時間采用BCD碼格式。DSP軟件每收到上位機發送的程序更新指令后,須向上位機發送程序加載響應回傳指令(包含應答結果和幀序號),只有上位機收到DSP軟件的程序加載響應回傳指令后,才能繼續發送下一包的程序更新指令。當DSP軟件收到結束幀時,既要發送程序加載響應回傳指令,又要發送程序加載結果指令(包含加載結果),待STM32應用軟件燒寫完成后,DSP軟件應向上位機發送程序燒寫結果回傳指令(包含燒寫結果)。

DSP軟件與W25Q64通過SPIA接口交互,讀寫該SPI-Flash芯片前,可先讀取器件ID號,確保交互正常。DSP軟件與W25Q64交互使用的基本命令如表2所示。

DSP軟件與STM32自舉程序通過SCIC接口交互,通過配置STM32的BOOT0、BOOT1引腳以及RESET引腳,將STM32切換到自舉模式。DSP軟件向STM32自舉程序發送0x7F;自舉程序向DSP軟件應答0x79,表明STM32已準備好接收命令;之后便可進行數據擦除和數據寫入操作。DSP軟件與STM32自舉程序交互使用的基本命令如表3所示。

4 結語

本文提出了一種基于TMS320F28335的STM32應用軟件在線升級方法,在不拆卸嵌入式模塊的外殼、不使用仿真器連接芯片情況下,該方法可實現在線升級STM32芯片的應用程序,升級成功后上位機軟件界面會彈出燒寫成功的窗口。通過實際項目的驗證,該方法具有良好的可行性、穩定性和可靠性,使STM32應用程序升級更加便捷高效,既減少了嵌入式模塊硬件結構的磨損,又降低了軟件維護的成本,提升了工作效率。

參考文獻

[1]王濤,錢昀瑩,張鉚,等.基于DSP28335的FPGA軟件在線升級方法[J].電子設計工程,2024(3):17-21.

[2]趙飛.一種基于DSP+FPGA架構的軟件在線升級實現[J].現代導航,2021(6):462-465.

[3]龔行梁,周強,趙天恩,等.CAN總線實現的ZYNQ-7000程序在線升級方法[J].單片機與嵌入式系統應用,2018(11):63-66.

[4]倪慶生,倪云龍,潘曉洋,等.基于CAN總線的TMS320F28335遠程在線升級方法設計[J].電子與封裝,2021(11):31-35.

[5]呂春燕,靳占軍,張樂君,等.STM32單片機在線升級設計及實現[J].信息通信,2017(6):462-465.

[6]羅成娥,任海強.基于CAN總線的在線升級系統設計與實現[J].數字通信,2013(6):28-32.

(編輯 王永超編輯)

Online upgrade method of STM32 application software based on TMS320F28335

WU Bixia, XU Liang, WU Jiajia

(Nanjing Panda Handa Technology Co., Ltd., Nanjing 210001, China)

Abstract: It is inconvenient for embedded modules in airborne satellite communication cabine to remove the module shell, and it is difficult to upgrade STM32 application program through external emulators. In order to solve this problem, this paper proposes an online upgrade method of STM32 application software based on TMS320F28335. This method has good stability and reliability, and can realize the online upgrade of STM32 application software without disassembling the module shell.

Key words: TMS320F28335; STM32; online upgrade

主站蜘蛛池模板: 99在线视频精品| 欧美国产中文| 九一九色国产| 国产精品视频免费网站| 久久国产精品波多野结衣| 国产尤物在线播放| 天天色综网| 亚洲天堂视频在线免费观看| 国产美女一级毛片| 久久精品aⅴ无码中文字幕| 原味小视频在线www国产| 视频二区亚洲精品| 欧美久久网| 亚洲精品无码av中文字幕| 嫩草影院在线观看精品视频| 精品国产中文一级毛片在线看| 伊人丁香五月天久久综合| 日本亚洲成高清一区二区三区| 熟女视频91| 欧美午夜视频| 丰满的少妇人妻无码区| 免费高清a毛片| 99久久精彩视频| 一级毛片中文字幕| 亚洲精品老司机| 日韩成人午夜| 亚洲色图在线观看| 萌白酱国产一区二区| 国产黄色视频综合| 99热这里只有精品免费国产| 日日噜噜夜夜狠狠视频| 亚洲国产成人自拍| 亚洲第一综合天堂另类专| 91精品啪在线观看国产| 亚洲大尺码专区影院| 亚洲人人视频| 亚洲无码高清免费视频亚洲| 亚洲精品国产综合99| 91久久国产成人免费观看| 伊伊人成亚洲综合人网7777| 久久96热在精品国产高清| 国产精品真实对白精彩久久 | 亚洲Av综合日韩精品久久久| 欧美精品影院| 男人天堂伊人网| 992Tv视频国产精品| 婷婷六月综合网| www.国产福利| 亚洲aⅴ天堂| 欧美一区二区人人喊爽| 91精品日韩人妻无码久久| 91香蕉视频下载网站| 国产白浆在线| 久久中文字幕av不卡一区二区| 日韩免费毛片| 四虎成人精品| 国内丰满少妇猛烈精品播| 欧美区在线播放| 四虎精品黑人视频| 97视频免费看| 亚洲综合一区国产精品| 亚洲妓女综合网995久久| 欧美日本在线一区二区三区| 国产麻豆永久视频| 国产成人91精品免费网址在线| 91亚洲免费视频| 久久77777| 伊人久久婷婷五月综合97色| av性天堂网| 激情無極限的亚洲一区免费| 亚洲永久色| 成人午夜精品一级毛片| 国产成人精品一区二区| 人妻中文字幕无码久久一区| 亚洲色图欧美在线| 久草性视频| 91精品国产无线乱码在线| 国产亚洲欧美另类一区二区| 国产精品美女免费视频大全 | 中文毛片无遮挡播放免费| 无码内射在线| 国产在线视频二区|