一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

物聯(lián)網(wǎng)中常用的ota升級方案

嵌入式IoT ? 來源:嵌入式IoT ? 作者:嵌入式IoT ? 2021-03-09 09:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

物聯(lián)網(wǎng)中常用的ota升級方案

說明

在進(jìn)行物聯(lián)網(wǎng)開發(fā)的過程中,免不了進(jìn)行ota升級,那么如何做好ota升級又是非常值得思考的問題。

下面從實際應(yīng)用案例中,剖析一下ota升級的方案。

方案1

最簡單的OTA升級,flash布局如下:

其升級的方案是,每個APP的尾部都會記錄如下的相關(guān)信息,可以作為跳轉(zhuǎn)的標(biāo)志。

所以可以這樣理解,APP0作為運行分區(qū),APP1作為升級分區(qū),當(dāng)升級分區(qū)的標(biāo)志置位時,將升級分區(qū)的代碼放到運行分區(qū)中執(zhí)行。

每次都只會跳轉(zhuǎn)到APP0去執(zhí)行代碼。

優(yōu)點:

該方案設(shè)計比較簡單,資源占用小。

缺點:

如果升級的過程中出現(xiàn)錯誤,而校驗又沒有檢測到,則會導(dǎo)致程序起不來。需要加強校驗機(jī)制,也需要確保下載代碼完全的準(zhǔn)確性。

也可能在升級之后,出現(xiàn)聯(lián)網(wǎng)模塊不能使用,導(dǎo)致需要去現(xiàn)場解決,這種問題發(fā)生后非常嚴(yán)重。

方案2

方案1會存在可能起不來的風(fēng)險,這時需要去現(xiàn)場進(jìn)行程序燒錄,成本很大。所以第二種是差分升級。

當(dāng)APP0運行時,將升級的程序放到APP1中,下次BOOT跳轉(zhuǎn)從APP1地址去運行程序。

當(dāng)APP1運行時,將升級的程序放到APP0中,下次BOOT跳轉(zhuǎn)從APP0地址去運行程序。

這樣可以解決一個問題,當(dāng)模塊升級后連接不了網(wǎng)絡(luò)的問題。如果連接網(wǎng)絡(luò)失敗,可以將失敗的原因放到備份SRAM中,多次連接不上,BOOT檢測到這個現(xiàn)象,可以跳轉(zhuǎn)到另外一個可以運行的程序進(jìn)行降級運行。因為兩個可以運行的程序沒有被破壞。

但是這個問題解決不了由于程序傳輸錯誤導(dǎo)致的程序啟動不了的問題。

方案3

我曾經(jīng)也在實際項目中用到過另外OTA方案,如下設(shè)計:

該設(shè)計的核心在于BOOT中集成聯(lián)網(wǎng)模塊功能,當(dāng)BOOT下載時,首先會置位相關(guān)的標(biāo)志位。

其設(shè)計上采用BOOT主要用于下載功能,當(dāng)程序運行APP時,需要升級時,會首先將config的標(biāo)志位置位,然后跳轉(zhuǎn)到BOOT中進(jìn)行升級,將代碼永遠(yuǎn)放到APP_BAK中,升級完成后,可以校驗通過后,將APP_BAK的代碼拷貝到APP中,然后再運行APP區(qū)代碼。

最后一切功能沒問題后,再將config設(shè)置成正常狀態(tài),否則每次boot啟動后都會進(jìn)行OTA請求。

優(yōu)點:

程序功能可靠有保障,減少可能起不來的風(fēng)險

缺點:

由于BOOT中集成了比較多的功能,比較復(fù)雜,當(dāng)替換聯(lián)網(wǎng)模塊時,BOOT和APP的代碼需要同步修改。

方案4

rt-thread官網(wǎng)上有一種OTA的方案,具體實現(xiàn)如下:

分區(qū)名 起始地址 分區(qū)大小 分區(qū)位置 介紹
app 自定義 自定義 片內(nèi) Flash 存儲 app 固件
download 自定義 自定義 片內(nèi) Flash 或者片外 SPI Flash 存儲待升級固件
factory 自定義 自定義 片內(nèi) Flash 或者片外 SPI Flash 存儲出廠固件
boot -- -- -- boot固件

流程圖如下:

解釋一下factory分區(qū)的實際應(yīng)用場景。

