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

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

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

基于STM32F4和RT-Thread通用BootLoader使用經(jīng)驗

黃工的嵌入式技術(shù)圈 ? 來源:黃工的嵌入式技術(shù)圈 ? 作者:黃工的嵌入式技術(shù) ? 2020-02-27 17:23 ? 次閱讀

硬件資源

正點原子stm32f407zgt6探索者開發(fā)板,片上Flash(ROM)大小為1024KB,RAM大小為192KB,板載一個SPI Flash W25Q128。

BootLoader配置

根據(jù)官方文檔:

https://www.rt-thread.org/document/site/application-note/system/rtboot/an0028-rtboot/

(公號不支持外鏈接,請復(fù)制鏈接到瀏覽器打開) BootLoader的基本配置如下,加密壓縮的配置可以不選。

上述的分區(qū)表以及bootloader所占空間可以用下面的圖表示,偏移地址的概念為從0x08000000開始偏移。 flash空間的前128KB用來存放Bootloader固件,因此排在BootLoader之下的download分區(qū)的起始地址為0x08020000。

生成Bootloader固件,固件會自動發(fā)送到自己的郵箱。

燒錄Bootloader

將得到的Bootloader固件通過STM32 ST-LINK Utility.exe 燒錄到片上flash。要注意的是,燒錄的起始地址為0x0800000。

關(guān)于ST-Link知識,推薦閱讀我的文章:【專欄】ST-Link資料

燒錄完成后串口工具會輸出以下信息

要注意的是,其中的NJUST字樣是自定義的,可以在bootloader生成的頁面自行定義。

兩個CRC32的error信息可以忽略,因為此時的flash中并沒有包含分區(qū)表,分區(qū)表信息需要我們通過燒錄app程序完成初始化配置。

FAL分區(qū)表中的onchip_flash為片上flash空間,起始地址為0x08020000,扇區(qū)大小為128KB。

燒錄app程序和打包

參考官方文檔:

https://www.rt-thread.org/document/site/application-note/system/rtboot/an0028-rtboot/

燒錄出廠固件

出廠固件的keil編譯相關(guān)設(shè)置同app程序一樣,中斷向量表偏移地址也是一樣的。

在制作出廠固件app_factory時,需要將keil生成的bin用ota打包器進(jìn)行打包,打包器的固件分區(qū)名為app,固件版本為1.0.0,然后將打包生成的app_factory.rbl改后綴名為app_factory.bin。最后使用st-link-utility將修改后綴名的app_factory.bin燒錄到Flash的0x08060000地址即可。

要注意,不可以直接把keil編譯的bin文件直接下載到factory分區(qū),因為此時的bin并沒有app的頭信息,這個頭信息需要由OTA打包器打包后才能添加。

恢復(fù)出廠固件的方法:按住WK_UP按鍵的同時按下復(fù)位按鍵,保持WK_UP按鍵處于按下狀態(tài)10秒,即可進(jìn)入恢復(fù)狀態(tài)。

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

    關(guān)注

    40

    文章

    2315

    瀏覽量

    183483
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5050

    瀏覽量

    97456
  • RT-Thread
    +關(guān)注

    關(guān)注

    31

    文章

    1289

    瀏覽量

    40124
  • 正點原子
    +關(guān)注

    關(guān)注

    9

    文章

    27

    瀏覽量

    9919
收藏 人收藏

    評論

    相關(guān)推薦

    意法半導(dǎo)體STM32支持RT-Thread開源4+服務(wù),助力企業(yè)用戶加速嵌入式開發(fā)

    嵌入式系統(tǒng)和物聯(lián)網(wǎng)技術(shù)的快速發(fā)展使得企業(yè)對高效、穩(wěn)定的嵌入式解決方案需求愈加迫切。STM32加入RT-Thread開源4+服務(wù)生態(tài),這一合作將幫助STM32的客戶加速項目實施,推動嵌入
    的頭像 發(fā)表于 11-26 01:04 ?336次閱讀
    意法半導(dǎo)體<b class='flag-5'>STM32</b>支持<b class='flag-5'>RT-Thread</b>開源<b class='flag-5'>4</b>+服務(wù),助力企業(yè)用戶加速嵌入式開發(fā)

    RT-Thread上CAN實踐

    開箱測試RT-Thread官方已完成了對英飛凌XMC7200EVK的移植,通過shell可以看到做好了uart3的console。本文將介紹如何進(jìn)行RT-ThreadCan移植。接下來我們要完成CAN_FD的驅(qū)動移植,并正常啟動RT-T
    的頭像 發(fā)表于 11-13 01:03 ?1178次閱讀
    <b class='flag-5'>RT-Thread</b>上CAN實踐

    開源共生 商業(yè)共贏 | RT-Thread 2024開發(fā)者大會報名啟動!

    親愛的RT-Thread開發(fā)者我們很高興地宣布,一年一度的RDC(RT-ThreadDeveloperConference,RT-Thread開發(fā)者大會)正式啟動報名!2024RT-Threa
    的頭像 發(fā)表于 10-29 08:06 ?395次閱讀
    開源共生 商業(yè)共贏 | <b class='flag-5'>RT-Thread</b> 2024開發(fā)者大會報名啟動!

    2024 RT-Thread全球巡回 線下培訓(xùn)火熱來襲!

    親愛的RT-Thread社區(qū)成員們:我們非常高興地宣布,2024年RT-Thread全球開發(fā)者線下培訓(xùn)即將拉開帷幕!24年全球巡回培訓(xùn)將覆蓋超10座城市及國家,為開發(fā)者提供一個深入學(xué)習(xí)RT-Thread嵌入式開發(fā)的絕佳機(jī)會。
    的頭像 發(fā)表于 08-07 08:35 ?1229次閱讀
    2024 <b class='flag-5'>RT-Thread</b>全球巡回 線下培訓(xùn)火熱來襲!

    GD32F427 bootloader添加rt-thread系統(tǒng)后,跳轉(zhuǎn)到app沒有執(zhí)行main()函數(shù)是怎么回事?

    MCU:GD32F427 bootloader是自己寫的 裸機(jī)使用沒問題,可以正常轉(zhuǎn)跳到APP上,執(zhí)行main() 在APP上移植了rt-thread操作系統(tǒng) 啟動的時候可以打印出logo,但是
    發(fā)表于 07-11 06:31

    RT-Thread 新里程碑達(dá)成——GitHub Star 破萬!

    RT-Thread實時操作系統(tǒng)開源項目在GitHub上的star數(shù)量突破一萬!截止發(fā)文,RT-Thread作為實時操作系統(tǒng)在業(yè)界Star數(shù)量排名第一!倉庫地址:https://github.com
    的頭像 發(fā)表于 07-04 08:35 ?480次閱讀
    <b class='flag-5'>RT-Thread</b> 新里程碑達(dá)成——GitHub Star 破萬!

    6月6日杭州站RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    嵌入式軟件工程師郭占鑫老師為您講解有關(guān)技術(shù)知識和實踐經(jīng)驗。通過本次workshop能深入理解RT-Thread專業(yè)版與混合部署的潛力,在RK3568平臺上提升系統(tǒng)實時
    的頭像 發(fā)表于 05-28 08:35 ?447次閱讀
    6月6日杭州站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    5月16日南京站RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    嵌入式軟件工程師郭占鑫老師為您講解有關(guān)技術(shù)知識和實踐經(jīng)驗。通過本次workshop能深入理解RT-Thread專業(yè)版與混合部署的潛力,在RK3568平臺上提升系統(tǒng)實
    的頭像 發(fā)表于 05-01 08:35 ?371次閱讀
    5月16日南京站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    RT-Thread混合部署Workshop北京站來啦!

    4月25日,下午我們將在北京舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺上實現(xiàn)同時運行RT-Thread和linux,本次workshop邀請到RT-Threa
    的頭像 發(fā)表于 04-19 08:34 ?446次閱讀
    <b class='flag-5'>RT-Thread</b>混合部署Workshop北京站來啦!

    4月25日北京站RT-Thread線下workshop,探索RT-Thread混合部署新模式

    4月25日,下午我們將在北京舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺上實現(xiàn)同時運行RT-Thread和linux,本次workshop邀請到RT-Threa
    的頭像 發(fā)表于 04-16 08:35 ?423次閱讀
    <b class='flag-5'>4</b>月25日北京站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式

    4月10日-深圳-workshop】RT-Thread帶你探索混合部署新模式

    4月10日我們將在深圳福田舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺上實現(xiàn)同時運行RT-Thread和linux,本次workshop邀請到RT-Thread
    的頭像 發(fā)表于 04-04 08:34 ?345次閱讀
    【<b class='flag-5'>4</b>月10日-深圳-workshop】<b class='flag-5'>RT-Thread</b>帶你探索混合部署新模式

    4月10日深圳場RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    4月10日我們將在深圳福田舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺上實現(xiàn)同時運行RT-Thread和linux,本次workshop邀請到RT-Thread
    的頭像 發(fā)表于 03-27 11:36 ?824次閱讀
    <b class='flag-5'>4</b>月10日深圳場<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    4月10日深圳場RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    4月10日我們將在深圳福田舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺上實現(xiàn)同時運行RT-Thread和linux,本次workshop邀請到RT-Thread
    的頭像 發(fā)表于 03-27 08:34 ?535次閱讀
    <b class='flag-5'>4</b>月10日深圳場<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    就在本周四!探索RT-Thread混合部署新模式!

    嵌入式軟件工程師郭老師為您講解有關(guān)技術(shù)知識和實踐經(jīng)驗。通過本次workshop能深入理解RT-Thread專業(yè)版與混合部署的潛力,在RK3568平臺上提升系統(tǒng)實時性
    的頭像 發(fā)表于 03-20 08:34 ?550次閱讀
    就在本周四!探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    恩智浦半導(dǎo)體正式加入RT-Thread全球合作伙伴計劃!

    前不久,恩智浦半導(dǎo)體正式加入RT-Thread全球合作伙伴計劃,成為RT-Thread高級會員合作伙伴。同時,RT-Thread現(xiàn)已成為恩智浦注冊合作伙伴(RT-Thread| 簡介合
    的頭像 發(fā)表于 03-14 10:40 ?621次閱讀
    恩智浦半導(dǎo)體正式加入<b class='flag-5'>RT-Thread</b>全球合作伙伴計劃!