1. 程式人生 > >stm32-串口實驗遇到的問題

stm32-串口實驗遇到的問題

波特 界面 讀者 可能性 調試 family main.c 就會 打印

1.Printf函數不能在調試助手裏正常打印?

前提是已經重定向了printf到串口,而且已經在option裏勾上了use microlib,一切配置都毫無問題,在main.c裏簡單printf(“balabala”);卻不能在調試助手裏打印出來,點發送也只能發送在調試界面輸入的內容;

2.解決方案

(1)將連接電腦的串口線,拔一下,再插一下,點擊發送,打印就OK了;

(2)上面這種方法比較笨重,還有一種簡單的方法:直接reset,就會直接答印了;

3.分析

實質上兩種方法有根本的區別,讀者自行實驗判斷;由於我是用串口燒寫程序的,在燒寫時會關閉調試助手的串口,等燒寫完再打開調試助手的串口,在這段時間內,一條

printf打印信息已經被發送完了,但根本沒被調試助手接收到,所以只要reset一下,就會馬上打印你想輸出的信息了;

4.總結

一開始以為是調試助手的問題,到處下載其他的調試助手,實則結果都一樣;然後再排查程序的問題(重定向),也沒問題;再著查看配置的問題,比如引腳的配置,波特率的配置,也都沒問題;最後偶然插拔了一下usb線就可以了解決問題了;再最後發現reset更為有效。所以通過以上步驟可以發現,遇到問題,只要一一排查所有的可能性,最終是會發現答案的。

stm32-串口實驗遇到的問題