精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

實例圖文講解bootloader固件源碼及在線升級

n2wM_Atmel_comm ? 來源:未知 ? 作者:佚名 ? 2017-09-19 10:05 ? 次閱讀

筆者發現很多朋友需要bootloader實現在線升級,在這里筆者將實現過程與大家分享,并筆者的bootloader固件給大家參考。筆者在mage和xmage上都實現過,不過使用的RS485,所以固件里面也是RS485的,大家使用RS232的話,把RS485的控制去掉就可以了,RS232實現起來比RS485簡單,因為RS232是全雙工的。

筆者開發使用的環境是Atmel Studio 6.2,這個看大家習慣,環境主要就是實現可執行文件。bootloader固件都是C語言實現,相信大家都能看明白,這里就直接上傳bootloader固件源碼,大家到原文中下載。bootloader固件是需要仿真器等設備下載到設備中的。

ATMEL的mcu大多數都分boot區和應用區,都有熔絲位的設置,所以要實現在線升級,首先需要設置熔絲位,使mcu上電從boot區啟動。然后在boot區判斷是否需要升級,不需要自動跳到應用。還有就是要注意,筆者給的bootloader固件只是實現上電時進入boot區,需要其他方法實現,可以自行修改,原理一樣。

下面說一下熔絲位的設置,這個需要針對mcu,不通的mcu設置稍有不同。

筆者在mage88pa上實現過,熔絲位設置為:

使用仿真器ISP設置mega88pa熔絲位,設置如下:

1, BOOTSZ:選擇512W_0E00;

2, BOOTRST:選中,表示使用上電從boot區開始啟動。

3, SPIEN:選中,默認仿真器模型,ISP下載程序,但不能仿真。該模式可設置熔絲位。

4, 需要仿真時,選中DWEN,去掉SPIEN。即選擇debugwire,在仿真在調試時disable后進入ISP;

5, EESAVE:執行擦除命令時是否保留E2PROM中的內容,默認狀態為“1”,表示E2PROM中的內容同Flash中的內容一同擦除。該位設置為“0”,對程序進行下載前的擦除命令只會對FLASH代碼區有效,而對E2PROM區無效。

6, BODLEVEL:選擇4.2V;掉電檢測。

7, SUT_CKSEL:選擇EXTXOSC_8MHZ_XX_16kCK_14CK_65MS;最后一個,根據使用的晶體來選擇。

8, 其他不選擇。

在xmage16上實現過,熔絲位設置相對簡單一下,只設置從boot區啟動即可。

熔絲位設置好后,就使用仿真器把bootloader固件固化到mcu中。

接下來就是實現在線升級了。如果使用pc機實現在線升級的畫,在pc機就需要一個應用軟件。這里筆者提供一個與bootloader配套的軟件,大家可以在原文中下載;

接下來說一下這個應用軟件的的使用,下面是針對mage88pa來說:

1) 啟動 AVRUBD.EXE 。

2) 設置 AVRUBD 。 點擊“選項”,點擊下拉菜單的AVR, 先將“ AVR ” 選項卡下的參數設置為圖 一 的要求, 注意 flash 空間大小是8K (這個根據具體mcu設置,如xmage16,應設置為16K); 聯機密碼為HEX:41 56 52 55 42;然后選“系統” 卡片, 設成圖二 所示, 注意通訊協議要選簡化 Xmodem 協議;數據幀長度為:64,(根據mcu串口接收buff設置,如xmage16應設置為256); 再選“串口 ” 卡片, 將其設成圖三 所示, 其中串口號要根據你所用電腦實際串口確定;波特率為38400; 完成以上設置后點擊“確定”

3) 載入要寫到芯片中的 HEX 文件。 這一步是將你要下載到電路板的程序先裝入電腦, 方法是點擊

左上角菜單中“文件 –> 載入”, 然后選擇要下載的文件, 點擊“打開”。

4) 點擊“下載”( 圖4 ), 隨即給目標板上電。 注意這里有一個時間配合的問題, 當你點擊“下載”

