999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

淺談“看門(mén)狗”的應(yīng)用及設(shè)計(jì)思路

2010-08-15 00:52:53
科技傳播 2010年16期
關(guān)鍵詞:單片機(jī)程序系統(tǒng)

邢 闖

咸陽(yáng)市規(guī)劃設(shè)計(jì)研究院,陜西 咸陽(yáng) 712000

在由單片機(jī)構(gòu)成的微型計(jì)算機(jī)系統(tǒng)中,由于單片機(jī)的工作常常會(huì)受到來(lái)自外界電磁場(chǎng)的干擾,造成程序的跑飛,而陷入死循環(huán),程序的正常運(yùn)行被打斷,由單片機(jī)控制的系統(tǒng)無(wú)法繼續(xù)工作,會(huì)造成整個(gè)系統(tǒng)的陷入停滯狀態(tài),發(fā)生不可預(yù)料的后果,所以出于對(duì)單片機(jī)運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)測(cè)的考慮,便產(chǎn)生了一種專門(mén)用于監(jiān)測(cè)單片機(jī)程序運(yùn)行狀態(tài)的芯片,俗稱“看門(mén)狗”。

1 應(yīng)用

看門(mén)狗電路的應(yīng)用,使單片機(jī)可以在無(wú)人狀態(tài)下實(shí)現(xiàn)連續(xù)工作,其工作原理是:看門(mén)狗芯片和單片機(jī)的一個(gè)I/O引腳相連,該I/O引腳通過(guò)程序控制它定時(shí)地往看門(mén)狗的這個(gè)引腳上送入高電平(或低電平),這一程序語(yǔ)句是分散地放在單片機(jī)其它控制語(yǔ)句中間的,一旦單片機(jī)由于干擾造成程序跑飛后而陷入某一程序段進(jìn)入死循環(huán)狀態(tài)時(shí),寫(xiě)看門(mén)狗引腳的程序便不能被執(zhí)行,這個(gè)時(shí)候,看門(mén)狗電路就會(huì)由于得不到單片機(jī)送來(lái)的信號(hào),便在它和單片機(jī)復(fù)位引腳相連的引腳上送出一個(gè)復(fù)位信號(hào),使單片機(jī)發(fā)生復(fù)位,即程序從程序存儲(chǔ)器的起始位置開(kāi)始執(zhí)行,這樣便實(shí)現(xiàn)了單片機(jī)的自動(dòng)復(fù)位。

看門(mén)狗是一個(gè)定時(shí)器電路,一般有一個(gè)輸入,叫喂狗,一個(gè)輸出到MCU的RST端,MCU正常工作的時(shí)候,每隔一端時(shí)間輸出一個(gè)信號(hào)到喂狗端,給 WDT 清零,如果超過(guò)規(guī)定的時(shí)間不喂狗,(一般在程序跑飛時(shí)),WDT 定時(shí)超過(guò),就回給出一個(gè)復(fù)位信號(hào)到MCU,是MCU復(fù)位。 防止MCU死機(jī)??撮T(mén)狗的作用就是防止程序發(fā)生死循環(huán),或者說(shuō)程序跑飛。

2 工作原理

在系統(tǒng)運(yùn)行以后也就啟動(dòng)了看門(mén)狗的計(jì)數(shù)器,看門(mén)狗就開(kāi)始自動(dòng)計(jì)數(shù),如果到了一定的時(shí)間還不去清看門(mén)狗,那么看門(mén)狗計(jì)數(shù)器就會(huì)溢出從而引起看門(mén)狗中斷,造成系統(tǒng)復(fù)位。所以在使用有看門(mén)狗的芯片時(shí)要注意清看門(mén)狗。

硬件看門(mén)狗是利用了一個(gè)定時(shí)器,來(lái)監(jiān)控主程序的運(yùn)行,也就是說(shuō)在主程序的運(yùn)行過(guò)程中,我們要在定時(shí)時(shí)間到之前對(duì)定時(shí)器進(jìn)行復(fù)位如果出現(xiàn)死循環(huán),或者說(shuō)PC指針不能回來(lái)。那么定時(shí)時(shí)間到后就會(huì)使單片機(jī)復(fù)位。常用的WDT芯片如MAX813,5045,IMP 813等。

