STM32程序無法進入main函數的解決方法
很多人在基于STM32單片機項目開發過程中,會遇到STM32程序無法進入main的現象,在這篇文將分享STM32程序無法進入main函數的解決方法,希望對用戶有所幫助。
1.printf等函數采用了半主機模式
解決方法:關掉半主機模式,將輸入輸出端重定向到ARM器件上,重寫fputc和fgetc函數。
2.系統滴答systick中斷導致無法進入main函數
解決方法有兩種:
1)在bootloader程序跳轉到app層時就關閉系統滴答中斷:SysTick-》CTRL &= ~SysTick_CTRL_ENABLE_Msk;
2)在SystemInit函數關閉系統滴答中斷:SysTick-》CTRL &= ~SysTick_CTRL_ENABLE_Msk;
3.選擇運行程序方式的問題
解決方法:把芯片上的boot0引腳拉低即可
附:
BOOT1=x BOOT0=0 從用戶閃存啟動
BOOT1=0 BOOT0=1 從系統存儲器啟動
BOOT1=1 BOOT0=1 從內置SRAM 啟動
以上是STM32程序無法進入main函數的解決方法。
本文整合自CSDN、博客園
責編AJX
-
STM32
+關注
關注
2270文章
10923瀏覽量
357034 -
函數
+關注
關注
3文章
4345瀏覽量
62865
發布評論請先 登錄
相關推薦
龍門式蔡司三坐標測量機無法加載驅動的原因和解決方法
![龍門式蔡司三坐標測量機<b class='flag-5'>無法</b>加載驅動的原因和<b class='flag-5'>解決方法</b>](https://file1.elecfans.com/web1/M00/F3/F2/wKgaoWchzheAafouAACm-6mDaJs691.png)
邏輯分析儀的常見故障及解決方法
函數發生器的常見故障及解決方法
STM32F411進入SLEEP MODE后無法SWD下載怎么解決?
Tektronix示波器無法檢測到探頭的可能原因及解決方法
![Tektronix示波器<b class='flag-5'>無法</b>檢測到探頭的可能原因及<b class='flag-5'>解決方法</b>](https://file1.elecfans.com/web2/M00/E2/1A/wKgZomY67MKAUGOzAANeS9rVYvw733.png)
評論