后, PC 會查詢下位機, 這段時間約為數秒。 當板卡上電后也有一個等待串口命令的時間,

這個時間只有 1 – 2 秒, 如果這兩個時間配合不上, 就會出現聯機失敗( 圖 5 ), 所以應當點擊“下

載” 后馬上給下位機( 即主板卡) 上電。 當順利完成時, 你應該看到與圖 6 類似的結果。

到這里,在線升級完全實現了。謝謝閱讀~


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

    關注

    146

    文章

    17000

    瀏覽量

    350321
  • bootloader
    +關注

    關注

    2

    文章

    234

    瀏覽量

    45548

原文標題:ATMEL系列MCU在線升級bootloader固件源碼及操作過程

文章出處:【微信號:Atmel_community,微信公眾號:Atmel中文社區】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    請問誰有stm8的IAP升級bootloader工程源碼嗎?

    求stm8的IAP升級bootloader工程源碼。串口通過超級終端進行升級。如果能提供,那么分數全給你。
    發表于 10-11 01:12

    無法使用內置Bootloader的DFU方式進行固件升級的問題進行分析

    本文將針對客戶無法使用內置Bootloader的DFU方式進行固件升級的問題進行分析。
    發表于 08-06 09:52

    STM32F407的系統bootloader之串口IAP固件升級

    STM32F407的系統bootloader之串口IAP固件升級,STM32F407的系統bootloader之串口IAP固件
    發表于 08-10 07:26

    使用系統bootloader做程序升級的方法

    第29章 STM32F407的系統bootloader之USB DFU方式固件升級本章節為大家講解使用系統bootloader做程序
    發表于 08-10 06:31

    使用系統bootloader做程序升級的方法

    第29章 STM32F429的系統bootloader之USB DFU方式固件升級本章節為大家講解使用系統bootloader做程序
    發表于 08-10 08:15

    使用系統bootloader做程序升級的方法

    第30章 STM32F429的系統bootloader之串口IAP固件升級本章節為大家講解使用系統bootloader做程序
    發表于 08-10 06:29

    使用系統bootloader做程序升級的方法

    第68章 STM32H7的系統bootloader之USB DFU方式固件升級本章節為大家講解使用系統bootloader做程序
    發表于 08-20 06:32

    STM32H7的系統bootloader之串口IAP固件升級

    第69章 STM32H7的系統bootloader之串口IAP固件升級本章節為大家講解使用系統bootloader做程序
    發表于 08-20 06:04

    bootloader升級模式有哪幾種

    1.固件升級簡述固件升級,通常稱為 OTA(Over the Air)升級或者 FOTA(Firmware Over-The-Air)
    發表于 01-25 07:33

    STM32 BootLoader升級固件

    Bootloader應該是每個成熟產品都必須具備的功能,有了它,我們不用擔心產品銷售出去后發現產品固件有問題而無法解決的問題,有了Bootloader功能,我們可以非常方便的升級更新我
    發表于 11-10 08:59 ?5051次閱讀
    STM32 <b class='flag-5'>BootLoader</b><b class='flag-5'>升級</b><b class='flag-5'>固件</b>

    STM32單片機網絡遠程升級固件源碼下載

    STM32單片機網絡遠程升級固件源碼下載
    發表于 04-17 09:27 ?77次下載

    如何快速將BootLoader與APP固件合并

    1、前言嵌入式固件一般分為BootLoader和App,BootLoader用于啟動校驗、App升級、App版本回滾等功能,BootLoader
    的頭像 發表于 09-24 14:19 ?5305次閱讀

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

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

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

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

    如何開發不帶Flash API 的Bootloader實現在線升級

    電子發燒友網站提供《如何開發不帶Flash API 的Bootloader實現在線升級.pdf》資料免費下載
    發表于 09-12 09:41 ?0次下載
    如何開發不帶Flash API 的<b class='flag-5'>Bootloader</b>實現<b class='flag-5'>在線</b><b class='flag-5'>升級</b>