軟件看門(mén)狗技術(shù)的原理和這差不多,只不過(guò)是用軟件的方法實(shí)現(xiàn),我們還是以51系列來(lái)講,我們知道在51單片機(jī)中有兩個(gè)定時(shí)器,我們就可以用這兩個(gè)定時(shí)器來(lái)對(duì)主程序的運(yùn)行進(jìn)行監(jiān)控。我們可以對(duì)T0設(shè)定一定的定時(shí)時(shí)間,當(dāng)產(chǎn)生定時(shí)中斷的時(shí)候?qū)σ粋€(gè)變量進(jìn)行賦值,而這個(gè)變量在主程序運(yùn)行的開(kāi)始已經(jīng)有了一個(gè)初值,在這里我們要設(shè)定的定時(shí)值要小于主程序的運(yùn)行時(shí)間,這樣在主程序的尾部對(duì)變量的值進(jìn)行判斷,如果值發(fā)生了預(yù)期的變化,就說(shuō)明T0中斷正常,如果沒(méi)有發(fā)生變化則使程序復(fù)位。對(duì)于T1我們用來(lái)監(jiān)控主程序的運(yùn)行,我們給T1設(shè)定一定的定時(shí)時(shí)間,在主程序中對(duì)其進(jìn)行復(fù)位,如果不能在一定的時(shí)間里對(duì)其進(jìn)行復(fù)位,T1 的定時(shí)中斷就會(huì)使單片機(jī)復(fù)位。在這里T1的定時(shí)時(shí)間要設(shè)的大于主程序的運(yùn)行時(shí)間,給主程序留有一定的的裕量。而T1的中斷正常與否我們?cè)儆蒚0定時(shí)中斷子程序來(lái)監(jiān)視。這樣就夠成了一個(gè)循環(huán),T0監(jiān)視T1,T1監(jiān)視主程序,主程序又來(lái)監(jiān)視T0,從而保證系統(tǒng)的穩(wěn)定運(yùn)行。

51系列有專門(mén)的看門(mén)狗定時(shí)器,對(duì)系統(tǒng)頻率進(jìn)行分頻計(jì)數(shù),定時(shí)器溢出時(shí),將引起復(fù)位,看門(mén)狗可設(shè)定溢出率,也可單獨(dú)用來(lái)作為定時(shí)器使用。

凌陽(yáng)61的看門(mén)狗比較單一,一個(gè)是時(shí)間單一,第二是功能在實(shí)際的使用中只需在循環(huán)當(dāng)中加入清狗的指令就OK了。

AVR系列中,avr-libc 提供3個(gè)API 支持對(duì)器件內(nèi)部Watchdog 的操作,它們分別是:

wdt_reset() // Watchdog 復(fù)位

wdt_enable(timeout) // Watchdog 使能

wdt_disable() // Watchdog 禁止

C8051Fxxx單片機(jī)內(nèi)部也有一個(gè)21位的使用系統(tǒng)時(shí)鐘的定時(shí)器,該定時(shí)器檢測(cè)對(duì)其控制寄存器的兩次特定寫(xiě)操作的時(shí)間間隔。如果這個(gè)時(shí)間間隔超過(guò)了編程的極限值,將產(chǎn)生一個(gè)WDT復(fù)位。

3 注意事項(xiàng)

大多數(shù)51 系列單片機(jī)都有看門(mén)狗,當(dāng)看門(mén)狗沒(méi)有被定時(shí)清零時(shí),將引起復(fù)位。這可防止程序跑飛。設(shè)計(jì)者必須清楚看門(mén)狗的溢出時(shí)間以決定在合適的時(shí)候,清看門(mén)狗。清看門(mén)狗也不能太過(guò)頻繁否則會(huì)造成資源浪費(fèi)。程序正常運(yùn)行時(shí),軟件每隔一定的時(shí)間(小于定時(shí)器的溢出周期)給定時(shí)器置數(shù),即可預(yù)防溢出中斷而引起的誤復(fù)位。

4 系統(tǒng)軟件"看門(mén)狗"的設(shè)計(jì)思路

1)看門(mén)狗定時(shí)器T0的設(shè)置。在初始化程序塊中設(shè)置T0的工作方式,并開(kāi)啟中斷和計(jì)數(shù)功能。系統(tǒng)Fosc=12 MHz,T0為16位計(jì)數(shù)器,最大計(jì)數(shù)值為(2的10次方)-1=65535,T0輸入計(jì)數(shù)頻率是.Fosc/12,溢出周期為(65535+1)/1=65536(μs)。

