最近有個(gè)STM32用戶反映,他們目前在調(diào)試STM32G431CBU6這款芯片。使用ST官方的Cube庫(kù)進(jìn)行編程,發(fā)現(xiàn)時(shí)鐘沒(méi)法配置到技術(shù)手冊(cè)上告知的170MHz。當(dāng)然這個(gè)170MHz的頻率要經(jīng)過(guò)PLL倍頻產(chǎn)生。不管選用內(nèi)部時(shí)鐘源還是外部晶振,只要配置成170MHz,芯片肯定會(huì)復(fù)位。
基于HSI時(shí)鐘源的相關(guān)時(shí)鐘配置代碼大致如下:
他嘗試做了各種軟硬件調(diào)整排查,經(jīng)過(guò)反復(fù)測(cè)試驗(yàn)證,發(fā)現(xiàn)設(shè)置PLL所產(chǎn)生的時(shí)鐘只有在不高于80MHz時(shí),芯片才能正常運(yùn)行??蒘TM32芯片手冊(cè)白紙黑字明明寫著主頻可以跑到170MHz??!
由于死活找不出軟件或硬件方面的原因,幾近內(nèi)心崩潰。甚至不直覺(jué)地開(kāi)始懷疑該芯片是否真的支持170MHz的主頻。所以他的問(wèn)題簡(jiǎn)單直接,STM32G4到底支不支持170MHz的主頻?
關(guān)于STM32G4系列的主頻參數(shù),是最基本而核心的一個(gè)參數(shù),手冊(cè)是不可能寫錯(cuò)的。何況本人之前也使用STM32G4的開(kāi)發(fā)板做過(guò)一些測(cè)試,都是基于170MHz進(jìn)行的。
鑒于這種情況,我們首先可以檢查一個(gè)參數(shù),即CPU通過(guò)FLASH控制器取指時(shí)的那個(gè)延時(shí)等待參數(shù),它配置得是否合適會(huì)影響MCU的正常工作。我們知道CPU的訪問(wèn)速率通常要比FLASH控制器的取指速率快得多,這個(gè)延時(shí)等待參數(shù)的配置需要跟CPU的主頻匹配。各個(gè)STM32系列的參考手冊(cè)里都有個(gè)對(duì)照表。下圖是STM32G4系列的。
按照上面表格來(lái)看,如果內(nèi)核時(shí)鐘跑到170MHz,這個(gè)Latency參數(shù)應(yīng)該設(shè)置為8。
經(jīng)了解,他已經(jīng)注意到這個(gè)參數(shù)了,并將這個(gè)參數(shù)做了正確配置??磥?lái)不是這方面的原因,再換個(gè)方向看看。
主頻的提高往往意味著功耗的增大或噪聲及干擾方面可能加劇。于是試圖從系統(tǒng)供電能力、電源穩(wěn)定度、時(shí)鐘穩(wěn)定性方面查找原因,依然沒(méi)有發(fā)現(xiàn)明顯問(wèn)題。
建議他對(duì)STM32芯片所有電源或電源相關(guān)管腳逐個(gè)排查連接、焊接情況,當(dāng)然也包括VDDA腳的連接情況。遇到類似這種沒(méi)法一下子從軟硬件上找出與異常癥狀之間明顯的邏輯關(guān)系時(shí),這樣做往往是個(gè)簡(jiǎn)單而且比較有效的排錯(cuò)辦法。
經(jīng)針對(duì)相關(guān)管腳的逐個(gè)排查,很快發(fā)現(xiàn)芯片的VDDA腳虛焊了,重新處理后芯片于170MHz運(yùn)行穩(wěn)健。
問(wèn)題終于得以解決??吹竭@里,相信很多人會(huì)認(rèn)為該問(wèn)題不復(fù)雜、也談不上深?yuàn)W,可這類問(wèn)題原因往往容易被我們忽視掉,難就難在一會(huì)半會(huì)想不到可能的原因所在。
在我們的實(shí)際調(diào)試過(guò)程中可能很多類似的問(wèn)題,雖談不上多么復(fù)雜或深?yuàn)W,但往往由于我們內(nèi)心深處從頭到尾存在對(duì)某些點(diǎn)的忽視或者想當(dāng)然,導(dǎo)致一時(shí)半會(huì)找不到問(wèn)題原因而耽誤時(shí)間。比方一個(gè)大小端的選擇、一個(gè)變量數(shù)據(jù)寬度的適時(shí)調(diào)整、一個(gè)虛焊的BOOT腳等,它們都很可能將我們困住好一陣子。
在此分享相關(guān)案例, 愿各位在MCU嵌入式開(kāi)發(fā)過(guò)程中多些經(jīng)驗(yàn)的積累,令開(kāi)發(fā)過(guò)程盡量平坦而舒心些。
-
芯片
+關(guān)注
關(guān)注
453文章
50251瀏覽量
421118 -
STM32
+關(guān)注
關(guān)注
2264文章
10858瀏覽量
354391
原文標(biāo)題:難道STM32G4芯片的主頻才到80MHz?
文章出處:【微信號(hào):stmcu832,微信公眾號(hào):茶話MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論