国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

面向城鄉(xiāng)公交的嵌入式系統(tǒng)遠程升級設計方案

這篇具有很好參考價值的文章主要介紹了面向城鄉(xiāng)公交的嵌入式系統(tǒng)遠程升級設計方案。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

針對城鄉(xiāng)公交站牌顯示終端現(xiàn)場升級與維護困難的問題,提出了一種基于應用程序(IAP)技術的嵌入式系統(tǒng)遠程升級設計方案。

通過IAP技術配合改良過的遠程升級程序代替?zhèn)鹘y(tǒng)的現(xiàn)場燒寫調(diào)試,節(jié)約了奔赴現(xiàn)場調(diào)試的時間和成本。

針對遠程升級過程中被惡意攻擊、固件文件安全傳輸和可靠更新等安全性問題,提出利用分包校驗和設置臨時程序存儲區(qū)域的方法。

采用多服務器協(xié)同設計和嚴格權限管理方式,在服務器端通過權限管理來提升升級操作過程中的安全性。

引言

公共交通智能化是當前的大趨勢,安裝于村鎮(zhèn)道路旁的城鄉(xiāng)公交站牌顯示終端能實時顯示公交車到離站信息,到站距離,能極大地方便老百姓的公交出行。

傳統(tǒng)的升級方式通過預留的升級接口,通過切換BOOT模式使用串口或者JLINK接口來進行升級。

城鄉(xiāng)公交站牌安裝點位偏遠、分散,要實現(xiàn)設計缺陷修補、功能改進或
性能提升等需求,需要到現(xiàn)場拆卸設備,增加了維護成本。

本設計在利用城鄉(xiāng)公交站牌顯示終端現(xiàn)有的數(shù)據(jù)鏈路的基礎之上,通過協(xié)議的擴展,實現(xiàn)遠程升級固件。
提高了嵌入式設備的可維護性,并通過多服務器協(xié)同和嚴格的權限管理機制,提升了升級過程中的安全性,通過CRC加密算法和斷點續(xù)傳機制,保證了升級文件的可靠性。

系統(tǒng)組成

面向城鄉(xiāng)公交的嵌入式系統(tǒng)遠程升級設計方案,論文學習,網(wǎng)絡,遠程升級,物聯(lián)網(wǎng)
本文的升級系統(tǒng)由業(yè)務服務器、站牌顯示終端和升級服務器三部分組成。

業(yè)務服務器通過與站牌顯示終端的網(wǎng)絡連接,實現(xiàn)車輛到站的信息發(fā)布。

升級服務器在業(yè)務服務器發(fā)起升級請求后,響應站牌顯示終端的升級請求,實現(xiàn)升級數(shù)據(jù)的下發(fā)。

站牌顯示終端通過4G網(wǎng)絡登錄業(yè)務服務器,接收業(yè)務服務器下發(fā)的數(shù)據(jù)。

城鄉(xiāng)公交站牌顯示終端由微控制器(MCU GD32F103RB)、4G無線模塊(移遠EC20)、數(shù)碼管顯示驅動單元、實時時鐘、供電單元等組成,主要實現(xiàn)上報數(shù)據(jù)和接收服務器下發(fā)的車輛到離站信息等功能。

面向城鄉(xiāng)公交的嵌入式系統(tǒng)遠程升級設計方案,論文學習,網(wǎng)絡,遠程升級,物聯(lián)網(wǎng)
遠程升級功能是利用城鄉(xiāng)公交站牌顯示終端本身具有的網(wǎng)絡連接特性,通過網(wǎng)絡協(xié)議的接口,實現(xiàn)對站臺顯示終端的固件程序的更新:即更新微控制器MCU內(nèi)部的程序,以達到改進和提升的目的。

升級原理

GD32F330 MCU是兆易創(chuàng)新公司推出的基于Cortex?-M4內(nèi)核的微控制器[3][4],是國產(chǎn)自主品牌的32位MCU,集成外設單元豐富、性能強勁,成本低廉,是替換STM32系列MCU的首選。本文選擇GD32F330RB作為站牌顯示終端的主控MCU。

