久久人妻精品人妻视频五月天一区二区三区,,自慰午夜喷水久久久av国产成人a视频高在线,,欧美日韩免费专区在线97精品国产手机

  • <cite id="cwywg"></cite>
    <button id="cwywg"></button>
  • <button id="cwywg"><source id="cwywg"></source></button>
    <button id="cwywg"><tbody id="cwywg"></tbody></button>
  • <button id="cwywg"></button>
  • 
    
  • logo logo
    • BANNER
    • BANNER
    • BANNER
    您的位置 : 首頁(yè) > 新聞資訊 > 技術(shù)支持
    stm32 boot0 boot1的啟動(dòng)方式
    發(fā)布者:江蘇瑞易通電子科技有限公司 人氣:432 發(fā)布日期:2021-04-23 10:10:40

    STM32 三種啟動(dòng)模式對(duì)應(yīng)的存儲(chǔ)介質(zhì)君是芯片內(nèi)置的,它們是:

     1.用戶閃存 =芯片內(nèi)置的Flash 

     2.SRAM=芯片內(nèi)置的RAM區(qū),就是內(nèi)存了。

     3.系統(tǒng)存儲(chǔ)器=芯片內(nèi)部一塊特定的區(qū)域,芯片出廠時(shí)在這個(gè)區(qū)域預(yù)置了一段bootloader,就是同事的ISP升級(jí)程序,這個(gè)

       區(qū)域的內(nèi)容在芯片出現(xiàn)后沒(méi)偶人能夠修改或拆除,即它是一個(gè)ROM;

    在每個(gè)STM32 的芯片上都有兩個(gè)管腳BOOT0和BOOT1,這兩個(gè)管腳在芯片復(fù)位時(shí)電平狀態(tài)決定了芯片復(fù)位后從哪個(gè)區(qū)域開始執(zhí)行程序,

     BOOT1=X BOOT0=0  從用戶閃存(flash)啟動(dòng),這時(shí)正常模式  較多情況下使用這種模式

     BOOT1=1  BOOT0=1 從內(nèi)置SRAM(內(nèi)存)啟動(dòng),這種模式可以用于調(diào)試

    BOOT1=0 BOOT0=1 從系統(tǒng)存儲(chǔ)器啟動(dòng), 這種可以用于調(diào)試

      

     STM32引腳狀態(tài)決定了用哪種方式啟動(dòng),

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

      System memory 從系統(tǒng)存儲(chǔ)啟動(dòng),這種模式啟動(dòng)的程序功能是有廠家設(shè),一般很少使用,一般來(lái)說(shuō)STM32在出廠是內(nèi)置了一段bootloader,也就是我們常說(shuō)的

    ISP程序,這是一塊ROM,出廠后我發(fā)修改, 這種啟動(dòng)模式,是為了從串口下載程序,因?yàn)閺S家提供BootLoader中,可以通過(guò)bootloader將程序下載到系統(tǒng)Flash中,

       Embedded Memory 內(nèi)置SRAM,既然是SRAM,自然就沒(méi)有程序存儲(chǔ)的能力,這個(gè)模式一般用于程序調(diào)試  例如我們修改了代碼一個(gè)小小地方,然后需要拆除整個(gè)flash,比較費(fèi)時(shí)

      可以考慮這種啟動(dòng)方式

         綜合所述,我們將BOOT0和BOOT1通過(guò)一個(gè)100k的下拉電阻,直接接地。

       

    STM32 啟動(dòng)過(guò)程:

       STM32的內(nèi)部閃存(flash)地址起始于0x08000000,一般情況下,程序文件就從地址開始寫入,此外STM32是基于Cortex-M3內(nèi)核的微控制器,其內(nèi)部通過(guò)一張

    中斷向量表來(lái)響應(yīng),此外,STM32是基于Cortex-M3內(nèi)核的位控制器,其內(nèi)部通過(guò)一張“中斷向量表”來(lái)響應(yīng)中斷,程序啟動(dòng)后,首先從"中斷向量表"取出復(fù)位中斷向量執(zhí)行

    復(fù)位中斷程序完成啟動(dòng),而這張"中斷向量表"的起始地址是0x8000004,當(dāng)中斷來(lái)臨,STM32的內(nèi)部硬件機(jī)制會(huì)自動(dòng)將PC指針定位到中斷向量表處,并根據(jù)中斷源取出對(duì)應(yīng)的中斷向量執(zhí)行中斷服務(wù)程序。

        在圖53.1.1,STM32 在復(fù)位后,先從0x08000004地址取出復(fù)位中斷向量的地址,并跳轉(zhuǎn)到復(fù)位中斷服務(wù)程序,如題彪了(1)所示,在復(fù)位中斷執(zhí)行完后,會(huì)跳轉(zhuǎn)到我們的

    Main函數(shù),如圖(2)所示,而我們的main一般都是一個(gè)死循環(huán),在main函數(shù)執(zhí)行過(guò)程中,如果收到中斷請(qǐng)求,此時(shí)STM32強(qiáng)制將PC指針指回中斷向量表處,如圖3所示,

    然后,根據(jù)中斷源進(jìn)入相應(yīng)的中斷服務(wù)程序,如圖標(biāo)號(hào)4所示,在執(zhí)行完中斷服務(wù)以后,程序再次返回main函數(shù)執(zhí)行,如圖標(biāo)號(hào)5所示

         


    返回新聞列表