現(xiàn)在在MCU上實(shí)現(xiàn)固件升級(jí)(OTA)功能變得越來(lái)越普遍,今天我們就來(lái)探討一下MCU固件升級(jí)(OTA)的幾種閃存(Flash)劃分方式:
1、獨(dú)立型
所謂獨(dú)立型就是專門(mén)劃出一部分閃存(Flash)空間用來(lái)存儲(chǔ)引導(dǎo)程序(BootLoader)。
如下圖,F(xiàn)irmwareA區(qū)用來(lái)固定執(zhí)行用戶程序。當(dāng)引導(dǎo)程序(BootLoader)將接收到的新固件存入到FirmwareB區(qū),并校驗(yàn)成功后,F(xiàn)irmwareA區(qū)中的用戶程序?qū)⒈徊脸缓驠irmwareB區(qū)的新固件將寫(xiě)入到FirmwareA區(qū)中。
2、嵌入型
嵌入型就是將引導(dǎo)程序(BootLoader)嵌入到用戶程序中去。
當(dāng)引導(dǎo)程序(BootLoader)將接收到的新固件存儲(chǔ)到FirmwareB區(qū),在校驗(yàn)成功后,引導(dǎo)程序(BootLoader)將跳到FirmwareB區(qū)去執(zhí)行用戶程序。
3、外掛型
外掛型就是外掛flash或EEPROM用來(lái)存儲(chǔ)新固件。
當(dāng)MCU內(nèi)置flash較小時(shí),可以選擇外掛存儲(chǔ)芯片用來(lái)存儲(chǔ)新固件。引導(dǎo)程序(BootLoader)將新固件存儲(chǔ)到外掛存儲(chǔ)芯片中,當(dāng)校驗(yàn)成功后,F(xiàn)irmwareA中的用戶程序?qū)⒈徊脸?,并被?xiě)入外掛存儲(chǔ)芯片中的新固件。
是不是根據(jù)需要,我們可以隨意劃分MCU的Flash空間呢?
當(dāng)然不是,由于MCU的內(nèi)置flash是以塊(Block)或者頁(yè)(Page)為最小擦除單位,我們劃分MCU內(nèi)置flash空間時(shí)必須考慮到實(shí)際MCU的塊(Block)或者頁(yè)(Page)的大小。
現(xiàn)在我們用東芝TXZ系列MCUTMPM3H6FWFG來(lái)舉例說(shuō)明“獨(dú)立型”的flash劃分方式。從以下規(guī)格書(shū)中的信息可知,這顆MCU的內(nèi)置Flash大小為128KB,最小的擦除頁(yè)(Page)為4KB,最小的擦除塊(Block)為32KB。
根據(jù)以上信息,我們可以對(duì)這顆MCU的內(nèi)置Flash進(jìn)行如下劃分:
以上只是對(duì)固件升級(jí)(OTA)中MCU的flash空間劃分簡(jiǎn)單探討一下,實(shí)際哪種方式更適合,還需要用戶自己去評(píng)估。
責(zé)任編輯人 :CC
-
mcu
+關(guān)注
關(guān)注
146文章
17347瀏覽量
352727 -
閃存
+關(guān)注
關(guān)注
16文章
1804瀏覽量
115126 -
固件升級(jí)
+關(guān)注
關(guān)注
0文章
34瀏覽量
12156
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
OTA固件升級(jí)教程
如何使用NFC更新MCU固件?
MPC5746C MCU有固件升級(jí)程序嗎?
基于USB接口的固件升級(jí)程序
Firefly關(guān)于RK3399升級(jí)固件方法
![Firefly關(guān)于RK3399<b class='flag-5'>升級(jí)</b><b class='flag-5'>固件</b><b class='flag-5'>方法</b>](https://file.elecfans.com/web1/M00/AE/C5/pIYBAF3bNDKAXmkoAAFffIExTyk777.png)
fireflyFace-RK3399主板升級(jí)固件介紹
MCU固件升級(jí)的幾種Flash劃分方式有哪些
![<b class='flag-5'>MCU</b><b class='flag-5'>固件</b><b class='flag-5'>升級(jí)</b>的幾種Flash<b class='flag-5'>劃分</b>方式有哪些](https://file.elecfans.com/web2/M00/17/11/pYYBAGFgHKWAdznsAAA-FHpIr08010.png)
物聯(lián)網(wǎng)設(shè)備的無(wú)線固件升級(jí)
![物聯(lián)網(wǎng)設(shè)備的無(wú)線<b class='flag-5'>固件</b><b class='flag-5'>升級(jí)</b>](https://file.elecfans.com/web2/M00/4E/96/pYYBAGK7wAOAHy6vAAA-NLWqZm0312.png)
適用于PIX或APM的本地升級(jí)固件方法
AT32 MCU如何使用OTA通過(guò)USART實(shí)現(xiàn)對(duì)固件的在線升級(jí)更新
![AT32 <b class='flag-5'>MCU</b>如何使用OTA通過(guò)USART實(shí)現(xiàn)對(duì)<b class='flag-5'>固件</b>的在線<b class='flag-5'>升級(jí)</b>更新](https://file1.elecfans.com/web2/M00/A4/A1/wKgaomUD6wmAaqAIAAFJmTHMFzA537.jpg)
AT32 MCU如何使用IAP通過(guò)USART實(shí)現(xiàn)對(duì)固件的在線升級(jí)更新
![AT32 <b class='flag-5'>MCU</b>如何使用IAP通過(guò)USART實(shí)現(xiàn)對(duì)<b class='flag-5'>固件</b>的在線<b class='flag-5'>升級(jí)</b>更新](https://file1.elecfans.com/web2/M00/A3/34/wKgZomUD6nKANoIKAAJNjPhBAIw039.png)
淺談MCU固件幾種Flash(閃存)劃分方式
![淺談<b class='flag-5'>MCU</b><b class='flag-5'>固件</b>幾種Flash(<b class='flag-5'>閃存</b>)<b class='flag-5'>劃分</b>方式](https://file1.elecfans.com/web2/M00/CA/C9/wKgZomYfQ2SASAvBAAAu2LTmF1o905.png)
評(píng)論