相信很多朋友們都遇到過,自信滿滿的將程序下載到板子上,發現MCU居然沒啟動。
那這個現象可能有很多問題會導致,讓我們來看看會有哪些原因。
1、BOOT引腳電平不對:
在GD32 MCU上,BOOT引腳決定了MCU的啟動方式,通常BOOT0引腳下拉時是flash啟動,如果BOOT電平不對就不會執行我們下載的程序了。
2、NRST拉高了嗎?
NRST是MCU的復位引腳,如果復位引腳沒有拉高,程序也不會啟動,復位引腳一般和電源以及連接電路有關,電源上升到POR 2ms后NRST一般會拉高,如果沒有拉高那還要進一步檢查電源和電路。
3、VDD和VDDA電壓滿足工作范圍了嗎?
平時大家一般關注VDD電壓,但VDDA電壓也很關鍵,我們需要確定VDD和VDDA都達到芯片的工作電壓范圍才能讓芯片正常運行。
4、晶振和程序里的配置匹配嗎?
如果mcu超頻了,那么也會上電后跑飛導致不啟動的現象,當我們晶振大小大于程序配置不一致時,就會出現我們以為主頻正常,但芯片實際已經超頻得離譜了。
5、固件和實際芯片型號或類型不匹配
以GD32F303為例,我們打開固件庫會看到GD32F30x(讀叉)固件庫實際對應了GD32F303、F305、F307不同芯片類型,通過宏定義選擇,他們在時鐘上就存在一定區別,固件配置錯的話程序可能就是在時鐘配置里啦。
什么,如果還沒找到問題,那就大膽的進入debug模式,千萬不要對自己的程序太自信哦,真相甚至可能就是打錯一個字母,關于軟件debug的技巧,期待下次分享。
好了,今天的內容就這些,如果還沒有學廢,那就評論區聊聊吧~記得點贊收藏加關注
-
單片機
+關注
關注
6035文章
44554瀏覽量
634640 -
mcu
+關注
關注
146文章
17123瀏覽量
350986 -
上電
+關注
關注
0文章
16瀏覽量
10863 -
GD32
+關注
關注
7文章
403瀏覽量
24328
發布評論請先 登錄
相關推薦
評論