單片機出現死機,教你從這幾方面去排查

筆者在在單片機系統開發過程中,總會遇到一些比較棘手的問題,

比如,當批量生產的產品,概率性出現死機情況,該如何解決。

死機問題,一般出現的問題有很多,軟件硬件都有可能。本篇文章,筆者以前的實際項目出發,總結一些解決問題思路與關鍵點,進行說明

硬件方面:

抗干擾方面,一般需要考慮靜電,可以使用靜電槍進行試驗,可以使用10臺設備,8KV靜電 分別多次操作,如果其中有一臺出現死機,則可以考慮硬件抗靜電部分需要強化,如usb等外部接口,需要在IO口進行防靜電的電路,可以參考如下電路,或使用專用保護芯片。

單片機出現死機,教你從這幾方面去排查

USB防靜電保護電路

抗輻射方面,如果系統中射頻等無線電路,則需要考慮天線對單片機的影響。需要對天線位置,射頻電路整個系統,不好的天線會對系統的電源穩定性,以及單片機的晶振有影響,造成單片機死機

軟件方面

1考慮堆棧,編譯器默認啟動文件中,有堆棧設置的代碼,需要調整大小

2 檢查代碼,是否有不合理死循環,檢查是否有定義的數組溢出,造成程序跑飛

3 是否有使用內部flash存儲,當不合理的flash內存操作時,也會造成死機.

經過批量試產,機器死機問題得到解決.保證產品正常生產

想了解更多電子元器件,電子開發設計,嵌入式編程,研發相關管理知識或者觀點,請記得加【關注】,謝謝您


分享到:


相關文章: