1. 程式人生 > >【STM32】STM32啟動方式

【STM32】STM32啟動方式

在少量晶片程式下載時,用JLINK或SWD的下載方式比較繁瑣,串列埠下載配合正點原子的FLYMCU比較快捷,STM32的串列埠下載時候需要注意MCU的啟動方式。

在復位時,會按照boot的狀態判斷進入哪種模式,boot腳不用保持長狀態。

在根據STM407參考手冊來看,STM32擁有三種啟動方式,分別為:


模式1:boot0拉低,使用使用者快閃記憶體區,這是最正常啟動的模式,即,在正常啟動時,boot0應該下拉為低電平;

模式2:從系統儲存器啟動,在系統ROM區有固定的bootloader程式碼,用於ISP(串列埠)下載,引導外部程式碼到falsh,在重新復位後,置boot0為0即可以得到剛才的下載的程式碼。

模式3:從SRAM執行,由於STM32的FLASH擦寫的次數是有限的,所以為了保護我們的FLASH,延長MCU的使用時間,我們可以在SRAM上進行除錯,SRAM是暫存器,掉電后里面的內容會丟失的,它跟我們PC上的記憶體條有同樣的功能。如果STM32的FLASH被設定成了讀保護,以至於不能燒寫程式,可以通過從SRAM中啟動程式,把FLASH讀保護解除。

相關推薦

STM32STM32啟動方式

在少量晶片程式下載時,用JLINK或SWD的下載方式比較繁瑣,串列埠下載配合正點原子的FLYMCU比較快捷,STM32的串列埠下載時候需要注意MCU的啟動方式。在復位時,會按照boot的狀態判斷進入哪種模式,boot腳不用保持長狀態。在根據STM407參考手冊來看,STM32

DebugSTM32 HardFault_Handler 故障

          3、還是將中斷函式修改,列印中斷時的一些資訊: HardFault_Hander()定義如下: void HardFault_Handler(void) {   uint

STM32STM32之timer3產生PWM

//****************************************************************************** //name: GUA_Timer3_PWM.c

大資料(二十三)HiveHive三種啟動方式 、 HIVE Server2詳解 、 jdbc連結HIVE

一:Hive的三種啟動方式 1, hive  命令列模式         進入hive安裝目錄,輸入bin/hive的執行程式,或者輸入 hive –service cli         用於linux平臺命令列查詢,查詢語句基本跟mysql查詢語句類似  2, hive

STM32STM32之限位開關

五、基礎知識 1、限位開關是什麼? 答:限位開關其實就是會復原開關的開關按鍵。 也就是說按下限位開關的開關能觸發STM32的IO中斷,而鬆開手指時限位開關會復原。 2、限位開關有什麼用? 答:通常被用於限制電機轉動角度來使用。 例如兩個限位開關形成45°的夾角,一旦電機轉動觸發任意其中一個限

STM32STM32 MCU系列介紹

STM32-32 微控制器(MCU)家族 系列 MCU 主流級別MCU STM32 F0系列-ARM Cortex-M0入門級MCU STM32 F1系列-A

notestm32 keilMDK出現warning: function XX declared implicitly

warning: #223-D: function "CLR_TX_DATA" declared implicitly 解決方法。 以上面錯誤提示為例:  1  找到定義函式 CLR_TX_DATA() 的原始檔 ,這裡假設在 a.c  中;   2  在 a.h

記錄STM32學習之第一個程式(點亮LED)

STM32學習之第一個程式(點亮LED) 開發板:Nucelo L053R8 芯 片:STM32L053R8 軟 件:IAR for ARM 7.4, STM32CubeL0 程式碼示例

STM32STM32之電量採集

//****************************************************************************** //name: GUA_ADC1.c //introduce:

STM32STM32之藍芽透傳模組(昇潤科技HY-254124 V8)

//****************************************************************************** //name: BLE_Uart.c //introduce: 藍芽串

STM32STM32埠複用和重對映(AFIO輔助功能時鐘)

STM32F1xx官方資料:《STM32中文參考手冊V10》-第8章通用和複用功能IO(GPIO和AFIO)埠複用功能埠複用的定義STM32有許多的內建外設(如串列埠、ADC、DCA等等),這些外設的外部引腳都是和GPIO複用的。也就是說,一個GPIO如果可以複用為內建外設的

STM32STM32之霍爾感測器模組

1、霍爾感測器是什麼? 答:霍爾感測器是根據霍爾效應制作的一種磁場感測器。 用磁鐵去靠近霍爾感測器時,霍爾感測器的引腳電平會產生變化。 2、霍爾感測器主要用在什麼地方? 答:霍爾感測器可測速、計數、限位上。 舉例限位功能:兩個霍爾感測器形成45°的夾角,電機邊緣粘著一個磁鐵,一旦電機轉動導致

BIEE05_啟動BIEE時,無法啟動BI_SERVER

ini ora biee style server clas gin 無法啟動 onf 本地修改資料庫後,重新啟動BIEE,結果報錯: 點擊【查看日誌信息】後 從這裏是沒看出是什麽問題造成的,那麽我們就要去查詢啟動日誌了 問題解決 找到日誌路徑:D:\obiee\in

MySQL無法啟動mysql服務(位於本地計算機上)錯誤1067,進程意外中止

run rec 文件 提示 wid 感覺 發現 window 服務器 好久沒看MySQL了,今天啟動起來找找感覺,尷尬了。。。發現服務啟動不了。系統提示:無法啟動mysql服務(位於本地計算機上)錯誤1067,進程意外中止。 解決過程: 1、在網上百度好久,看到一條解決路線

Windows7win7啟動 報錯 AutoIt錯誤,不能打開腳本文件

gpo 啟動 inf .com IT 報錯 分享 -- src 解決方法: 1。開始--》運行--》regedit 2。按照下圖 3. 【Windows7】win7啟動 報錯 AutoIt錯誤,不能打開腳本文件

oracle11g整體啟動和關閉

lsnrctl1.關閉數據庫【默認orcl】 sqlplus /nolog conn sys/sys as sysdba; shutdown immediate; --關閉所有實例 lsnrctl stop2.單獨關閉的數據庫實例,目前啟動不了了【uu】 sqlplus /nolog conn sys/

TestNG使用程式碼方式呼叫TestNG用例執行

TestNG的用例除了直接執行之外,還可以使用程式碼來呼叫,這樣做的好處在於我們可以將其嵌入其他程式碼中,來執行這些TestNG用例,方法如下: 1、直接呼叫用例類 範例: 定義了兩個測試用例類為DependTest1.java和FactoryTest.java: 再做一個main函

dockerdocker啟動、重啟、關閉命令,附帶:docker啟動容器報錯:docker: Error response from daemon: driver failed programming external connectivity on endpoint es2-node

在關閉並放置centos 的防火牆重啟之後【操作:https://www.cnblogs.com/sxdcgaq8080/p/10032829.html】 啟動docker容器就發現開始報錯: [[email protected] elasticSearch]# docker run -d

mongodbcentos7 yum方式安裝Mongodb 4.0

1. 建立使用者 (當前操作使用者: root) [root]# adduser mongo #新增使用者 [root]# passwd mongo #為使用者設定密碼 2. 賦予sudo許可權

C++記憶體管理方式

本篇博文旨在介紹C++的記憶體管理方式,並和C語言中的記憶體管理方式作出對比;說明了C語言中的malloc/free和C++中的new/delete的區別;介紹了定位new表示式,來模擬實現new和d