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

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

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

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

MCU雙鏡像機(jī)制的工作原理和應(yīng)用實(shí)例

痞子衡嵌入式 ? 來(lái)源:痞子衡嵌入式 ? 2023-08-01 18:10 ? 次閱讀

一. 背 景

嵌入式設(shè)備升級(jí)過(guò)程中會(huì)由于斷電、強(qiáng)行中斷等外部因素,導(dǎo)致新固件寫(xiě)入Flash時(shí)不能完整寫(xiě)入,使系統(tǒng)啟動(dòng)時(shí)出現(xiàn)問(wèn)題。或設(shè)備運(yùn)行中,鏡像文件被意外損壞,導(dǎo)致系統(tǒng)癱瘓,設(shè)備無(wú)法運(yùn)行。面對(duì)以上問(wèn)題,可以使用雙鏡像機(jī)制(dual image),它保證至少有一個(gè)鏡像文件是可以啟動(dòng),并且在任何時(shí)候都能正常工作。如果發(fā)生意外,引導(dǎo)加載程序檢測(cè)并使用備用的鏡像文件。

二. 原 理

LPC5536 ROM支持內(nèi)部Flash的雙鏡像引導(dǎo)(也支持FlexSPI外部Flash,原理相同),即在Flash可以放置兩個(gè)引導(dǎo)鏡像,ROM根據(jù)鏡像文件版本號(hào)決定啟動(dòng)哪個(gè)鏡像,首先啟動(dòng)最新版本號(hào)的鏡像,如果失敗,則啟動(dòng)舊鏡像文件。

通電啟動(dòng)時(shí),ROM首先檢測(cè)CMPA中關(guān)于重定位鏡像文件的位置和大小,然后檢測(cè)兩個(gè)鏡像的版本號(hào),所以在使用雙鏡像機(jī)制時(shí),主要對(duì)鏡像文件重定位和版本號(hào)進(jìn)行配置。

ROM從內(nèi)部Flash啟動(dòng)雙鏡像文件流程圖如下:

wKgaomTI2jSACjStAAJ2gajFZJE385.png

2.1 鏡像文件重定位

LPC5536內(nèi)部Flash支持重映射,當(dāng)設(shè)置重映射偏移量后,F(xiàn)lash AHB 總線(xiàn)將訪(fǎng)問(wèn)偏移后的地址。例如,當(dāng)偏移量設(shè)置為128K(0x20000),對(duì)0x0的訪(fǎng)問(wèn)將被重新映射到地址0x20000。通過(guò)這個(gè)特性,ROM可以實(shí)現(xiàn)雙鏡像引導(dǎo)。下面是一個(gè)關(guān)于內(nèi)部Flash存放兩個(gè)鏡像文件的簡(jiǎn)圖。

28c24a8e-3053-11ee-9e74-dac502259ad0.png

第二個(gè)鏡像的偏移量和重映射大小由用戶(hù)在CMPA區(qū)域設(shè)置,讓ROM知道第二個(gè)鏡像的位置。

wKgaomTI2jSAIM-JAAFWnr8VDEc123.png

2.2 配置鏡像的版本

在頭文件偏移量為0x24處設(shè)置鏡像版本號(hào),如下表格所示,第16位-31位設(shè)置鏡像文件版本號(hào),第10位表示鏡像文件是否存在版本號(hào),使用雙鏡像機(jī)制時(shí),此位設(shè)置為1.

wKgZomTI2jSAeW_ZAAE5SHR-9cs524.png

三. 應(yīng) 用

3.1 配置CMPA

配置CMPA中數(shù)據(jù)值

修改cmpa.bin文件,通過(guò)blhost把修改后的bin文件寫(xiě)入CMPA,以配置image1偏移量和重映射大小,流程如下:

a. 打開(kāi)一個(gè)全0的cmpa.bin,修改0x3E23C處數(shù)據(jù)為0x20000,高位在右低位在左,如下:

wKgZomTI2jSAd0ENAAO4xpvSOVU050.png

b. 修改重映射大小。地址0x3E238處修改為0x1d800,如下:

wKgaomTI2jSAC23pAAIJ7FAFwwA110.png

c. 保存并重命名為cmpa_new.bin,另存為lhost_2.6.7lhost_2.6.7inwin