由于差分升級或者普通的BOOT升級方案都會存在系統(tǒng)啟動不了的可能性,所以增加了一個一定可以啟動的固件。具體的使用是需要boot中檢測一個硬件IO,當(dāng)該IO被長時間按下后,會進(jìn)入出廠程序設(shè)置。這樣減少了設(shè)備出問題后,技術(shù)人員需要現(xiàn)場升級的煩惱,即使不懂技術(shù)的人也能夠按下按鍵進(jìn)行復(fù)位。

優(yōu)點:

消除設(shè)備啟動不了的問題,減少程序下載失敗的風(fēng)險

缺點:

資源消耗太大,三個固件起碼需要外掛SPI flash才能設(shè)計的比較好,完全利用內(nèi)部flash,資源有點緊張。

責(zé)任編輯:lq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • sram
    +關(guān)注

    關(guān)注

    6

    文章

    785

    瀏覽量

    115956
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2931

    文章

    46243

    瀏覽量

    392402
  • OTA
    OTA
    +關(guān)注

    關(guān)注

    7

    文章

    612

    瀏覽量

    36575

原文標(biāo)題:物聯(lián)網(wǎng)中常用的ota升級方案

文章出處:【微信號:Embeded_IoT,微信公眾號:嵌入式IoT】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    東風(fēng)日產(chǎn)N7開啟首次OTA升級

    近日,東風(fēng)日產(chǎn)舉辦“NI好 N7首次OTA升級發(fā)布會”,并宣布OTA升級即日開啟推送。
    的頭像 發(fā)表于 07-05 13:57 ?420次閱讀

    瑞薩電子MCU無感OTA升級功能介紹

    在工業(yè)控制、電機(jī)驅(qū)動乃至聯(lián)網(wǎng)邊緣節(jié)點中,固件在線升級OTA)已成為產(chǎn)品生命周期管理的標(biāo)配。然而傳統(tǒng)OTA往往伴隨停機(jī)、風(fēng)險與低效。瑞薩電
    的頭像 發(fā)表于 05-15 14:36 ?708次閱讀
    瑞薩電子MCU無感<b class='flag-5'>OTA</b><b class='flag-5'>升級</b>功能介紹

    一文解鎖OTA遠(yuǎn)程升級方案!基于RK3562全國產(chǎn)平臺

    通過網(wǎng)絡(luò)下載固件進(jìn)行升級,也支持下載固件到SD卡或U盤進(jìn)行升級。 而且,升級固件可按需定制,既能讓設(shè)備系統(tǒng)全面革新,也能升級1個或多個功能模塊。憑借遠(yuǎn)程、靈活、便捷的特性,
    的頭像 發(fā)表于 04-07 10:15 ?407次閱讀
    一文解鎖<b class='flag-5'>OTA</b>遠(yuǎn)程<b class='flag-5'>升級</b><b class='flag-5'>方案</b>!基于RK3562全國產(chǎn)平臺

    基于Nordic nRF52840無線鍵盤、鼠標(biāo)聯(lián)網(wǎng)解決方案

    方案通過BLE藍(lán)牙模塊和聯(lián)網(wǎng)技術(shù),將傳統(tǒng)的有線鍵盤鼠標(biāo)升級為無線設(shè)備,為用戶帶來更大的自由度和便利性。該方案使用低功耗藍(lán)牙技術(shù)進(jìn)行連接,可
    發(fā)表于 03-25 17:44

    為什么選擇蜂窩聯(lián)網(wǎng)

    的基礎(chǔ)設(shè)施。 數(shù)據(jù)傳輸速率和穩(wěn)健性: 由于 LPWAN 技術(shù)通常用于不頻繁發(fā)送/接收數(shù)據(jù)的設(shè)備,因此許多技術(shù)都針對這種使用情況進(jìn)行了優(yōu)化。然而,某些操作(如遠(yuǎn)程固件更新)需要更高的數(shù)據(jù)傳輸速率。這正是蜂窩聯(lián)網(wǎng)的優(yōu)勢所在,因為它
    發(fā)表于 03-17 11:42

    淺談車規(guī)MCU (MGEQ1C064) OTA升級

    本帖最后由 noctor 于 2025-3-4 16:17 編輯 淺談車規(guī)MCU (MGEQ1C064) OTA升級 OTA升級為汽車打造新價值
    發(fā)表于 03-04 12:52

    OTA軟件升級管理系統(tǒng)

    OTA(Over-the-Air Technology,空中下載技術(shù))是通過空中下載的方式對車輛中的軟件進(jìn)行遠(yuǎn)程升級。經(jīng)緯恒潤OTA軟件升級管理系統(tǒng)基于軟件架構(gòu)、應(yīng)用架構(gòu)、業(yè)務(wù)架構(gòu)和技
    的頭像 發(fā)表于 01-13 09:39 ?751次閱讀
    <b class='flag-5'>OTA</b>軟件<b class='flag-5'>升級</b>管理系統(tǒng)

    聯(lián)網(wǎng)就業(yè)有哪些高薪崗位?

    聯(lián)網(wǎng)就業(yè)有哪些高薪崗位? 聯(lián)網(wǎng)行業(yè)迎來了全面爆發(fā)式的發(fā)展,眾多高薪崗位吸引著人們的目光。聯(lián)網(wǎng)
    發(fā)表于 01-10 16:47

    【正點原子STM32H7R3開發(fā)套件試用體驗】4G聯(lián)網(wǎng)工業(yè)設(shè)備控制網(wǎng)關(guān)

    資料,了解STM32H7R3開發(fā)套件的功能。 2. 接入Air780E,實現(xiàn)開發(fā)板通過4G聯(lián)網(wǎng) 3. 對接FastBee聯(lián)網(wǎng)平臺,實現(xiàn)數(shù)據(jù)上報和命令下發(fā) 4. 移植OTA功能,實現(xiàn)在
    發(fā)表于 12-18 14:14

    OTA升級】無需數(shù)據(jù)線,一條命令即可完成固件升級!

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

    聯(lián)網(wǎng)系統(tǒng)中常用的低功耗自組網(wǎng)無線傳輸方案(三)_藍(lán)牙芯片篇

    01 聯(lián)網(wǎng)系統(tǒng)中為什么要使用藍(lán)牙芯片 聯(lián)網(wǎng)系統(tǒng)中使用藍(lán)牙芯片的原因主要基于藍(lán)牙芯片在連接性能、數(shù)據(jù)傳輸、功耗、安全性以及應(yīng)用靈活性等方面的優(yōu)勢。以下是詳細(xì)分析: 低功耗性能 藍(lán)牙芯
    的頭像 發(fā)表于 09-29 17:11 ?1348次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>系統(tǒng)<b class='flag-5'>中常用</b>的低功耗自組網(wǎng)無線傳輸<b class='flag-5'>方案</b>(三)_藍(lán)牙芯片篇

    聯(lián)網(wǎng)系統(tǒng)中常用的低功耗自組網(wǎng)無線傳輸方案(二)_藍(lán)牙模塊篇

    聯(lián)網(wǎng)系統(tǒng)中為什么要使用BLE藍(lán)牙模塊 聯(lián)網(wǎng)系統(tǒng)中使用BLE藍(lán)牙模塊的原因主要有以下幾點: 低功耗特性 延長設(shè)備續(xù)航:BLE(Bluetooth Low Energy)藍(lán)牙模塊的主要
    的頭像 發(fā)表于 09-27 16:51 ?1465次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>系統(tǒng)<b class='flag-5'>中常用</b>的低功耗自組網(wǎng)無線傳輸<b class='flag-5'>方案</b>(二)_藍(lán)牙模塊篇

    聯(lián)網(wǎng)中的Fota是什么,如何使用HTTP來給設(shè)備升級

    一 概述 FOTA(Firmware Over-The-Air)移動終端的空中下載軟件升級,指通過云端升級技術(shù),為具有連網(wǎng)功能的設(shè)備提供固件升級服務(wù)。在
    的頭像 發(fā)表于 09-25 14:35 ?1620次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>中的Fota是什么,如何使用HTTP來給設(shè)備<b class='flag-5'>升級</b>

    【全新課程資料】正點原子《ESP32聯(lián)網(wǎng)項目實戰(zhàn)》培訓(xùn)課程資料上線!

    ,涵蓋了環(huán)境搭建、編程軟件使用、模塊基礎(chǔ)驅(qū)動、聯(lián)網(wǎng)基礎(chǔ)知識和多個實戰(zhàn)項目等等。在聯(lián)網(wǎng)項目的選擇上,我們深思熟慮,選擇了生活和生產(chǎn)中常用
    發(fā)表于 09-24 17:05

    OTA升級后重啟,printf日志錯誤的原因?

    OTA升級后重啟,printf日志錯誤。
    發(fā)表于 07-18 06:26