stm32如何才能正常運行的調試筆記

 

想使用野火或者安福來的代碼模板來學習這個stm32,畢竟他買使用量挺多的,代碼風格尤其是安福來比較好,因此想試試他們的工程,但是弄了好長一段時間,單片機就是不能運行,進入debug,就死機,停在硬件錯誤或其他地方。

後來想想,真是低級錯誤導致的,因此整理一下。

今後遇到不能正常運行的情況下,先冷靜下來思考而不是盲目的改代碼。

1、單片機能否下載,能否調試,驗證啓動引腳boot0、boot1的電平是否正確。
2、晶振是否啓振,查看晶振的類型,有的是晶體振盪器結合電壓,有的是直接輸出clk頻率。
3、每個外設的時鐘是否開啓,是否開啓正確,stm32內部有總線的,不同外設掛載不同總線上,因此不能弄錯了。
4、是否有數據溢出,堆棧溢出,這種也會導致硬件錯誤
5、系統時鐘頻率設置是否正確

我昨天就是因爲電路上面是bypass的時鐘頻率輸入,結果兩個代碼模板都是8Mhz的晶體振盪器的方式作爲時鐘,就是以前51單片機的默認方式,所以導致系統時鐘都沒有起來,自然就無法運行的。

區別如下:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章