stm32燒不進去程式 STM32啟動模式

2021-10-12 09:12:25 字數 939 閱讀 1378

stm32的復位方式有三種:上電復位,硬體復位和軟體復位。

當我們在flash download中勾選了reset and run時,把程式燒寫進去晶元後,重啟晶元就相當於軟體復位。

當我們把電源接上,晶元啟動,這種情況屬於上電復位。

當我們按下復位鍵,晶元重啟,這種情況屬於硬體復位。

產生復位後,在系統時鐘第4個上公升沿到來的時候,boot引腳的值被鎖存。

這裡的boot引腳有兩個,boot0和boot1,它們的電平組合決定了stm32的啟動模式。現在看看stm32的啟動模式,如下圖所示:

stm32有三種不同的啟動模式,這三種模式下的儲存介質都是晶元內建的,不同的儲存介質在晶元內部的位址不一樣。主快閃儲存器儲存器的首位址0x0800 0000;系統儲存器的首位址0x1fff f000;內建sram的首位址0x2000 0000。

因為固定的儲存器映像,**區始終都是從0x0000 0000開始執行,資料區始終是從0x2000 0000開始。

從主快閃儲存器儲存器啟動,相當於將主快閃儲存器位址0x0800 0000對映到0x0000 0000,那麼**啟動後,就等同於從0x0800 0000開始。這裡需要說明一下,快閃儲存器儲存器的內容可以通過兩個位址訪問,0x0000 0000或0x0800 0000。這種啟動方式是用到最多的。

從內建sram啟動,只能在0x2000 0000開始的位址區訪問sram,這點十分特殊。在應用程式的初始化**中,必須使用nvic的異常表和偏移暫存器,重新對映向量表到sram中。

STM32學習筆記(3) 什麼是STM32

既然已經做好了開發stm32的準備,軟體硬體都準備好了,那麼我們來了解一下何為stm32吧。stm32是意法半導體 st 設計的一系列32位晶元的名字,細分為l f h三個系列。f系列是最經典的系列。f系列的基礎晶元是f1系列,低廉,麻雀雖小五臟俱全,我做課程設計最喜歡用的就是stm32f103c8...

STM32 程式入口

stm32的啟動需要依賴啟動檔案,不同編譯器的啟動檔案不同,這裡以startup stm32f407xx.s為例,它主要進行了以下工作 復位子程式是系統上電後第乙個執行的程式 reset handler reset handler proc export reset handler weak imp...

STM32鍵盤掃瞄程式

stm32鍵盤掃瞄程式 帶中斷觸發輸入 可注釋忽略 include key.h include delay.h 按鍵初始化函式 void key init void while gpiob idr 0x0f00 0x0000 等待鬆開 gpio setbits gpiob,gpio pin 12 g...