性无码一区二区三区在线观看,少妇被爽到高潮在线观看,午夜精品一区二区三区,无码中文字幕人妻在线一区二区三区,无码精品国产一区二区三区免费

Westbrook
認(rèn)證:VIP會(huì)員
所在專題目錄 查看專題
dsPIC33 BootLoader(1)-簡(jiǎn)介
dsPIC33 BootLoader(2)-Flash程序存儲(chǔ)空間
dsPIC33 BootLoader(3)-構(gòu)建中斷重映射表
dsPIC33 BootLoader(4)-基于MCC配置Boot區(qū)
dsPIC33 BootLoader(5)-基于MCC生成應(yīng)用程序
Bootloader演示
作者動(dòng)態(tài) 更多
10分鐘教你快速完成數(shù)字電源的閉環(huán)控制
2022-04-02 17:26
數(shù)字電源學(xué)習(xí)板演示
2022-02-19 13:36
手把手教你學(xué)數(shù)字電源系列視頻(22)- 數(shù)字控制的軟件流程
2022-02-19 13:28
手把手教你學(xué)數(shù)字電源系列視頻(21)- 設(shè)計(jì)數(shù)字補(bǔ)償器(LDE執(zhí)行)
2022-02-19 13:28
手把手教你學(xué)數(shù)字電源系列視頻(20)- 設(shè)計(jì)數(shù)字補(bǔ)償器(AB系數(shù)計(jì)算)
2022-02-19 13:27

dsPIC33 BootLoader(1)-簡(jiǎn)介

在利用MCU開(kāi)發(fā)數(shù)字電源項(xiàng)目中,對(duì)于嵌入式開(kāi)發(fā)而言,Bootloader幾乎與軟件算法同等重要,它可以讓我們擺脫MCU官方工具,定制自己的燒錄工具,不僅提高產(chǎn)品辨識(shí)度,同時(shí)也大大減少了對(duì)外引腳數(shù)量(例如兼容通信的Uart或CAN等,而不需要另外接JTAG。接下來(lái),我會(huì)通過(guò)這個(gè)專題對(duì)BootLoader做一個(gè)入門的介紹,針對(duì)dspic33做兩種不同的方式來(lái)實(shí)現(xiàn),第一種是采用修改.gld文件的方式;另外一種是采用MCC。

一般MCU的機(jī)器碼都是存儲(chǔ)在Flash中,MCU啟動(dòng)時(shí)PC指針會(huì)從內(nèi)部Flash第一個(gè)地址開(kāi)始讀取指令運(yùn)行,這個(gè)過(guò)程我們一般無(wú)法干涉。但由于我們寫的代碼存于Flash中,所以一旦從Flash啟動(dòng),后續(xù)操作就完全可以由我們來(lái)指定,我們可以指定程序執(zhí)行位置。

對(duì)于低端MCU來(lái)說(shuō),我們可以通過(guò)在Flash初始的位置設(shè)置指令,來(lái)啟動(dòng)內(nèi)部不同flash區(qū)域的程序,以及燒寫程序到這些flash區(qū)域,這些操作集合叫做Bootloader。Bootloader承擔(dān)著用戶程序的燒寫以及跳轉(zhuǎn)。

BootLoader是在單片機(jī)上電復(fù)位時(shí)執(zhí)行的一段程序。也稱作Bootlader固件,通過(guò)這段程序,可以不使用編程器對(duì)應(yīng)用程序在線升級(jí),來(lái)實(shí)現(xiàn)應(yīng)用程序的更新。在單片機(jī)上電/復(fù)位后,一般都是先運(yùn)行Bootloader程序。Bootloader運(yùn)行后,先判斷當(dāng)前是否需要進(jìn)入升級(jí)狀態(tài)。如果不需要升級(jí),就直接運(yùn)行Flash中原有的應(yīng)用程序;如果需要升級(jí),首先擦除舊的應(yīng)用程序,然后從通訊接口接收應(yīng)用程序代碼,并寫入指定Flash中。直到把新的應(yīng)用程序全部都寫入Flash,最后進(jìn)行校驗(yàn),確保新的應(yīng)用程序是正確的、完整的。再跳轉(zhuǎn)去運(yùn)行新的應(yīng)用程序。

對(duì)于高級(jí)MCU或者CPU來(lái)說(shuō),可以輕松映射外部存儲(chǔ)(外部Flash、U盤、硬盤等),MCU啟動(dòng)后,我們可以指定其從哪個(gè)存儲(chǔ)啟動(dòng),甚至通過(guò)通信接口接收數(shù)據(jù)存儲(chǔ)到這些外部存儲(chǔ)。這些操作集合在嵌入式操作系統(tǒng)中一般稱之為UBoot,在PC中稱之為BIOS,外部存儲(chǔ)一般存放的是操作系統(tǒng)。

dspic33的Flash內(nèi)部執(zhí)行流程如下:

通訊接口可以是UART、I2C、SPI、CAN、USB等。通訊速率直接影響整個(gè)升級(jí)的完成時(shí)間,在升級(jí)的過(guò)程中應(yīng)用程序是不能被運(yùn)行的 。CAN Bootloader就是通過(guò)CAN總線來(lái)傳輸應(yīng)用程序文件,來(lái)實(shí)現(xiàn)對(duì)應(yīng)用程序代碼的升級(jí)。

在做CAN BootLoader時(shí),一般有兩種形式作為HOST來(lái)對(duì)目標(biāo)板進(jìn)行升級(jí)。

1.使用另外一個(gè)主MCU,比如用一個(gè)UART-CAN的轉(zhuǎn)接板,主要用到USB轉(zhuǎn)UART芯片MCP2221A和帶CAN 控制器的MCU PIC18F66K80,66K80作為Host MCU。

2.使用CAN ANALYZER。可以使用ZLG的雙通道CAN分析儀,型號(hào)USBCAN-2E-U

大致執(zhí)行流程如下:

聲明:本內(nèi)容為作者獨(dú)立觀點(diǎn),不代表電子星球立場(chǎng)。未經(jīng)允許不得轉(zhuǎn)載。授權(quán)事宜與稿件投訴,請(qǐng)聯(lián)系:editor@netbroad.com
覺(jué)得內(nèi)容不錯(cuò)的朋友,別忘了一鍵三連哦!
贊 4
收藏 11
關(guān)注 873
成為作者 賺取收益
全部留言
0/200
成為第一個(gè)和作者交流的人吧