色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一種同時至此本地和遠程升級的方法

strongerHuang ? 來源:CSDN ? 作者:li_wen01 ? 2022-06-13 09:33 ? 次閱讀

嵌入式Linux設備要進行軟件升級有很種多方式方法,總的來說可以分為本地升級和遠程升級。

本地升級包括升級工具升級,存儲介質升級等,遠程升級是指通過網絡進行程序升級。

這里介紹一種同時至此本地和遠程升級的方法,以供參考。

本地升級

(1)升級工具升級

現在的升級工具有很多,不同的芯片支持不同的工具,比如jlink,串口等,海思的芯片提供Hitool升級工具。升級工具升級直接參考芯片手冊就可以了,這里不再介紹。

(2)存儲設備升級

常見的存儲設備有SD卡,TF卡,U盤,硬盤等。將升級文件拷貝到存儲設備中,設備啟動的時候,通過uboot去檢索存儲設備中是否有升級文件,如果有,則直接進行升級。

遠程升級:

(1)uboot通過FTP服務下載升級文件升級

其實該方法可以說是本地升級也可以說是網絡升級,uboot啟動之后,設置uboot的網絡參數和FTP服務,通過網絡將升級文件下載到內存中,然后再通過uboot的flash擦除了寫入指令,將升級文件直接寫入到flash的指定位置上。

這種方式用來進行設備調試就可以,方便快捷,但它不能批量操作,也不能程序自動升級,需要人為的輔助。

(2)通過應用程序網絡升級

該方法是嵌入式linux設備遠程升級的最常用的方式。基本流程是:linux系統啟動之后,通過應用程序從服務器中下載升級文件進行程序升級。該方法不需要認為操作,可設計程序自動全部升級。

本地和遠程同時升級

下面介紹一種可以同時至此本地升級和遠程升級的方法,首先看下圖:

1df604f2-eab2-11ec-ba43-dac502259ad0.jpg

Flash數據分布示意圖

假設有個64M的flash,間Flash分成uboot,kernel,roootfs,app,para 五個分區。然后我們在參數區para分區的開始一段空間用來存儲升級文件的版本信息

參數區的深藍色區域用來存儲軟件的版本信息,橙色區域用來存儲網絡升級參數。下面以kernel升級為例,具體說明本地升級與網絡升級的流程,其它模塊升級于此相同。

(1)制作升級文件

編譯器或是交叉編譯工具編譯生成的文件多數是二進制文件,也就是單純的一個升級文件,不包含其他信息。攜帶更多的升級信息,我們可以將二進制升級文件.bin 打包成img 文件。

在Linux系統中可以直接使用mkimage命令,該命令可以指定CPU類型,img類型,壓縮類型,內核的入口地址,頭結構的名字,image的載入地址等等信息。

(2)本地升級實現

將img文件拷貝到U盤中插入設備。uboot需要為升級做如下操作:uboot起來之后,去掃描是否有插入存儲設備,如果有存儲設備,則掃描存儲設備中是否有升級文件,以升級kernel為例,假設升級文件名為update_kernl.img。

當uboot檢測到update_kernel.img文件后,去解析該img文件的文件頭。將有用信息提取出來,比如文件頭里的時間,img的創建時間等。

以這些作為升級參數,與上面flash圖參數區中的Kernel Para版本做比較,如果一樣則不進行升級操作,如果不一樣,則將img文件中的升級文件數據寫入到flash的指定位置中去。

最后更新Flash參數區kernel的版本信息。也就是上面圖中參數區深藍色中的Kernel Para。到此就完成了本地升級的操作。

(3)遠程升級實現

首先將升級文件update_kernel.img從服務器中下載下來,與本地升級類似,提取update_kernel.img的頭文件信息與Kernel Para參數做比較,如果不一樣就升級。

一般升級地址是存在uboot的參數里,所以我們可以先將升級文件放到內存中(Hi3520芯片有一部分內存是用來做編解碼的,軟重啟內存的數據不會被清空),uboot重啟之后再進行升級操作。