微處理器的編程方法通常有兩種:通過串口或者JTAG等接口進行編程的在系統(tǒng)編程(In System Programming,ISP)模式、在應用程序控制下的在應用編程(In Application Programming,IAP)模式。

本設計采用的預先將Bootloader程序+應用程序通過ISP方式下載到終端作為出廠程序,出廠后通過IAP模式對程序進行升級。IAP是用戶自己的程序在運行過程中對User Flash的部分區(qū)域進行燒寫。

本系統(tǒng)設計兩個程序[7]:Bootloader(引導加載程序)和App
(應用程序)。

Bootloader程序不執(zhí)行應用的功能操作,只負責在開機啟動時對系統(tǒng)升級數(shù)據(jù)進行更新,并跳轉到對應的App程序。App程序為用戶功能代碼,執(zhí)行用戶功能操作,同時接收服務器的升級請求,將升級代碼數(shù)據(jù)保存到特定的FLASH位置。

本系統(tǒng)中使用的芯片GD32F330RB的FLASH存儲器大小是128K,此空間被劃分為三大塊,分別用于運行Bootloader程序,APP程序1,APP程序2。

其中0x801E000-0x801f000這4K空間用來存儲升級相關的環(huán)境變量,包括升級標志、數(shù)據(jù)長度,CRC32校驗后的校驗碼。
面向城鄉(xiāng)公交的嵌入式系統(tǒng)遠程升級設計方案,論文學習,網(wǎng)絡,遠程升級,物聯(lián)網(wǎng)

Bootloader設計

Bootloader程序是本方案的核心,需要完成升級文件檢測,程序校驗,固件更新以及程序跳轉等功能。
面向城鄉(xiāng)公交的嵌入式系統(tǒng)遠程升級設計方案,論文學習,網(wǎng)絡,遠程升級,物聯(lián)網(wǎng)

  1. 微處理器上電/復位后,從地址0x08000000開始運行Bootloader程序。
  2. Bootloader完成MCU的初始化,然后從0x0801E0000地址讀取環(huán)境變量。
  3. 根據(jù)環(huán)境變量中的升級標志位來判斷是否要進入程序升級模式。
  4. 如果不需要升級,讀出需要跳轉的程序入口地址,執(zhí)行程序跳轉操作,跳轉到0x08002000(APP1程序區(qū))處開始運行應用APP;如需要升級,進入升級流程,進行APP代碼的更新。
  5. 在升級流程中,首先讀取環(huán)境變量中的待升級程序的長度和CRC校驗碼,并計算APP2程序區(qū)地址中的存儲的程序的CRC32的校驗碼,與環(huán)境變量中的校驗碼進行比對。
  6. 校驗碼一致的話進入FLASH操作流程,根據(jù)需要對FLASH扇區(qū)進行擦除,然后從APP2對應的位置讀取程序數(shù)據(jù)寫入APP1對應的位置;校驗碼不一致的話,放棄升級。
  7. 升級完成或者升級失敗均需要清除升級標志位,然后軟復位MCU。

通信協(xié)議設計

與服務器通信,需要遵循一定的通信協(xié)議,才能正確的進行升級。
當前采用的連接為TCP長連接,大端模式的網(wǎng)絡字節(jié)序。
面向城鄉(xiāng)公交的嵌入式系統(tǒng)遠程升級設計方案,論文學習,網(wǎng)絡,遠程升級,物聯(lián)網(wǎng)
面向城鄉(xiāng)公交的嵌入式系統(tǒng)遠程升級設計方案,論文學習,網(wǎng)絡,遠程升級,物聯(lián)網(wǎng)
面向城鄉(xiāng)公交的嵌入式系統(tǒng)遠程升級設計方案,論文學習,網(wǎng)絡,遠程升級,物聯(lián)網(wǎng)
為了降低遠程傳輸數(shù)據(jù)出現(xiàn)的誤碼率,把升級固件分成小包進行傳輸。
固件數(shù)據(jù)包的分包長度設置為256個字節(jié),分包序號表示當前傳輸?shù)臄?shù)據(jù)包是第幾包,當出現(xiàn)傳輸錯誤,幀數(shù)據(jù)包校驗不正確時,會返回錯誤接收的數(shù)據(jù)包給服務器,服務器根據(jù)分包序號,重新發(fā)送此分包的數(shù)據(jù)包。終端正確接收了當前的分包,給服務器返回成功的應答信號,服務器發(fā)送下一個分包,直到固件數(shù)據(jù)發(fā)送完成。

