電子產(chǎn)業(yè)一站式賦能平臺(tái)

PCB聯(lián)盟網(wǎng)

搜索
查看: 17|回復(fù): 0
收起左側(cè)

MCU固件升級(jí)Flash劃分方式

[復(fù)制鏈接]

317

主題

317

帖子

2668

積分

三級(jí)會(huì)員

Rank: 3Rank: 3

積分
2668
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 昨天 11:46 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
關(guān)注+星標(biāo)公眾號(hào),不錯(cuò)過精彩內(nèi)容

素材來源 | 網(wǎng)絡(luò)
之前給大家分享過《MCU批量生產(chǎn)下載程序的幾種常見方法》,今天再給大家分享一下通過OTA方式升級(jí)固件時(shí),幾種Flash(閃存)劃分方式。
獨(dú)立型
所謂獨(dú)立型就是專門劃出一部分閃存(Flash)空間用來存儲(chǔ)引導(dǎo)程序(BootLoader)。
如下圖:
  • BootLoader:引導(dǎo)程序
  • Firmware A:應(yīng)用程序
  • Firmware B:下載備份程序


    Firmware A區(qū)用來固定執(zhí)行應(yīng)用程序,當(dāng)引導(dǎo)程序(BootLoader)將接收到的新固件存入到Firmware B區(qū),并校驗(yàn)成功后,F(xiàn)irmware A區(qū)中的應(yīng)用程序?qū)⒈徊脸,然后Firmware B區(qū)的新固件將寫入到Firmware A區(qū)中。
    這種方式是比較常見的一種,因?yàn)樗蠪irmware B備份區(qū),即便Firmware A區(qū)應(yīng)用程序在更新(擦除)的時(shí)候突然斷電,也不會(huì)影響升級(jí),使其下載更加安全。
    嵌入型
    嵌入型就是將引導(dǎo)程序(BootLoader)嵌入到應(yīng)用程序中去。

    當(dāng)引導(dǎo)程序(BootLoader)將接收到的新固件存儲(chǔ)到Firmware B區(qū),在校驗(yàn)成功后,引導(dǎo)程序(BootLoader)將跳到Firmware B區(qū)去執(zhí)行應(yīng)用程序。
    外掛型
    外掛型就是外掛Flash或EEPROM用來存儲(chǔ)新固件。
    當(dāng)MCU內(nèi)置Flash較小時(shí),可以選擇外掛存儲(chǔ)芯片用來緩存新固件。引導(dǎo)程序(BootLoader)將新固件存儲(chǔ)到外掛存儲(chǔ)芯片中,當(dāng)校驗(yàn)成功后,F(xiàn)irmware A中的應(yīng)用程序?qū)⒈徊脸,并被寫入外掛存?chǔ)芯片中的新固件。


    那么問題來了,是不是我們可以隨意劃分MCU的Flash空間呢?當(dāng)然不是,由于MCU的內(nèi)置Flash是以塊(Block)或者頁(Page)為最小擦除單位,我們劃分MCU內(nèi)置Flash空間時(shí)必須考慮到實(shí)際MCU的塊(Block)或者頁(Page)的大小。
    以某單片機(jī)來舉例說明“獨(dú)立型”的Flash劃分方式。從以下規(guī)格書中的信息可知,這顆MCU的內(nèi)置Flash大小為128KB,最小的擦除頁(Page)為4KB,最小的擦除塊(Block)為32KB。

    根據(jù)以上信息,我們可以對(duì)這顆MCU的內(nèi)置Flash進(jìn)行如下劃分:

    以上只是對(duì)固件升級(jí)(OTA)中MCU的Flash空間劃分簡(jiǎn)單探討一下,實(shí)際哪種方式更適合,還需要用戶自己去評(píng)估。
    聲明:本文素材來源網(wǎng)絡(luò),版權(quán)歸原作者所有。如涉及作品版權(quán)問題,請(qǐng)與我聯(lián)系刪除。
    ------------ END ------------



    ●專欄《嵌入式工具
    ●專欄《嵌入式開發(fā)》
    ●專欄《Keil教程》
    ●嵌入式專欄精選教程

    關(guān)注公眾號(hào)回復(fù)“加群”按規(guī)則加入技術(shù)交流群,回復(fù)“1024”查看更多內(nèi)容。
    點(diǎn)擊“閱讀原文”查看更多分享。
  • 發(fā)表回復(fù)

    本版積分規(guī)則

    關(guān)閉

    站長(zhǎng)推薦上一條 /1 下一條


    聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表