3.2 燒寫(xiě)cmpa_new.bin

借助blhsot 工具燒寫(xiě),blhost 2.6.7是一個(gè)命令行調(diào)試工具,界面如下:

wKgZomTI2jSAHkj0AADJ1O0WiyM606.png

測(cè)試blhost與開(kāi)發(fā)板通信是否正常:

首先,從設(shè)備管理器查看開(kāi)發(fā)板與電腦連接端口號(hào)

wKgZomTI2jWASb6XAABq-XlPv5g049.png

其次,開(kāi)發(fā)板J43上使用跳線(xiàn)帽連接3和4,使能ISP啟動(dòng);

然后,按下復(fù)位鍵,輸入連接測(cè)試命令blhost -pcom12 -- get-property 1

判斷是否正常通信,如連接成功會(huì)提示信息

wKgaomTI2jWAeJlyAACQF1QF3Ek143.png

寫(xiě)入修改好的bin文件數(shù)據(jù)到CMPA

通過(guò)使用blhost -pcom12 -- write-memory 0x3e200 cmpa_new.bin命令,寫(xiě)入CMPA:

wKgZomTI2jWAVY0iAACuqe8WSA8262.png

為確保正確寫(xiě)入,查看設(shè)置之后CMPA數(shù)據(jù)

通過(guò)命令blhost -pcom12 -- read-memory 0x3e200 512查看設(shè)置后的CMPA數(shù)據(jù):

wKgaomTI2jWACjJBAAQwrYBSe1g263.png

3.2 雙鏡像版本設(shè)置

根據(jù)實(shí)驗(yàn)效果,Image0的功能是LPC5536-evk開(kāi)發(fā)板上紅燈閃爍,Image1功能是綠燈閃爍。

Image0 設(shè)置版本號(hào)為1,Image1 設(shè)置版本號(hào)為2:

打開(kāi)紅燈閃爍的工程,修改頭文件偏移量0x24處為0x10400

wKgZomTI2jWAcGe3AAKuJw0K8-o310.png

打開(kāi)綠燈閃爍的工程,修改頭文件偏移量0x24處為0x20400

wKgaomTI2jWAQp6jAAJ4pmKg528123.png

3.3 分配Flash

LPC5536JBD100用戶(hù)可用的內(nèi)部Flash共246K,所以Image0 分配到0x0-0x1FFFF地址范圍內(nèi),Image1分配到0x20000-0x3D7FF地址范圍內(nèi)。如果使用MCUXpresso ID,設(shè)置如下:

工程->右鍵屬性->MCU settings,設(shè)置起始地址和大小,完成后點(diǎn)擊應(yīng)用按鈕。

紅燈閃爍工程:

wKgaomTI2jWAADqqAALYQNSCmVc081.png

綠燈閃爍工程:

wKgZomTI2jWAePlaAAGmbiOrveA742.png

重現(xiàn)編譯工程。

3.4 功能測(cè)試

測(cè)試程序?yàn)閮蓚€(gè)點(diǎn)燈程序,分別為紅燈閃爍和綠燈閃爍程序,紅燈閃爍為image0,版本號(hào)1,綠燈閃爍為image0,版本號(hào)2,所以測(cè)試結(jié)果如果綠燈閃爍,則成功。

下載程序

使用IDE中GUI Flash Tool,分別下載兩個(gè)鏡像文件到開(kāi)發(fā)板中:

wKgZomTI2jWAbzeSAAEaNRYodVo087.png

在“File to program”中選擇燒寫(xiě)的文件,點(diǎn)擊run按鈕后,程序會(huì)下載到Flash:

wKgaomTI2jWALKTyAAFn0b4IfHQ586.png

下載完成后,點(diǎn)擊確定:

wKgZomTI2jWAMoz_AAE22dWkppY441.png

同樣的方式下載另外一個(gè)程序,注意在燒寫(xiě)第二個(gè)程序時(shí),不能勾選“masserase”,如果使用其它工具燒寫(xiě),也應(yīng)關(guān)閉和”masserase”相同功能的選項(xiàng),避免擦除第一個(gè)鏡像文件。

測(cè)試結(jié)果

下載程序后,復(fù)位,綠燈閃爍。

升級(jí)測(cè)試:將紅燈閃爍工程版本號(hào)修改為3,即修改0x10400為0x30400,重新燒寫(xiě)鏡像文件,應(yīng)該會(huì)看到紅燈閃爍。

四. 總結(jié)

雙鏡像機(jī)制為嵌入式設(shè)備的升級(jí)和啟動(dòng)增加保險(xiǎn),應(yīng)用過(guò)程中需要注意在CMPA區(qū)域設(shè)置鏡像偏移量、重映射大小和配置鏡像版本的方式,同時(shí)也需要注意兩個(gè)工程中Flash配置。

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

    關(guān)注

    146

    文章

    17123

    瀏覽量

    350991
  • 嵌入式
    +關(guān)注

    關(guān)注

    5082

    文章

    19104

    瀏覽量

    304811
  • FlaSh
    +關(guān)注

    關(guān)注

    10

    文章

    1633

    瀏覽量

    147940
  • ROM
    ROM
    +關(guān)注

    關(guān)注

    4

    文章

    563

    瀏覽量

    85732
  • 嵌入式設(shè)備
    +關(guān)注

    關(guān)注

    0

    文章

    110

    瀏覽量

    16955

原文標(biāo)題:MCU雙鏡像機(jī)制如何使能?

文章出處:【微信號(hào):pzh_mcu,微信公眾號(hào):痞子衡嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    極型晶體管工作原理

    極型晶體管工作原理
    發(fā)表于 08-20 08:53

    紅綠色點(diǎn)陣工作原理,程序

    紅綠色點(diǎn)陣工作原理,程序。
    發(fā)表于 07-28 17:50

    AD834的工作原理是什么? AD834的應(yīng)用實(shí)例有哪些?

    AD834的主要特性有哪些?AD834的工作原理是什么?AD834的應(yīng)用實(shí)例有哪些?
    發(fā)表于 04-21 07:19

    蹤示波器的工作原理是什么?怎樣對(duì)它進(jìn)行日常維護(hù)?

    蹤示波器的工作原理是什么?蹤示波器是由哪幾部分組成的?怎樣對(duì)蹤示波器進(jìn)行日常維護(hù)?
    發(fā)表于 05-10 06:34

    機(jī)器視覺(jué)系統(tǒng)的工作原理是什么?有哪些應(yīng)用實(shí)例

    機(jī)器視覺(jué)系統(tǒng)的工作原理是什么?機(jī)器視覺(jué)系統(tǒng)的特點(diǎn)有哪些?機(jī)器視覺(jué)系統(tǒng)的結(jié)構(gòu)是由哪些部分組成的?機(jī)器視覺(jué)系統(tǒng)有哪些應(yīng)用實(shí)例
    發(fā)表于 07-16 08:06

    閉環(huán)直流調(diào)速系統(tǒng)的工作原理是什么

    閉環(huán)直流調(diào)速系統(tǒng)的工作原理是什么?閉環(huán)直流調(diào)速系統(tǒng)是由哪些部分組成的?閉環(huán)直流調(diào)速系統(tǒng)兩個(gè)調(diào)節(jié)器有何作用?
    發(fā)表于 09-27 08:50

    dde與opc技術(shù)的工作機(jī)制

    本內(nèi)容介紹了dde與opc技術(shù)的工作機(jī)制,詳細(xì)分析了DDE技術(shù)的工作原理機(jī)制,及OPC技術(shù)的知識(shí)
    發(fā)表于 02-02 15:30 ?2646次閱讀
    dde與opc技術(shù)的<b class='flag-5'>工作</b><b class='flag-5'>機(jī)制</b>

    51MCU中斷和定時(shí)計(jì)數(shù)系統(tǒng)的工作原理

    本資料是關(guān)于51MCU中斷和定時(shí)計(jì)數(shù)系統(tǒng)的工作原理的介紹,希望對(duì)大家有所幫助~~
    發(fā)表于 07-30 15:53 ?47次下載

    固態(tài)繼電器工作原理和應(yīng)用實(shí)例

    固態(tài)繼電器工作原理和應(yīng)用實(shí)例,快來(lái)學(xué)習(xí)下載吧
    發(fā)表于 01-12 18:31 ?0次下載

    核處理器的工作原理

    核處理器,又叫做核CPU,全稱(chēng)為DUAL CORE PROCESSOR,是由 兩個(gè)運(yùn)算中心 集成 在同一個(gè)處理器上。這篇文章主要為大家簡(jiǎn)單地介紹什么是核CPU,以及核CPU的
    發(fā)表于 06-01 09:35 ?2700次閱讀

    Doherty功放工作原理和設(shè)計(jì)實(shí)例

    Doherty 功放工作原理和設(shè)計(jì)實(shí)例
    發(fā)表于 02-09 17:09 ?3次下載

    控開(kāi)關(guān)的工作原理介紹

    現(xiàn)在市場(chǎng)上面所出售的開(kāi)關(guān)種類(lèi)非常的多,控開(kāi)關(guān)正好能夠滿(mǎn)足人們的需求,特別是人們的喜愛(ài),但是對(duì)于控開(kāi)關(guān)在進(jìn)行購(gòu)買(mǎi)的時(shí)候,人們除了關(guān)心品牌質(zhì)量的問(wèn)題,就更加的注重價(jià)格了,控開(kāi)關(guān)多少錢(qián),為了能夠更好的了解生活開(kāi)關(guān),下面也特地為您
    的頭像 發(fā)表于 05-18 09:03 ?3029次閱讀
    <b class='flag-5'>雙</b>控開(kāi)關(guān)的<b class='flag-5'>工作原理</b>介紹

    LPC5536: 鏡像機(jī)制使用指南

    問(wèn)題,可以使用鏡像機(jī)制(dual image),它保證至少有一個(gè)鏡像文件是可以啟動(dòng),并且在任何時(shí)候都能正常工作。如果發(fā)生意外,引導(dǎo)加載程序
    的頭像 發(fā)表于 07-06 08:50 ?827次閱讀
    LPC5536: <b class='flag-5'>雙</b><b class='flag-5'>鏡像</b><b class='flag-5'>機(jī)制</b>使用指南

    STM32 MCU工作原理、基本結(jié)構(gòu)及優(yōu)缺點(diǎn)

    STM32 MCU是STMicroelectronics公司生產(chǎn)的一款基于ARM Cortex-M內(nèi)核的32位微控制器,廣泛應(yīng)用于汽車(chē)電子、工業(yè)控制、消費(fèi)電子等領(lǐng)域。本文將介紹STM32 MCU工作原理、基本結(jié)構(gòu)以及優(yōu)缺點(diǎn)。
    發(fā)表于 09-09 16:36 ?3556次閱讀

    密封繼電器工作原理是什么

    密封繼電器是一種特殊的繼電器,其工作原理與普通繼電器有所不同。在本文中,我們將詳細(xì)介紹密封繼電器的工作原理,包括其結(jié)構(gòu)、工作原理、特點(diǎn)和
    的頭像 發(fā)表于 06-30 09:05 ?697次閱讀
    主站蜘蛛池模板: 97久久伊人精品影院| 欧美深深色噜噜狠狠yyy| 一二三四在线播放免费观看中文版视频| 英国video性精品高清最新| 和搜子的日子 在线观看| 亚洲欧美一区二区三区九九九| 国产精品伦一区二区三级视频 | 亚洲精品天堂自在久久77| 国产精品自产拍在线观看网站| 无人在线观看免费高清视频播放| 国产精品美女久久久久浪潮AV| 四虎永久在线精品国产| 国产露脸A片国语露对白| 性xxxx直播放免费| 蝴蝶中文综合娱乐网2| 亚洲在线成色综合网站| 久久久久999| 99re久久这里只有精品| 欧美Av无码高清在线| 超碰99热在线精品视频| 肉动漫3D卡通无修在线播放| 国产成人在线播放| 亚洲国产日韩欧美高清片a| 精品国产90后在线观看| 在线精品国精品国产不卡| 男人边吃奶边摸边做刺激情话| WWWXXXX兽交| 天天躁日日躁狠狠躁午夜剧场| 国产精品人妻无码久久久蜜桃 | 中文字幕一区二区三区在线播放| 蜜桃AV色欲A片精品一区| xxxxx俄罗斯| 天天看片视频免费观看| 国产在线精彩亚洲久久| 在教室伦流澡到高潮H免费视频| 男插女高潮一区二区| 超碰caoporon最新视频| 性VIDEOSTV另类极品| 久久久精品久久久久特色影视| 91交换论坛| 色情www日本欧美|