2)計(jì)算主控程序循環(huán)一次的耗時(shí)。考慮系統(tǒng)各功能模塊及其循環(huán)次數(shù),本系統(tǒng)主控制程序的運(yùn)行時(shí)間約為16.6 ms。系統(tǒng)設(shè)置"看門(mén)狗"定時(shí)器T0定時(shí)30 ms(T0的初值為65536-30000=35536)。主控程序的每次循環(huán)都將刷新T0的初值。如程序進(jìn)入“死循環(huán)”而T0的初值在30ms內(nèi)未被刷新,這時(shí)"看門(mén)狗"定時(shí)器T0將溢出并申請(qǐng)中斷。

3)設(shè)計(jì)T0溢出所對(duì)應(yīng)的中斷服務(wù)程序。此子程序只須一條指令,即在T0對(duì)應(yīng)的中斷向量地址(000BH)寫(xiě)入“無(wú)條件轉(zhuǎn)移”命令,把計(jì)算機(jī)拖回整個(gè)程序的第一行,對(duì)單片機(jī)重新進(jìn)行初始化并獲得正確的執(zhí)行順序。

看門(mén)狗也有對(duì)計(jì)算機(jī)危害之處。如果用看門(mén)狗軟件加密并發(fā)送到環(huán)形網(wǎng)絡(luò)內(nèi)(如學(xué)校機(jī)房),將會(huì)造成每發(fā)送一次,兩臺(tái)電腦同時(shí)中毒一天,還會(huì)持續(xù)一周蔓延。如:運(yùn)行速度超慢,桌面背景變換,畫(huà)圖軟件要黑色出綠色等等。還會(huì)造成每臺(tái)電腦少幾個(gè)文件。

猜你喜歡
單片機(jī)程序系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無(wú)人機(jī)系統(tǒng)
ZC系列無(wú)人機(jī)遙感系統(tǒng)
基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機(jī)的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機(jī)的便捷式LCF測(cè)量?jī)x
電子制作(2019年9期)2019-05-30 09:42:02
試論我國(guó)未決羈押程序的立法完善
“程序猿”的生活什么樣
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
主站蜘蛛池模板: 亚洲中文精品久久久久久不卡| 精品色综合| 国产91特黄特色A级毛片| 国产成人免费视频精品一区二区| 亚洲欧洲日产国码无码av喷潮| 欧美日韩国产在线人成app| 色香蕉影院| 欧美午夜在线播放| 国产鲁鲁视频在线观看| 亚洲欧美日韩久久精品| 国产浮力第一页永久地址| 超清无码熟妇人妻AV在线绿巨人| 国产精品欧美激情| 日韩天堂视频| 日韩国产另类| 日韩精品一区二区三区免费| 国产jizzjizz视频| 精品亚洲麻豆1区2区3区| 中文字幕色在线| 亚洲成aⅴ人片在线影院八| 视频二区中文无码| 少妇露出福利视频| 韩日免费小视频| 亚洲天堂高清| 亚洲色图欧美在线| 亚洲人成影视在线观看| 国产一区二区三区在线观看视频| 青青草原国产| 国产一区二区网站| 一级福利视频| 久久免费精品琪琪| av在线手机播放| 免费毛片网站在线观看| 亚洲男人的天堂久久精品| 国产麻豆va精品视频| 国产日韩欧美在线视频免费观看| 欧美69视频在线| 黄色网站不卡无码| 国产精品一区二区久久精品无码| 久久免费视频播放| 国内精品自在自线视频香蕉| 亚洲天堂久久| av大片在线无码免费| 三区在线视频| 一级成人a做片免费| 欧美另类图片视频无弹跳第一页 | 国产午夜精品鲁丝片| 色综合中文综合网| h视频在线观看网站| 在线观看亚洲人成网站| 亚洲成人黄色在线观看| 三上悠亚在线精品二区| 亚洲国产日韩在线观看| 中日韩欧亚无码视频| 日韩高清中文字幕| 日本国产精品一区久久久| 夜夜操国产| 日韩天堂视频| 欧美日韩中文字幕在线| 国产va在线| 亚洲午夜福利精品无码不卡 | 久久美女精品| 国产成人一二三| 美女一级毛片无遮挡内谢| 一级毛片免费观看不卡视频| 亚洲成人福利网站| 免费毛片全部不收费的| 国产人成乱码视频免费观看| 亚洲第一天堂无码专区| 欧美人与牲动交a欧美精品| jizz在线观看| 少妇精品在线| 网友自拍视频精品区| 久久国产V一级毛多内射| av一区二区无码在线| 国产乱子伦精品视频| a网站在线观看| 久久国产精品嫖妓| 五月婷婷伊人网| 日本一区中文字幕最新在线| 91网红精品在线观看| 五月婷婷伊人网|