初試stm32嵌入式開發遇到的巨坑

2022-03-15 18:37:06 字數 994 閱讀 5859

開發板使用的是st官方的stm32f207zg nucleo,遇到的問題是在keil中報錯:

no target connected
到網上找答案,都是說gpio口的問題,讓按著reset鍵改debug 的setting然後再download就好了,試了好久都沒效果,遂放棄。還有的說可能是晶元沒上電,我想,我這兒插著usb呢,咋會沒電。

後來在乙個群裡和網友討論到凌晨三點半,無果,最後推薦我試一下gnu 的toolchain,那樣的話他對報錯會熟悉一些,有可能可以搞明白,試過後,無果。

後來又下了stlink unity,連線時報錯

can not connect target
但奇怪的是使用它更新韌體時ld4會閃爍,我想這應該是在寫入韌體吧,說明我的連線沒問題。

前前後後折騰了一周多。這裡還是要吐槽一下st官方天貓店的售後,走投無路時去找了客服尋求技術支援,說好的完善的技術支援,進了群之後並沒有人搭理我,我低三下四一遍遍的艾特,還是沒人管我,這種服務你賣什麼產品啊,真服了。

最後,山窮水盡之際,讓我發現了板子的說明手冊,找到了錯誤的根源,原來真的是沒上電。

錯誤的根源就是,之前以為板子上的那些塑料製品是介面一類的東西,供插線用的,就隨便插著玩了。看了說明手冊後,才知道這個叫jumper,大概翻譯為跳線?正是我把u5v位置的跳線拔走了,導致供電失敗,pwr燈也沒在亮了,本來是很明顯的問題,不過我第一次用這個開發板實在是沒注意到這一點,畢竟板子上光寫pwr的地方好幾個。總之,再更新了一下韌體就完全恢復了,實在是虛驚一場。
說實話,發板子時就算不給紙質的說明手冊,起碼把官網的文件搞得規範一點,找起來也方便很多啊,官方版對小白太不友善了。我甚至是一開始一直糾結於國內產的開發板為什麼都帶乙個乙個偵錯程式,後邊才慢慢猜到stlink是被嵌入到開發板裡來了,看了手冊之後才明白整個開發板的左小部分就是stlink,這也解釋了為什麼上邊用stlink unity更新韌體時燈會閃爍了,因為確實連線了stlink只是沒有連線晶元。

STM32嵌入式開發學習筆記(一)

stm32cubemx是st官方推出的一種stm32設定和初始化c 的生成器。它可以直觀的選擇stm32微控制器 配置微控制器 自動處理引腳衝突 動態設定確定時鐘樹 動態確定引數設定的外圍和中介軟體模式和初始化。cubemx生成的 可以在keil iar gcc等程式設計軟體上面使用。簡單理解,就是...

嵌入式之STM32系列筆記

一 微控制器程式構架設計 用微控制器開發專案,當 開發到一定的程度後,由於涉及到的源程式檔案與標頭檔案眾多,若在前期為程式設計好架構,則在一定程度上便於程式的維護與管理,更有利於理清思路,加快專案的開發。通常將程式架構設定為四層,如下圖 其中middleware可以沒有,如果沒有外部擴充套件件,如外...

Stm32嵌入式電子相簿簡易實現

kevinten10 stm32 lifecat 基於stm32晶元進行開發,採用480 320解析度內建視訊記憶體模組的lcd顯示屏模組,使用stm32晶元內建的fsmc模擬8080介面時序從而驅動lcd。通過fatfs檔案系統進行sd儲存空間的管理。1 通過fatfs方式讀取fat32格式sd卡...