APP程序設計

APP程序是實現(xiàn)終端功能的軟件。本終端主要實現(xiàn)的功能是驗證登錄業(yè)務服務器和接收服務器下發(fā)的車輛到離站信息,并在終端的LED上顯示公交車到站距離。

將APP2區(qū)的(0x0801E0000)開始的一個扇區(qū)用來存儲升級程序的環(huán)境變量,主要包括程序是否需要升級的標志信息,程序的長度和校驗碼。

Bootloader運行后首先讀取0x0801E000位置處的環(huán)境變量,判斷程序是否需要升級。如果程序需要升級,就需要根據(jù)環(huán)境變量中存儲的程序長度和校驗碼對APP2區(qū)的程序進行CRC校驗,判斷校驗碼是否與環(huán)境變量中的校驗碼一致,若不一致,則清除環(huán)境變量的升級標志,跳轉到APP1執(zhí)行;若一致,則擦除APP1程序區(qū),將APP2程序區(qū)的數(shù)據(jù)拷貝到APP1程序區(qū)??截愅瓿梢院?,清除環(huán)境變量的升級標志,跳轉到APP1執(zhí)行。

面向城鄉(xiāng)公交的嵌入式系統(tǒng)遠程升級設計方案,論文學習,網(wǎng)絡,遠程升級,物聯(lián)網(wǎng)
固件升級的安全關系到整個系統(tǒng)的安全,因為固件將徹底的替換掉終端正在運行的程序。因此需要從幾個方面來保證新的固件程序在下發(fā)升級以后,不會造成系統(tǒng)的大面積崩潰。

  1. 需要保證新版本的固件程序經(jīng)過了嚴格的測試才能上傳到服務器中。
  2. 要保證新版本的固件程序擁有再次升級的功能,這樣在出現(xiàn)bug或者錯誤以后,可以迅速進行升級補救。
  3. 分批次進行升級,保證升級后的設備運行穩(wěn)定,無故障,再擴大升級規(guī)模。
  4. 固件程序升級過程中,實行Bin文件加密校驗,保證升級固件的完整性。
  5. 提升服務器的安全等級,防范內(nèi)部或者外部的惡意攻擊。

終端開機后主動連接業(yè)務服務器,根據(jù)JT808協(xié)議,完成終端設備的注冊、登錄,并根據(jù)業(yè)務服務器下發(fā)的到站信息數(shù)據(jù),在本地LED上實現(xiàn)車輛信息的顯示。如果需要對新版本的固件進行升級,則開啟升級流程。文章來源地址http://www.zghlxwxcb.cn/news/detail-625142.html

  1. 上傳經(jīng)過測試的BIN文件到業(yè)務服務器,業(yè)務服務器經(jīng)過身份認證和密碼驗證,確認上傳的文件合法,并將BIN文件同步到升級服務器。
  2. 在業(yè)務服務器的終端升級管理頁面選擇需要升級的終端設備,下發(fā)升級命令,根據(jù)待升級終端的數(shù)量來進行身份認證。在大于5臺待升級設備時,需要請求更高的系統(tǒng)權限。
  3. 業(yè)務服務器給終端發(fā)送升級命令,包括升級服務器的IP和端口號。
  4. 終端主動斷開與業(yè)務服務器的網(wǎng)絡連接,根據(jù)下發(fā)的升級服務器IP和端口號,連接升級服務器,連接過程中會發(fā)送自己的終端ID和當前版本給升級服務器。
  5. 升級服務器確認終端的版本與待升級的版本都正確無誤后,發(fā)送新版本固件程序的固件程序大小,CRC校驗碼等信息給終端,在收到終端的確認信息后,開始分包發(fā)生固件信息給終端。
  6. 終端根據(jù)協(xié)議,對分包數(shù)據(jù)進行校驗,校驗無誤后,寫入FLASH中對應的存儲區(qū)域。每接收完一幀數(shù)據(jù),向升級服務器請求下一段數(shù)據(jù)。若是校驗出錯或者是網(wǎng)絡中斷,將會重復請求未接收完成的數(shù)據(jù),實現(xiàn)斷點續(xù)傳。
  7. 在終端接收到最后一幀數(shù)據(jù)并寫入FLASH之后,將根據(jù)最開始接收到的程序大小和CRC校驗碼對整個寫入FLASH的程序文件進行校驗。在校驗無誤后,置位環(huán)境變量中升級標志。
  8. 斷開與升級服務器的網(wǎng)絡連接,軟復位MCU。復位后執(zhí)行Bootloader里的程序更新操作,程序更新后,跳轉到APP1程序運行。
  9. 終端連接業(yè)務服務器,在注冊登錄過程中上報自己的終端ID和版本信息。并根據(jù)業(yè)務服務器下發(fā)的命令實現(xiàn)基本功能。此時在業(yè)務服務器上將顯示當前終端的版本信息。