在重啟之前,將升級文件存放的地址AddrPhy,升級文件的校驗信息DataCrc32,版本信息Version存放到flash的參數區去。

也就是上圖參數區的橙色位置。uboot重啟之后,去讀取上圖中flash參數區的橙色區域信息,看是否有需要升級的文件,如果有就按照升級參數的地址去讀取升級文件,然后再將升級文件寫到flash的固定位置去,最后更新參數區的升級信息。這樣就完成了遠程的升級操作。

上面介紹的升級方法,只介紹了基本的思路,詳細實現內容太多不再介紹。如有更好的方法,歡迎評論指導。

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5087

    文章

    19148

    瀏覽量

    306171
  • Linux
    +關注

    關注

    87

    文章

    11322

    瀏覽量

    209862

原文標題:嵌入式本地和遠程升級程序的方法

文章出處:【微信號:strongerHuang,微信公眾號:strongerHuang】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    PLC網關,plc遠程通信 ——?跨越距離遠程控制運維升級

    在日新月異的工業4.0時代,智能化、網絡化已成為制造業轉型升級的關鍵詞。其中,PLC(可編程邏輯控制器)作為工業自動化控制的核心設備,其遠程通信技術的突破,正引領著場前所未有的工業變革。今天
    的頭像 發表于 12-16 18:40 ?240次閱讀
    PLC網關,plc<b class='flag-5'>遠程</b>通信 ——?跨越距離<b class='flag-5'>遠程</b>控制運維<b class='flag-5'>升級</b>

    【OTA升級】無需數據線,條命令即可完成固件升級

    OTA無線升級過程視頻演示:OTA介紹OTA(Over-The-Air,空中升級)是一種通過無線通信技術實現遠程更新設備固件或軟件的方法。設
    的頭像 發表于 12-11 01:00 ?829次閱讀
    【OTA<b class='flag-5'>升級</b>】無需數據線,<b class='flag-5'>一</b>條命令即可完成固件<b class='flag-5'>升級</b>!

    一種創新的動態軌跡預測方法

    本文提出了一種動態軌跡預測方法,通過結合歷史幀和歷史預測結果來提高預測的穩定性和準確性。它引入了歷史預測注意力模塊,以編碼連續預測之間的動態關系,并通過三重因子注意力模塊實現了最先進的性能。本方法能夠生成準確且穩定的未來軌跡,這
    的頭像 發表于 10-28 14:34 ?459次閱讀
    <b class='flag-5'>一種</b>創新的動態軌跡預測<b class='flag-5'>方法</b>

    一種簡單高效配置FPGA的方法

    本文描述了一種簡單高效配置FPGA的方法,該方法利用微處理器從串行外圍接口(SPI)閃存配置FPGA設備。這種方法減少了硬件組件、板空間和成本。
    的頭像 發表于 10-24 14:57 ?688次閱讀
    <b class='flag-5'>一種</b>簡單高效配置FPGA的<b class='flag-5'>方法</b>

    一種利用wireshark對遠程服務器/路由器網絡抓包方法

    一種利用wireshark對遠程服務器/路由器網絡抓包方法
    的頭像 發表于 09-21 08:03 ?3239次閱讀
    <b class='flag-5'>一種</b>利用wireshark對<b class='flag-5'>遠程</b>服務器/路由器網絡抓包<b class='flag-5'>方法</b>

    變頻器如何切換遠程本地

    ,變頻器的控制方式通常分為遠程控制和本地控制兩遠程控制是指通過通信網絡實現對變頻器的遠程操作和監控,而
    的頭像 發表于 08-25 10:26 ?2176次閱讀

    Dubbo源碼淺析()—RPC框架與Dubbo

    時,就像調用本地過程樣方便。 1.2 RPC與Http的關系 用句話來總結就是: RPC是一種概念,http是一種協議,可以認
    的頭像 發表于 08-16 15:18 ?784次閱讀
    Dubbo源碼淺析(<b class='flag-5'>一</b>)—RPC框架與Dubbo

    TMP411-Q1遠程本地溫度傳感器數據表

    電子發燒友網站提供《TMP411-Q1遠程本地溫度傳感器數據表.pdf》資料免費下載
    發表于 08-15 10:15 ?0次下載
    TMP411-Q1<b class='flag-5'>遠程</b>和<b class='flag-5'>本地</b>溫度傳感器數據表

    一種無透鏡成像的新方法

    使用OAM-HHG EUV光束對高度周期性結構進行成像的EUV聚光顯微鏡 為了研究微電子或光子元件中的納米級圖案,一種基于無透鏡成像的新方法可以實現近乎完美的高分辨率顯微鏡。 層析成像是一種強大的無
    的頭像 發表于 07-19 06:20 ?408次閱讀
    <b class='flag-5'>一種</b>無透鏡成像的新<b class='flag-5'>方法</b>

    rup是一種什么模型

    RUP(Rational Unified Process,統建模語言)是一種軟件開發過程模型,它是一種迭代和增量的軟件開發方法。RUP是由Rational Software公司(現為
    的頭像 發表于 07-09 10:13 ?1324次閱讀

    如何用stm8s的IAP實現wifi遠程升級

    最近有個項目客戶提出需要遠程升級,系統中已有wifi模塊,本意想通過wifi模塊透傳(串口)給stm8s105或者207芯片升級,但是看資料說bootloader這邊牽扯到中斷向量共
    發表于 04-25 07:25

    通過RK3568開發板進行OTA本地程序升級

    說起OTA我們應該都不陌生,它是一種可以為設備無損失升級系統的方式,能將新功能遠程部署到產品上。我們不僅可以通過網絡下載OTA升級包,也可以通過下載OTA
    發表于 04-20 11:23

    技術帖 | RK3568開發板的OTA升級教程

    說起OTA我們應該都不陌生,它是一種可以為設備無損失升級系統的方式,能將新功能遠程部署到產品上。我們不僅可以通過網絡下載OTA升級包,也可以通過下載OTA
    的頭像 發表于 04-20 08:01 ?1687次閱讀
    技術帖 | RK3568開發板的OTA<b class='flag-5'>升級</b>教程

    一種簡單易行的可編程振蕩器構建方法

    本文介紹一種簡單易行的可編程振蕩器構建方法,其中振蕩頻率和幅度可以通過使用digiPOT來彼此獨立地調節。
    發表于 01-15 10:05 ?255次閱讀
    <b class='flag-5'>一種</b>簡單易行的可編程振蕩器構建<b class='flag-5'>方法</b>

    介紹一種使用2D材料進行3D集成的新方法

    美國賓夕法尼亞州立大學的研究人員展示了一種使用2D材料進行3D集成的新穎方法
    的頭像 發表于 01-13 11:37 ?1092次閱讀
    主站蜘蛛池模板: 在线亚洲色拍偷拍在线视频| 午夜国产一区在线观看| 欧美乱妇日本无乱码特黄大片| 神马影院午夜理论二| 7m凹凸国产刺激在线视频| 毛片无码免费无码播放| 天天夜夜草草久久亚洲香蕉| 91福利国产在线观看网站| 国产亚洲欧洲日韩在线三区| 国产精品毛片在线视频| 美女坐脸vk| 一起碰一起噜一起草视频| 国产精品成人免费| 国产 精品 亚洲 欧美 高清| 久久黄色小视频| 亚洲1卡二卡3卡4卡新区在线| 西施打开双腿下面好紧| qvod伦理片| 免费的好黄的漫画| 伊人成综合网伊人222| 含羞草在线| 亚洲AV怡红院影院怡春院| 国产极品美女视频福利| 色怕怕| 变态露出野外调教| 免费在线视频a| 999国产高清在线精品| 看电影就来5566先锋av| 一区三区不卡高清影视| 激情内射亚洲一区二区三区| 午夜aaaa| 国产人妻人伦精品熟女麻豆| 天美传媒色情原创精品| 国产成人在线视频网站| 无码专区aaaaaa免费视频| 国产精品久免费的黄网站| 丝袜美女被艹| 被强J高H纯肉公交车啊| 鲁大师影院在线视频在线观看| 用快播看av的网站| 好男人免费观看在线高清WWW|