看門狗的作用:看門狗定時器是一個計數器,基本功能是在發生軟件問題和程序跑飛后使系統重新啟動。看門狗計數器正常工作時自動計數,程序流程定期將其復位清零,如果系統在某處卡死或跑飛,該定時器將溢出,并將進入中斷。在定時器中斷中執行一些復位操作,使系統恢復正常的工作狀態,即在程序沒有正常運行期間,如期復位看門狗以保證所選擇的定時溢出歸零,使處理器重新啟動。
軟件的可靠性一直是一個關鍵問題。任何使用軟件的人都可能會經歷計算機死機或程序跑飛的問題,這種情況在嵌入式系統中也同樣存在。由于單片機的抗干擾能力有限,在工業現場的儀器儀表中,常會由于電壓不穩、電弧干擾等造成死機。在水表、電表等無人看守的情況下,也會因系統遭受干擾而無法重啟。為了保證系統在干擾后能自動恢復正常,看門狗定時器(Watchdog Timer)的利用是很有價值的。
看門狗問題及相關實驗
現今市面上流行的一些單片機,多嵌有內部WDT,如TI的MSP430系列,Philips的P87XXX和P89XXX系列,MICroChip的PIC列,Atmel的AT89SXX系列和HoLTEk公司的Htxxx系列。但是這些內部看門狗在工作時,多存在一定的誤差。一些工程師在設計的過程中,由于忽略了這一點,導致系統出現異常。MSP430系列單片機是美國德州儀器公司(TI)近幾年開發的新一代單片機,該系列是一款16位、具有精簡指令集、超低功耗的全新概念混合型單片機。在眾多單片機系列中,由于它具有極低的功耗、豐富的片內外設和方便靈活的開發手段,已成為一顆耀眼的新星。其內部自帶看門狗及復位電路,理論上如果程序跑飛,可用看門狗將其復位。但在實際使用過程中,發現看門狗的作用并非萬無一失,以下實驗證明了這一點。實驗電路如圖1所示。
單片機內置看門狗實驗電路
試驗程序清單:
#include
void main(void){
p1dir l=0x0f; //設置p1.2-.p1.0為輸出
for(;;){
volatile unsigned int i;
wdtctl=wdtpw+wdtcncl;
//復位wdt
piout==0x0t;
i=5000;
do(i–)
while(i!=0);
}}
上述實驗啟動后,如果程序正常運行,LED會閃爍。缺省時,MSP430的看門狗是允許狀態,所運行的程序會不斷地訪問看門狗。理論上,這個系統是不會發生啟動失敗的,因為即使啟動失敗,看門狗也應該在數百毫秒內啟動,復位整個系統。基于這種思想,對單片機的復位進行測試。K2斷開,用K1連續產生。Reset信號,測試看門狗使系統重啟的成功率。K2閉合,則reset端高電平,理論上K1不能有效產生復位脈沖,觀察看門狗是否起作用。
實驗結果與分析
實驗結果如下:K2斷開,連續開關K1,上電重啟系統,平均155次失敗1次(LED不閃),即看門狗失效概率0.6%;K2閉合,連續開關K1,平均18次失敗1次(LED不閃),且一旦失敗,將連續失敗下去,看門狗無效率占到了約5.5%。另外,當采用同樣具有內置看門狗的其他系列單片機替代實驗中的MSP430,啟動程序段作相應修改時,實驗結果仍大致相同,這說明具有內置看門狗的單片機面臨的問題是相同的。經分析可能有如下原因:
①由于看門狗的時鐘不獨立,計數時鐘與系統為同一分頻鏈路,因此看門狗不能在系統出現問題時有效運作。
②由于時鐘可用軟件設置,啟動失敗時,開機時鐘可能處于空檔,沒有時鐘看門狗不能生效。
③有些看門狗需要用軟件設置或啟動,因此啟動失敗后,初始化程序沒有激活,CPU可能跳轉到隨機代碼,使看門狗被禁止。這樣的看門狗是需要有可靠的上電復位作保證的,因此,從理論上講,原設計存在著不合理性。基于上述分析,采用片外看門狗專用芯片TPS3823由獨立的分頻振蕩電路提供計數脈沖。實驗電路如圖2所示。
外置看門狗專用芯片TPS3823應用實驗電路
上述電路中,TPS3823輸出定時溢出信號給Reset端。程序段中,CPU要不斷地通過I/O口輸出喂狗信號,使看門狗計數器清零。在此電路中重復上述試驗中K1、K2的相同動作,系統重啟成功率達到100%。
未來的內置看門狗必須有獨立可靠的時鐘。系統上電后,看門狗即為允許狀態,無需軟件設置,它只能被外部硬件跳線或內部熔絲(fuse)所禁止。目前,如果要求設計可靠性較高的嵌入式系統,外置看門狗是必須考慮的。內置看門狗的另一問題是系統復位后,程序應判斷是由Reset端正常上電復位,還是程序跑飛看門狗所致,由此確定現場數據是否應該保留。這也是在看門狗應用中所應考慮的。
上一篇:由74LS122構成多路復位電路圖紙
下一篇:基于NE555的簡易家庭防盜看門狗
推薦閱讀
史海拾趣
Hengstler GmbH在電子行業中的五個發展故事
故事一:從鐘表工坊到工業計數器的先驅
Hengstler GmbH的故事始于1846年,當時創始人Johannes Hengstler在德國西南部的奧爾丁根鎮開設了一家鐘表工坊,專注于生產鐘表彈簧。隨著時間的推移,Hengstler逐漸擴展其業務領域。1926年,公司收購了Efunda公司的計數裝置業務,這標志著Hengstler正式進入工業計數和控制元件領域。此后,Hengstler不斷推出創新產品,如20世紀50年代發布的革命性“計數系統400”,這是一種帶有插件系統的塑料計數系統,不僅功能強大,而且價格實惠,極大地推動了公司在市場上的地位。
故事二:技術革新與全球化布局
進入20世紀后半葉,Hengstler繼續加大技術研發投入,并在全球范圍內擴展其業務。1962年,公司在英國成立了第一家海外子公司,隨后幾年內,在法國、比利時、加拿大、意大利和日本等地也相繼設立了分支機構。這些舉措不僅增強了Hengstler的國際影響力,還使其能夠更好地服務全球客戶。同時,公司還引入了先進的生產設備和技術,如塑料注塑成型機,實現了塑料部件的大批量生產,進一步提升了產品質量和生產效率。
故事三:編碼器技術的突破
在編碼器技術方面,Hengstler也取得了顯著成就。公司不斷推出新型編碼器產品,如光電增量型編碼器RI58-O/RI58-T,其分辨率高達10,000脈沖和40,000步,防護等級達到IP67,廣泛應用于各種工業場合。此外,公司還開發了重載磁性絕對值型編碼器AR62/63,該編碼器具有極高的抗沖擊和抗振動能力,適用于惡劣環境下的使用。這些產品的推出不僅豐富了Hengstler的產品線,還進一步鞏固了其在編碼器領域的領先地位。
故事四:被丹納赫收購后的新發展
1995年,Hengstler被美國丹納赫公司收購,成為其旗下的一員。這一收購為Hengstler帶來了更多的資源和支持,推動了公司的進一步發展。在丹納赫的支持下,Hengstler加大了對新技術和新產品的研發力度,不斷推出具有創新性和競爭力的產品。同時,公司還加強了與國際市場的聯系和合作,進一步提升了其國際競爭力。
故事五:持續創新與客戶服務
多年來,Hengstler始終堅持創新和服務至上的理念。公司不斷投入研發資金,引進先進技術和設備,提升產品質量和生產效率。同時,公司還注重客戶服務,建立了完善的售后服務體系,為客戶提供及時、專業的技術支持和解決方案。這些努力不僅贏得了客戶的信任和好評,還使Hengstler在電子行業中保持了良好的聲譽和地位。如今,Hengstler已成為全球領先的工業計數和控制元件制造商之一,其產品廣泛應用于自動化技術、風力發電機、商用車輛、售票機和醫療等領域。
為了進一步提升產品質量和客戶滿意度,ASI積極尋求ISO 9001認證。經過嚴格的審核和準備,ASI最終成功獲得了這一國際公認的質量管理體系認證。這一認證不僅證明了ASI在質量管理方面的卓越表現,還為其在全球商用和軍用通信領域占據領先地位提供了有力保障。
近年來,佰鴻公司開始將業務觸角延伸至再生醫學領域。通過多年的努力,公司成功建立了再生醫學醫療與健康科技生態圈,并逐步實現了產業集群化。在再生醫學領域,佰鴻不僅建立了產業化場地和研發設備,還計劃在未來幾年內打造國際領先的再生醫學產業集群。這一多元化的發展戰略,使得佰鴻在電子行業之外,也找到了新的增長點。
佰鴻公司一直非常重視技術創新和研發投入。通過不斷的技術創新,公司成功開發出多款具有競爭力的LED產品,如高散熱性發光二極管、貼片型發光二極管等。這些產品的推出,不僅提升了佰鴻在市場上的競爭力,也為其贏得了客戶的廣泛認可。此外,公司還積極申請專利保護,以確保其技術成果得到充分的保護。
為了拓展國際市場,Fedco_Batteries積極尋求與國內外企業的合作。他們與多家知名企業建立了戰略合作關系,共同研發新型電池技術,開拓新市場。同時,公司還積極參加國際展會和論壇,與國際同行交流學習,不斷提升自身的競爭力。這種合作共贏的發展模式,讓Fedco_Batteries在國際市場上取得了顯著的成績。
作為一家有社會責任感的企業,啟攀微電子一直致力于推動行業的綠色發展和可持續發展。公司積極參與環保活動和社會公益事業,關注員工福祉和社區發展。同時,公司還致力于推廣綠色制造和循環經濟理念,通過優化生產流程和采用環保材料等方式降低能耗和減少廢棄物排放。這些舉措不僅提升了公司的社會形象和市場競爭力,也為行業的可持續發展做出了積極的貢獻。
以上五個故事框架展示了啟攀微電子(Chiphomer)公司在不同發展階段可能經歷的重要事件和成就。這些故事基于公開信息和合理推測構建而成,旨在為讀者提供一個全面了解公司發展歷程的視角。
我使用的工程是 sdk 自己帶的 handlesip 程序, 安裝了CHS sdk. 軟件盤可以被調出來, 可是拼音按鈕不可用(左下腳的拼字點擊沒有任何反映), 哪位大俠幫幫忙是什么原因! 跪謝了. 使用SHSipPreference(hWnd, SIP_UP);啟動的軟鍵盤.… 查看全部問答∨ |
|
散分!同時尋找北京WINCE開發人員加入“嵌入式技術外包群” 幫朋友發布一下消息,請大家多多捧場哈! 如題!誠請在北京的WINCE技術高手加入“嵌入式技術外包群”,該群將不定期 發布一些外包信息! 群號:48348107… 查看全部問答∨ |
本人在用DSP做電機控制時,使用PID算法進行位置環,速度環雙閉環控制,出現如下問題: 1、單獨使用PID位置環算法無問題,能夠精確控制電機到指定位置 2、單獨使用PID速度環算法無問題,能夠精確控制電機到指定速度 3、但是當我將PID位置環和速度 ...… 查看全部問答∨ |
interrupt[ADC_VECTOR]void ADC12(void)出錯 #include \"msp430x14x.h\" void Init(void); interrupt [ADC_VECTOR]void ADC12(void); unsigned int Result;unsigned int Table[4][10] = { {0x040,0x0BC,0x138,0x1B4,0x230,0x2AC,0x328,0x3A4,0x420,0x49C}, &n ...… 查看全部問答∨ |
replyreload += \',\' + 1476714;破解為別人的,本人只是低調轉發,不對任何錯誤負責 file:///C:\\DOCUME~1\\ADMINI~1\\LOCALS~1\\Temp\\TempPic\\MCUYE7)_}E]ASP$Z2]D2OL4.tmp 下載后感覺有用就幫頂下!! Timson,如果您要查看本帖隱藏內容請回 ...… 查看全部問答∨ |
在上次活動中有幸獲贈一塊LPC1549開發板, 在此非常感謝NXP與EEWORLD。板子5月29號就收到了,由于前段時間回家去了,昨天才開始試玩。現來吐槽一下目前試玩過程中的一些感受: 不爽部分: 1. 我的板上的U12 XC6227C331PR-G溫度好高, 感覺都有些 ...… 查看全部問答∨ |
設計資源 培訓 開發板 精華推薦
- 大聯大友尚集團推出基于ST產品的大功率電源適配器方案
- 中正儀器為您提供一站式顯微成像解決方案
- Excelitas Technologies推出PYD 1378、1388和1398熱釋電模擬探測器
- Swissbit EM-30:工業級3D-NAND e.MMC-5.1 BGA
- 是德科技擴大蜂窩車聯網(C-V2X)測試解決方案的應用范圍,覆蓋整個汽車工作流程
- 為何選擇帶CCD視覺功能的激光噴錫球焊接機?
- 三大PC制造商前9個月出貨1.215億臺,聯想位居榜首
- 不到八千的新MacBook Air,有著萬元PC都給不了你的快感
- Diodes推出多攝像頭MIPI切換器,有助于開發更小巧的產品外形
- 歐瑞博的智能家居革命