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
+關注
關注
2309文章
11162瀏覽量
373419 -
函數
+關注
關注
3文章
4417瀏覽量
67502
發布評論請先 登錄
相關推薦
熱點推薦
LAT1171+STM32F745 USART1 Bootloader 失敗原因分析與解決
使用 STM32F745 進行產品開發的時候,出現了使用 STM32CubeProgramer 無法通過 USART1 Bootloader 進行程序升級的問題。為了解決客戶的問題,我
發表于 01-11 17:33
?0次下載
單片機卡死的原因和解決方法
,導致程序無法正常運行。例如:
int main(void){ // 初始化代碼// 某個外設初始化失敗,導致無法繼續執行while(1) {// 此處可能添加錯誤處理或調試代碼 }}
發表于 11-25 08:14
如何直接從main函數開始仿真?
提出問題
用最新的官方編譯器得到的匯編文件在程序開始運行時會有很多初始化和預處理的步驟,但是仿真時不需要這些初始化,我們只關心main函數開始后CPU及NICE_core的表現。否則可能會仿真很久
發表于 11-05 06:10
程序加載過程中遇到的問題及其解決方法
會停在代碼發生錯誤的地方,此時MCU鎖死,內部程序無法終止,開發板重新上電和MCU Reset只會重復從Flash讀取代碼并運行鎖死的過程,從而Flash無法燒寫。
解決方法:在e2
發表于 10-30 07:59
跳轉不進去main函數是怎么回事?
);
/* RT-Thread components initialization */
rt_components_init();
//到了這個地方就無法往下執行,無法跳轉到main
發表于 10-09 08:19
星火一號添加wifi后不能進入main函數怎么解決?
>
星火一號開發板BSP,只使能RW007 WALN功能,編譯正常,但是下載完不能進入MAIN函數,finsh功能正常
發表于 09-15 08:15
在rtthread的main函數里用HAL_Delay函數不起作用是哪里的問題?
函數就沒有這個問題。
求大佬提供解決方法
CUBMX選的timbase source時鐘源選的是Systick,優先級是15
main函數里代碼如下
運行結果如下(一秒打印了幾百
發表于 09-15 07:53
用gd32f470移植成功無法進入main函數,怎么解決?
如下所示,我之前用gd32f470移植成功無法進入main函數,之后用官方例程用stm32f407去跑也還是這樣
發表于 09-10 06:24
國產主板無法開機的狀況及解決方法
在計算機的硬件系統中,主板作為連接各個組件的關鍵樞紐,其穩定運行至關重要。隨著國產主板技術的不斷發展與普及,了解其常見故障及解決方法,能幫助用戶在遇到問題時快速排查修復,保障計算機正常使用。
stm32N657配置USART2,可以發送,但是為什么無法進入接收中斷呢?
https://gitee.com/liu-qingchang/code/tree/master/stm32n6
main函數和usart代碼
使用stm32N657這塊評估板,使用c
發表于 06-18 07:13
cubemx生成HAL庫+FreeRTOS,當編寫程序時卻代碼無法自動提示怎么解決?
時,發現它提示stm32f1xx.h文件未被找到,但這整個工程是cubemx生成的,文件路徑下有這個文件,并且也在C/C++中添加了這個文件所在的路徑,并且編譯時也沒提示錯誤,在網上也找不到解決方法,只能求助一下各位大佬了。
發表于 03-12 08:21
stm32進入stop模式,無法被WKUP引腳喚醒是怎么回事?
END 3 */}這是我的main()函數。當進入stop模式按道理應該是已經關閉了systick的,但是根據串口注釋看hello一直在被發送。
這是我的WKUP引腳的配置,當我按下這個按鈕的時候,依然
發表于 03-12 08:15
STM32C031C6在按鍵中斷處理程序中使用HAL_Delay()延時函數,程序則無法運行怎么解決?
測試STM32C031C6開發板的長短按鍵,在按鍵中斷處理程序中使用HAL_Delay()延時函數,程序則無法運行,類似
發表于 03-07 06:50
STM32程序無法進入main函數的解決方法
評論