到了這里,關于面向城鄉(xiāng)公交的嵌入式系統(tǒng)遠程升級設計方案的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 全志V3S嵌入式驅動開發(fā)(開發(fā)環(huán)境再升級)

    【 聲明:版權所有,歡迎轉載,請勿用于商業(yè)用途。 聯(lián)系信箱:feixiaoxing @163.com】 ? ? ? ? 前面我們陸陸續(xù)續(xù)開發(fā)了差不多有10個驅動,涉及到網(wǎng)口、串口、音頻和視頻等幾個方面。但是整個開發(fā)的效率還是比較低的。每次開發(fā)調(diào)試的時候都很麻煩,譬如說,如果是驅動代碼

    2024年02月08日
    瀏覽(32)
  • VScode遠程連接開發(fā)嵌入式開發(fā)板

    VScode遠程連接開發(fā)嵌入式開發(fā)板

    在做嵌入式開發(fā)時,很多時候需要遠程連接或者遠程調(diào)試設備,這時可以通過VScode上的插件來很方便的進行遠程連接和調(diào)試。 ssh遠程連接嵌入式開發(fā)板: 1、安裝vscode ssh遠程插件:Remote-SSH。 2、點擊\\\"+\\\",輸入ssh連接命令。(eg:ssh root@192.168.1.4)? 3、選擇要更新的ssh配置文件,

    2024年01月21日
    瀏覽(20)
  • 嵌入式系統(tǒng)>嵌入式硬件知識

    AI芯片的特點包括 :新型計算范式AI芯片的關鍵特征: 1、新型的計算范式 AI 計算既不脫離傳統(tǒng)計算,也具有新的計算特質(zhì),如處理的內(nèi)容往往是非結構化數(shù)據(jù)(視頻、圖片等)。處理的過程通常需要很大的計算量,基本的計算主要是線性代數(shù)運算,而控制流程則相對簡單。

    2024年02月08日
    瀏覽(28)
  • 嵌入式操作系統(tǒng)(嵌入式學習)

    嵌入式操作系統(tǒng)(嵌入式學習)

    嵌入式操作系統(tǒng)是一種專門設計和優(yōu)化用于嵌入式系統(tǒng)的操作系統(tǒng)。它是在資源受限的嵌入式設備上運行的操作系統(tǒng),如微控制器、嵌入式處理器和系統(tǒng)芯片等。 嵌入式操作系統(tǒng)的主要目標是提供對硬件資源的有效管理和對應用程序的調(diào)度,以實現(xiàn)系統(tǒng)的可靠性、實時性和效

    2024年02月10日
    瀏覽(23)
  • 軟考-嵌入式系統(tǒng)設計師:[嵌入式系統(tǒng)基礎:筆記(一)]

    軟考-嵌入式系統(tǒng)設計師:[嵌入式系統(tǒng)基礎:筆記(一)]

    大家不要只收藏不關注呀,哪怕只是點個贊也可以呀!?? 粉絲私信發(fā)郵箱,免費發(fā)你PDF!!! 因為準備備考中級嵌入式設計師證書,所以買了一些資料回來準備復習,本書為倪奕文老師編制的書,如果大家有時間和精力還是很建議大家去買一本的,這本書反而是能夠讓小白很快

    2023年04月08日
    瀏覽(433)
  • 機器視覺與嵌入式技術:開拓自動駕駛和遠程監(jiān)控新視野

    機器視覺與嵌入式技術:開拓自動駕駛和遠程監(jiān)控新視野

    (本文為簡單介紹,觀點源于網(wǎng)絡) 機器視覺系統(tǒng)是指利用計算機來模擬人眼的識別與判斷。在自動駕駛和遠程監(jiān)控領域,機器視覺結合嵌入式技術的應用,不僅極大地提升了自動化水平,而且開辟了新的技術視野。 在自動駕駛領域,機器視覺系統(tǒng)負責捕捉車輛周圍的環(huán)境

    2024年02月19日
    瀏覽(21)
  • 關于嵌入式開發(fā)的一些信息匯總:嵌入式C開發(fā)人員、嵌入式系統(tǒng)Linux

    關于嵌入式開發(fā)的一些信息匯總:嵌入式C開發(fā)人員、嵌入式系統(tǒng)Linux

    這篇文章是關于嵌入式開發(fā)的一些基本信息,供想入行的人參考。有一些作者本人的想法,以及來自外網(wǎng)的大拿的文章翻譯而來,原文鏈接在此Learning Linux for embedded systems,再次感謝,支持原創(chuàng)。 普通C開發(fā)人員和嵌入式C開發(fā)人員之間的 基本區(qū)別在于 ,因為嵌入式C程序被設

    2024年02月03日
    瀏覽(129)
  • 了解嵌入式系統(tǒng)的不同細分領域:探索嵌入式BSP的定義

    了解嵌入式系統(tǒng)的不同細分領域:探索嵌入式BSP的定義

    嵌入式BSP是指嵌入式系統(tǒng)中的板級支持軟件。它是針對特定硬件平臺的軟件包,提供了操作系統(tǒng)和硬件之間的抽象層,以便開發(fā)人員可以更方便地使用硬件功能和編寫應用程序。 嵌入式BSP的功能包括: 設備初始化和配置:BSP負責初始化硬件設備,并進行必要的配置,使操作

    2024年02月11日
    瀏覽(26)
  • 【計算機三級嵌入式】考試自學筆記(三)——嵌入式系統(tǒng)硬件組成、嵌入式處理芯片以及存儲器介紹

    【計算機三級嵌入式】考試自學筆記(三)——嵌入式系統(tǒng)硬件組成、嵌入式處理芯片以及存儲器介紹

    ??贾R點: 嵌入式最小硬件組成 嵌入式處理芯片 嵌入式系統(tǒng)的存儲器 I/O接口及常用I/O設備 ARM內(nèi)核典型嵌入式處理芯片 嵌入式系統(tǒng)外部通信接口 嵌入式最小硬件系統(tǒng)的組成如下: 嵌入式硬件系統(tǒng)≠嵌入式最小硬件系統(tǒng) 電源電路 :為整個嵌入式系統(tǒng)提供能量 時鐘電路 :

    2023年04月12日
    瀏覽(34)
  • 【小黑嵌入式系統(tǒng)第二課】嵌入式系統(tǒng)的概述(二)——外圍設備、處理器、ARM

    【小黑嵌入式系統(tǒng)第二課】嵌入式系統(tǒng)的概述(二)——外圍設備、處理器、ARM

    板級支持包(BSP) 是商用嵌入式操作系統(tǒng)實現(xiàn)可移植性所采用的一種方案,是硬件抽象層的一種實現(xiàn)。BSP是介于硬件和操作系統(tǒng)中驅動層程序之間的一層,有時也可認為屬于操作系統(tǒng)一部分。BSP實現(xiàn)了對操作系統(tǒng)的支持,為上層的驅動程序提供訪問硬件設備的函數(shù)包。 BSP隔離了

    2024年04月17日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包