整理:Miler Shao
某日有個工程師反映,在使用STM32F103R芯片開發產品過程中,發現有部分樣機拔電后,快速放電再上電,MCU運行不起來,即使按復位鍵也無濟于事,單片機仿佛進入了一個未知的世界。客戶覺得復位都不能讓芯片工作起來,有點納悶,覺得問題頗為嚴重。潛意識里有點懷疑是不是MCU有品質缺陷。
查看了客戶的相關電路原理圖,跟客戶也來回做了些溝通。結合客戶反饋的現象和以往的經驗,初步判斷問題應該出在電源這塊。建議客戶先從MCU外圍的電源腳檢查開始,然后進一步驗證相關電源芯片的品質好壞或相關外圍器件的參數等。
客戶工程師將信將疑地先從與VDD有關的電源腳的連接及相關外圍元件開始檢查確認。

客戶拿著電路板檢查時,發現MCU電源腳邊上有2處的電容虛焊了,具體就是STM32F103RB的第48腳、第64腳的電容假焊了。客戶將這2個地方補焊之后,反復驗證測試,先前癥狀消失。說明問題正是這2個地方導致的。
有人也許會問,那兩個小電容有那么重要嗎?
STM32F103RB是64腳,下面是它的管腳布局圖【在芯片數據手冊里獲得】。
顯然,第48腳、第64腳都是供電腳。在數據手冊里還有個芯片供電框圖如下。
該框圖對各個電源腳的濾波電容均有明確推薦告知,特別在圖下方還有句鄭重提示。對于接在VDD與GND之間的那個4.7UF電容,一定要與VDD_3腳相連,盡可能接到VDD_3腳最近的位置。
不容置疑,這些電容的有無、參數大小及布局都是有講究的,尤其是要保證芯片批量性、長期性穩定工作肯定是必要的。如果不重要不必要,廠家也沒必要費勁啰嗦那些,更不用來個Caution做警示。順便插一句,在閱讀ST MCU技術手冊時要特別留意那些標注NOTE或CAUTION的語句及段落。有時稍微多留心下,說不定可以省卻你半天甚至幾天的折騰。
其實,在做MCU開發應用過程中,不少問題往往與電源有關。比方穩壓器件品質、電源外圍器件品質及參數、PCB地線的布局等都有可能導致系統異常,或者說導致MCU功能異常。其中有些問題的原因可能比較隱晦,除了需要工程師的智慧外,更需要耐心和細心。比方本例的電容虛焊問題,工程師查找驗證過程中還是很細心的。當然,也希望通過對本案例的分享,讓其它同仁有些不盡相同的領悟或感受。
【拋磚引玉 旨在交流,如有錯疏 歡迎賜教】