久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 9139|回復: 0
收起左側

關于MCU看門狗最通俗的介紹

[復制鏈接]
ID:102668 發表于 2016-1-14 02:57 | 顯示全部樓層 |閱讀模式
本帖最后由 51hei社區 于 2016-1-14 03:10 編輯

看門狗WatchDog 是一個很重要的資源,他能夠有效的防止系統進入死循環或者程序跑飛。
0.png
工作原理:在系統運行以后也就啟動了看門狗的計數器,看門狗就開始自動計數,如果到了一定的時間還不去清看門狗,那么看門狗計數器就會溢出從而引起看門狗中斷,造成系統復位。

看門狗是類似與硬件保護卡之類.保護硬盤數據的.

是單片機一個復位芯片,在單片機遇到異常情況之下自動復位!~~

看門狗電路是用來看著你的CPU的,作用是不讓你的程序丟失。

看門狗實際上是一個計數器,一般給看門狗一個大數,程序開始運行后看門狗開始倒計數。如果程序運行正常,過一段時間CPU應發出指令讓看門狗復位,重新開始倒計數。如果看門狗減到0就認為程序沒有正常工作,強制整個系統復位。

一般是為了程序進入死循環或死機!有的單片機不需外加看門狗電路(PIC)。

看門狗定時器對微控制器提供了獨立的保護系統.當系統出現故障時,在可選的超時周期之后,看門狗將以RESET信號作出響應.x25045就可選超時周期為1.4,600毫秒,200毫秒三種.當你的程序死機時,x25045就會使單片機復位.

硬件看門狗WatchDog

是一個自我保護裝置.他時刻監視系統的運行.一旦系統運行不正常.看門狗會復位系統.實際上看門狗是一個計時器.你要讓這個計時器置零前給她一個信號.讓他重新計時.這樣起到一個監視系統運行的作用.

一般很多MCU帶有這個電路。但是你可以不使用它。這樣在上電的時候禁止他。如果你要使用watchdog,那么你的系統就必須每隔一段時間給這個電路一個信號。

如果你說的是軟件看門狗,那么它的意思是:你可以創建一個看門狗,創建后開始計時,如果中間不被取消什么的,一段時間之后--這個時間通常都可以有你自己指定--它就會觸發,而且你可以指定看門狗觸發時執行一個你自己提供的看門狗函數。

那么它的使用就可以是這樣的:為了確認程序會不會走到某個地方,你可以先創建一個看門狗,然后在要確認的地方調用一個取消看門狗計時的函數,如果程序確實走到了那個地方,看門狗被取消,那么看門狗函數就不會被執行;如果看門狗函數被執行了,說明程序沒有走到該處,表明出現了什么錯誤。這就是看門狗的使用。

motorola

mpc860這個芯片有個軟件看門狗,當定時到時,芯片會復位。我看到別人的代碼如下:

void

test(void)

{

啟動看門狗

while(true)

{

...

}

}

照程序看來,如果看門狗不能停止的話,那肯定得重啟了,但在這個程序中,它又如何的停止呢?看門狗用來在一定時間之后重啟CPU,正常情況下不要它重啟CPU,所以定期要“喂狗”,其實就是通知看門狗重新開始計時。這樣一來,如果一切正常,看門狗每次在重啟之前被觸發重新計時,所以就永遠不會重啟。如果程序由于干擾等原因“跑飛”,不知道執行到什么地方去了,看門狗就沒人喂了,時間一長,它就自動重啟,程序恢復正常。

看門狗這東西是加強可靠性用的。

看門狗是不隨主芯片時鐘的停止而停止的,它是一個獨立的計時單元,假如你在程序中使用并設置了看門狗寄存器,在系統加電后它就會啟動,若在指定周期內沒有重置看門狗寄存器(也就是大家常說的喂狗),系統將會重新啟動。

這種設計為系統提供了極高的可靠性,即使系統死鎖,也可以及時的自動恢復系統。

現在地絕大多數mcu都有這個

看門狗的主要操作一般有三種:啟動,觸發和停用.啟動是指設置初始參數并調用中斷以使看門狗開始工作;觸發是指在看門狗的記數器的數值減為零以前對其恢復初始值;停用是指調用中斷停止使用看門狗.在程序中應選擇適當的地方對其進行觸發選擇時有許多講究,程序比較大時會比較難確定,但使用它確實有很多優點不能說不容易用所以就不用

幾乎所有的嵌入式操作系統都有看門狗任務,它的主要功能是防止系統死掉或者陷入死循環。也就是每個一定的時間就會執行看門狗任務,以reset系統.

喂狗的方式舉個例子:在os任務調度的時候順便觸發一下看門狗,這樣一旦任務長時間停止調度系統就會復位,這個功能實現起來很簡單,并不需要應用程序多操什么心。

照一般的看門狗定時的使用方法一般為:

1。設置看門狗控制器;//初始化狗的喚醒時間,使能看門狗

2。睡眠;

//等待,或作其它的事

3。喚醒后檢測中斷位是否是由狗中斷導致的喚醒

4。延時完成,繼續其它程序


看門狗在啟動的時候一般都會設置超時時間,超時時間按照一定的頻率遞減,減到零就復位,所以得定時將一個計時器更新到最大,防止減小到零。超時時間初始化時一般都是固定好的。


回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久成人人人人精品欧 | 欧美日韩在线视频一区 | 日本一道本 | 一区中文字幕 | 国产超碰人人爽人人做人人爱 | 精品一二区 | 亚洲精品国产一区 | 高清亚洲| 久久最新 | 中文字幕在线精品 | 91一区二区三区 | 欧美激情精品久久久久久变态 | 五月婷亚洲 | 草久久久| 婷婷亚洲综合 | 中文字幕国产高清 | 亚洲色图婷婷 | 欧美a级网站 | 亚洲精品一区二区三区四区高清 | 91高清视频在线观看 | 亚洲欧美日韩精品久久亚洲区 | 日本不卡一二三 | 精品影院 | 黄色免费三级 | 美女久久久久久久 | 国产精品久久久久久久久免费相片 | 亚洲91精品 | 狠狠色综合欧美激情 | 蜜桃av鲁一鲁一鲁一鲁 | 一区二区三区四区国产 | 99热在线免费 | 成人在线视频网站 | 国产一级特黄视频 | 91www在线观看 | 谁有毛片 | 国产一区精品 | 亚洲精品电影在线观看 | 欧美黄色网 | 国产区精品 | 国产一区二区三区四区在线观看 | 国产精品区二区三区日本 |