資料介紹
一、振蕩器停止振蕩
又可以分為電源電壓不穩,或者強干擾引起的振蕩器停振。
二、PC指針跑飛
電源電壓不穩或強干擾引起PC跑飛,如果看門狗不好,也會引起死機。
三、設計上對長引出線的IO沒有保護,靜電打在IO口上引起單片機死鎖,破壞了硬件邏輯功能,導致死機。
四、復位收到干擾,引起反復復位,在反復復位當中有可能會導致死機。
綜上所述:
設計電路時,應該注意:
1.電源穩定
2.IO保護
3.振蕩器PCB布線要注意
4.復位電路設計和PCB布線
5.電源,信號線干擾路徑的保護,加濾波TVS等
6.高速信號輸出遠離信號輸入端,如SPI總線,I2C總線布線要遠離ADC,復位,時鐘等布線處,以及其他模擬前端。
一家之言,歡迎糾正
電源電壓的地不穩定造成電源電壓瞬間負電壓導致單片機故障程序不發運行。
我的理解:
1、"跑飛"是因為程序隱患或外部干擾引起的誤動作,致使PC被寫入"出界"數據,跑到了RAM區,或者跑到了FLASH的空白區。如果PC指向了RAM區,哪情況就不好說了!因為程序譯碼器可能得到任意譯碼結果。如果PC指向了FLASH空白區,則可以事先將所有FLASH空白區填入某個你想要的數據,迫使程序譯碼器在這里翻譯出你想要的指令,從而進行相應的處理。在IAR Workbench中好象有在空白區填充數據的設置。
2、"死機"是指PC進入了"死循環",或者是MCLK等于近似為零的值。此時,要想救活MCU,非外狗不可。
*程序運行過程中,如果MCU電源出現問題(電源供電問題,或其它外部電路引起的電源擾動),比較容易出現"跑飛"現象。程序跑飛應該是PC出錯;軟件和硬件都可能出這樣的問題。
死機應該是CPU根本沒有運行,多是硬件方面的問題造成的,比如POR復位不成功,430比較容易出現掉電不完全后重新上電。
有了看門狗就不會死機?
死機是指CPU的程序指針進入一個死循環,無法執行正常的程序流程。其外在表現常常是:正常功能喪失,按鍵無響應,顯示凝固。單片機死機后,只有復全才能走出死循環,執行正常的程序流程。眾所屬知,克服死機的最有效手段是加看門狗(WatchDog)。
目前用得最廣泛的看門狗實際上是一個特殊的定時器DogTimer。DogTimer按固定速率計時,計滿預定時間就發出溢出脈沖使單片機復位。如果每次在DogTimer溢出前強行讓DogTimer清零,就不會發出溢出脈沖。清零脈沖由CPU發出,在單片機程序中每隔一段語句放一個清DogTimer的語句--FeedDog語句,以保證程序正常運行時DogTimer不會溢出。
一旦程序進入一個不含FeedDog語句的死循環,DogTimer將溢出,導致單片機復位,跳出這個死循環。本文稱這種看門狗為典型看門狗,典型看門狗已被集成比,如MAX706、MAX791等[1];還有許多單片機本身集成了這種看門狗,如PIC16C57、MC68HC705等,
有一個錯誤觀點:加了看門狗,單片機就不會死機。實際上,看門狗有時間會完全失效。當程序進入某個死循環,而這個死循環中又包含FeedDog語句,這時DogTimer始終不會溢出,單片機始終得不到復位信號,程序也就始終跳不出這個死循環。針對這一弊端,筆者設計了雙對限看門狗和定時復位看門狗。
雙時限看門狗有兩個定時器;一個為短定時器,一個為長定時器。短定時器定時為T1,長定時器定時為T2,0
這樣,當程序進入某個死循環,如果這個死循環包含短定時器FeedDog語句而不包含長定時器FeedDog語句,那么長定時順終將溢出,使單片機復位。巧妙安排長定時器FeedDog語句的位置,可保證出現死機的概率根低。在水輪發電機組微機控制裝置中的對比應用證明了這一點。
目前幾乎所有的看門狗都是依賴于CPU(依賴于CPU FeedDog)。這可以比作:一個保險設備能否起到保險作用還依賴于被它保護的對象的行為。顯然,依賴于CPU的看門狗是不能保證單片機在分之百不死機的。
在絕對不允許死機的裝置中,筆者設計了一種完全不依賴于CPU的看門狗--定時復位看門狗。定時復位看門狗的主體也是一個定時器,到預定時間就發出溢出脈沖,此溢出脈沖使單片機強行復位。定時復位看門狗不需要CPU FeedDog。
簡言之,定時復位看門狗就是定時地讓單片機強行復位。這樣,即使裝置死機,其最大死機時間也不會大于定時器定時時間。顯然,只要硬件完好,這種看門狗百分之百地保證了單片機不會長時間死機。
在智能電表(包括IC卡電能表、復費率電能表、多功能電能表)中采用了定時復位看門狗,每1秒讓CPU強行復位,迄今數十萬電表運行了近五年,無一例死機報告。
來源:
(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 單片機基礎及應用:單片機并行存儲器擴展資料下載
- 這7個規則能幫你做好單片機開發資料下載
- 10個單片機編程應用技巧總結資料下載
- 單片機程序為什么會死機跑飛資料下載
- PIC單片機RC振蕩器的使用及校準方法資料下載
- 小白學單片機(15) 單片機程序下載失敗總結資料下載
- STM32單片機JTAG的復用方法解析資料下載
- 深度解析STM32單片機JTAG的復用方法資料下載
- 記住這7條,能幫你在電子設計時選出優秀的單片機資料下載
- 單片機常用的11個基礎問答資料下載
- 單片機應用測試內容及實現方法資料下載
- 單片機的8個常用概念資料下載
- 單片機軟件抗干擾方法的分析資料下載
- 51單片機的ubuntu環境搭建方法資料免費下載
- STC單片機與Atmel單片機的下載方法詳細資料介紹 4次下載
- 單片機最小系統的設計方法和原理分析 2031次閱讀
- 51單片機燒寫程序的方法 4929次閱讀
- 基于單片機的定時器的設計方法 1w次閱讀
- 使用單片機實現復位電路的資料詳細說明 4562次閱讀
- 單片機實現多機通信的資料和程序 7540次閱讀
- 如何自制一個AVR單片機ISP下載線 3894次閱讀
- 如何對STC單片機進行免掉電下載 2118次閱讀
- 如何避免單片機死機 5958次閱讀
- 開發一個51單片機最小系統的資料說明 4566次閱讀
- 新手學習單片機的首選:51單片機 8536次閱讀
- 單片機的通信性能分析與評價方法 2102次閱讀
- 詳細圖文剖析STM32單片機串口一鍵下載電路與操作方法 4.6w次閱讀
- STC單片機程序燒錄與ISP下載相關知識 9934次閱讀
- 單片機基礎知識:單片機集成電路封裝類型及引腳識別方法 1w次閱讀
- 單片機程序總跑飛?小技巧幫你忙 8538次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多