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

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

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

STM32三種BOOT模式介紹

MCU開發(fā)加油站 ? 來源:未知 ? 作者:李倩 ? 2018-03-30 16:09 ? 次閱讀

一、三種BOOT模式介紹

所謂啟動,一般來說就是指我們下好程序后,重啟芯片時,SYSCLK的第4個上升沿,BOOT引腳的值將被鎖存。用戶可以通過設置BOOT1和BOOT0引腳的狀態(tài),來選擇在復位后的啟動模式。

Main Flash memory

STM32內(nèi)置的Flash,一般我們使用JTAG或者SWD模式下載程序時,就是下載到這個里面,重啟后也直接從這啟動程序。

System memory

從系統(tǒng)存儲器啟動,這種模式啟動的程序功能是由廠家設置的。一般來說,這種啟動方式用的比較少。系統(tǒng)存儲器是芯片內(nèi)部一塊特定的區(qū)域,STM32在出廠時,由ST在這個區(qū)域內(nèi)部預置了一段BootLoader, 也就是我們常說的ISP程序, 這是一塊ROM,出廠后無法修改。一般來說,我們選用這種啟動模式時,是為了從串口下載程序,因為在廠家提供的BootLoader中,提供了串口下載程序的固件,可以通過這個BootLoader將程序下載到系統(tǒng)的Flash中。但是這個下載方式需要以下步驟:

Step1:將BOOT0設置為1,BOOT1設置為0,然后按下復位鍵,這樣才能從系統(tǒng)存儲器啟動BootLoader

Step2:最后在BootLoader的幫助下,通過串口下載程序到Flash中

Step3:程序下載完成后,又有需要將BOOT0設置為GND,手動復位,這樣,STM32才可以從Flash中啟動可以看到, 利用串口下載程序還是比較的麻煩, 需要跳帽跳來跳去的,非常的不注重用戶體驗。

Embedded Memory

內(nèi)置SRAM,既然是SRAM,自然也就沒有程序存儲的能力了,這個模式一般用于程序調(diào)試。假如我只修改了代碼中一個小小的地方,然后就需要重新擦除整個Flash,比較的費時,可以考慮從這個模式啟動代碼(也就是STM32的內(nèi)存中),用于快速的程序調(diào)試,等程序調(diào)試完成后,在將程序下載到SRAM中。

二、開發(fā)BOOT模式選擇

1、通常使用程序代碼存儲在主閃存存儲器,配置方式:BOOT0=0,BOOT1=X;

2、Flash鎖死解決辦法:

開發(fā)調(diào)試過程中,由于某種原因?qū)е聝?nèi)部Flash鎖死,無法連接SWD以及Jtag調(diào)試,無法讀到設備,可以通過修改BOOT模式重新刷寫代碼。

修改為BOOT0=1,BOOT1=0即可從系統(tǒng)存儲器啟動,ST出廠時自帶Bootloader程序,SWD以及JTAG調(diào)試接口都是專用的。重新燒寫程序后,可將BOOT模式重新更換到BOOT0=0,BOOT1=X即可正常使用。

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

    關注

    2270

    文章

    10900

    瀏覽量

    356046
  • Boot
    +關注

    關注

    0

    文章

    149

    瀏覽量

    35839

原文標題:STM32 BOOT模式配置以及作用

文章出處:【微信號:mcugeek,微信公眾號:MCU開發(fā)加油站】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關推薦

    STM32三種啟動模式

    一、啟動模式Boot modes)閱讀:STM32中文參考手冊_V10.pdf 查看啟動配置(Boot modes)。在STM32F10x
    發(fā)表于 08-05 07:25

    stm32只有boot0沒有boot1

    stm32只有boot0沒有boot1,STM32三種Boot
    發(fā)表于 08-05 06:20

    STM32三種啟動模式

    系統(tǒng)復位后,SYSCLK的第4個上升沿,BOOT引腳的值將被鎖存。用戶可以通過BOOT[1:0]引腳選擇三種不同的啟動模式。從待機狀態(tài)退出模式
    發(fā)表于 08-05 08:10

    STM32三種啟動模式對應的存儲介質(zhì)

    STM32三種啟動模式對應的存儲介質(zhì)均是芯片內(nèi)置的,它們是:用戶閃存: BOOT1=xBOOT0=0芯片內(nèi)置的Flash。SRAM:BOOT
    發(fā)表于 08-05 08:14

    STM32三種啟動模式

    01STM32三種啟動模式STM32三種啟動模式:FLASH啟動、SRAM啟動和系統(tǒng)存儲器啟
    發(fā)表于 08-18 07:52

    STM32三種Boot模式有何差異呢

    STM32三種Boot模式有何差異呢?如何去驗證這種差異呢?
    發(fā)表于 11-26 07:15

    什么是Boot模式?STM32三種Boot模式有什么差異?

    什么是Boot模式?STM32三種Boot模式有什么差異?怎么實現(xiàn)STM匯編程序設計?
    發(fā)表于 11-29 06:04

    STM32三種啟動模式對應的存儲介質(zhì)

    STM32三種啟動模式對應的存儲介質(zhì)均是芯片內(nèi)置的,它們是:1)用戶閃存 = 芯片內(nèi)置的Flash。2)SRAM = 芯片內(nèi)置的RAM區(qū),就是內(nèi)存啦。3)系統(tǒng)存儲器 = 芯片內(nèi)部一塊特定的區(qū)域,芯片
    發(fā)表于 12-09 08:14

    STM32三種boot模式介紹

    淺識STM32三種boot模式文章目錄淺識STM32三種
    發(fā)表于 12-10 07:46

    STM32三種Boot模式及驗證資料分享

    STM32三種Boot模式一、BOOT模式簡介1. 三種
    發(fā)表于 12-10 06:54

    STM32三種Boot模式的差異

    STM32三種BOOT模式介紹.啟動,一般來說就是指我們下好程序后,重啟芯片時,SYSCLK的第4個上升沿,
    發(fā)表于 12-20 07:54

    STM32三種BOOT啟動方式的設置與應用

    如何在不同的下載方式中選擇STM32的啟動模式呢?STM32三種BOOT啟動方式的設置與應用分別是什么?
    發(fā)表于 01-18 07:01

    三種STOP模式的區(qū)別是什么

    CUBEIDE環(huán)境介紹停止模式(STOP)管腳事件喚醒的實現(xiàn)(HAL庫)。STOP模式只是停止代碼執(zhí)行,喚醒(其實是continue的作用)后繼續(xù)執(zhí)行后面的代碼,而不是重啟之后從初始代碼開始執(zhí)行。2. 低功耗
    發(fā)表于 02-11 07:45

    STM32三種串口通信協(xié)議介紹

    本文首先介紹STM32串口硬件電路及串口編程,其次介紹STM32三種串口通信協(xié)議,最后介紹
    發(fā)表于 05-25 09:33 ?3.8w次閱讀
    <b class='flag-5'>STM32</b>的<b class='flag-5'>三種</b>串口通信協(xié)議<b class='flag-5'>介紹</b>

    STM32三種Boot模式及驗證

    STM32三種Boot模式一、BOOT模式簡介1. 三種
    發(fā)表于 11-26 19:51 ?89次下載
    <b class='flag-5'>STM32</b>的<b class='flag-5'>三種</b><b class='flag-5'>Boot</b><b class='flag-5'>模式</b>及驗證