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

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

3天內不再提示

MCU固件升級的閃存劃分方法分享

h1654155282.3538 ? 來源:動手玩科技 ? 作者:動手玩科技 ? 2020-11-10 16:28 ? 次閱讀

現在在MCU上實現固件升級(OTA)功能變得越來越普遍,今天我們就來探討一下MCU固件升級(OTA)的幾種閃存(Flash)劃分方式:

1、獨立型

所謂獨立型就是專門劃出一部分閃存(Flash)空間用來存儲引導程序(BootLoader)。

如下圖,FirmwareA區用來固定執行用戶程序。當引導程序(BootLoader)將接收到的新固件存入到FirmwareB區,并校驗成功后,FirmwareA區中的用戶程序將被擦除,然后FirmwareB區的新固件將寫入到FirmwareA區中。

2、嵌入型

嵌入型就是將引導程序(BootLoader)嵌入到用戶程序中去。

當引導程序(BootLoader)將接收到的新固件存儲到FirmwareB區,在校驗成功后,引導程序(BootLoader)將跳到FirmwareB區去執行用戶程序。

3、外掛型

外掛型就是外掛flash或EEPROM用來存儲新固件。

當MCU內置flash較小時,可以選擇外掛存儲芯片用來存儲新固件。引導程序(BootLoader)將新固件存儲到外掛存儲芯片中,當校驗成功后,FirmwareA中的用戶程序將被擦除,并被寫入外掛存儲芯片中的新固件。

是不是根據需要,我們可以隨意劃分MCU的Flash空間呢?

當然不是,由于MCU的內置flash是以塊(Block)或者頁(Page)為最小擦除單位,我們劃分MCU內置flash空間時必須考慮到實際MCU的塊(Block)或者頁(Page)的大小。

現在我們用東芝TXZ系列MCUTMPM3H6FWFG來舉例說明“獨立型”的flash劃分方式。從以下規格書中的信息可知,這顆MCU的內置Flash大小為128KB,最小的擦除頁(Page)為4KB,最小的擦除塊(Block)為32KB。

根據以上信息,我們可以對這顆MCU的內置Flash進行如下劃分:

以上只是對固件升級(OTA)中MCU的flash空間劃分簡單探討一下,實際哪種方式更適合,還需要用戶自己去評估。
責任編輯人 :CC

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

    關注

    146

    文章

    16142

    瀏覽量

    345100
  • 閃存
    +關注

    關注

    16

    文章

    1701

    瀏覽量

    114342
  • 固件升級
    +關注

    關注

    0

    文章

    34

    瀏覽量

    12042
收藏 人收藏

    評論

    相關推薦

    單片機通過USB升級固件方法

    單片機升級固件方法有很多中,比如:ISP(在系統編程)、ICP(在電路編程)、IAP(在應用編程)等。
    的頭像 發表于 01-11 09:37 ?920次閱讀
    單片機通過USB<b class='flag-5'>升級</b><b class='flag-5'>固件</b>的<b class='flag-5'>方法</b>

    魅族m6固件升級方法

    魅族m6固件升級方法 魅族m6固件升級方法介紹,
    發表于 04-25 19:08

    OTA固件升級教程

    設備端。支持一個產品同時有多個推送支持wifi/mcu升級支持定向升級??芍付ㄔO備mac地址、區域、舊固件版本進行推送。支持定時推送??勺远x推送周期及推送時段。OTA進度統計分析OT
    發表于 03-01 18:31

    怎么使用USB密鑰升級固件pic18fxx?

    我正在開發一個新的項目與A。我想知道是否有任何方法升級我的固件使用樣本USB閃存驅動器。將USB閃存插入到MU PIC連接的USB端口。當
    發表于 10-09 09:11

    如何使用NFC更新MCU固件?

    你好,我想使用 NFC 更新 MCU 固件。 我有一部 iphone,將創建一個應用程序或使用現有應用程序,以及使用 I2c 連接 stm32f411re 的 st25dv 動態標簽。 并希望在閃存
    發表于 12-27 07:36

    MPC5746C MCU固件升級程序嗎?

    我們正在使用 MPC5746C MCU。不知道有沒有量產的固件升級程序。 你能回答這個問題嗎?
    發表于 03-28 07:55

    NOR閃存提升OTA固件升級能力

    NOR閃存提升OTA固件升級能力
    的頭像 發表于 07-02 15:33 ?3001次閱讀

    Firefly關于RK3399升級固件方法

    本文介紹了如何將主機上的固件文件,通過Type-C數據線,燒錄到開發板的閃存中。升級時,需要根據主機操作系統和固件類型來選擇合適的升級方式。
    的頭像 發表于 11-25 09:52 ?5329次閱讀
    Firefly關于RK3399<b class='flag-5'>升級</b><b class='flag-5'>固件</b><b class='flag-5'>方法</b>

    fireflyFace-RK3399主板升級固件介紹

    本文介紹了如何將主機上的固件文件   1.通過USB數據線,燒錄到開發板的閃存中。升級時,需要根據主機操作系統和固件類型來選擇合適的升級
    的頭像 發表于 12-04 10:30 ?4124次閱讀

    固件升級失敗怎么辦

    路由器要適用更新的接入設備,必須要定期進行固件升級,而路由器在進行固件升級的時候,會擦除Flash閃存上面存儲的路由器
    的頭像 發表于 11-30 14:12 ?1.6w次閱讀

    MCU固件升級的幾種Flash劃分方式有哪些

    進一步下載APP程序。 今天就來說說通過OTA方式升級固件時,幾種Flash(閃存劃分方式。 獨立型 所謂獨立型就是專門劃出一部分閃存(F
    的頭像 發表于 10-08 18:20 ?4354次閱讀
    <b class='flag-5'>MCU</b><b class='flag-5'>固件</b><b class='flag-5'>升級</b>的幾種Flash<b class='flag-5'>劃分</b>方式有哪些

    物聯網設備的無線固件升級

      在為物聯網應用選擇組件時,研究芯片和開發工具支持的 OTA 固件升級方法非常重要。在評估具有內部閃存的設備時,基于內部存儲器的 OTA 升級
    的頭像 發表于 06-29 10:58 ?1584次閱讀
    物聯網設備的無線<b class='flag-5'>固件</b><b class='flag-5'>升級</b>

    適用于PIX或APM的本地升級固件方法

    適用于PIX或APM的本地升級固件方法,首先打開 http://firmware.diydrones.com/ 3DR 的固件服務器。 然后選擇適合自己的
    發表于 08-20 16:34 ?0次下載

    AT32 MCU如何使用OTA通過USART實現對固件的在線升級更新

    AT32 MCU如何使用OTA通過USART實現對固件的在線升級更新
    的頭像 發表于 10-26 17:09 ?1204次閱讀
    AT32 <b class='flag-5'>MCU</b>如何使用OTA通過USART實現對<b class='flag-5'>固件</b>的在線<b class='flag-5'>升級</b>更新

    AT32 MCU如何使用IAP通過USART實現對固件的在線升級更新

    AT32 MCU如何使用IAP通過USART實現對固件的在線升級更新
    的頭像 發表于 09-19 16:51 ?1380次閱讀
    AT32 <b class='flag-5'>MCU</b>如何使用IAP通過USART實現對<b class='flag-5'>固件</b>的在線<b class='flag-5'>升級</b>更新
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>