基于CD4060的硬件看門狗技術(shù)
發(fā)布時(shí)間:2008/5/28 0:00:00 訪問次數(shù):1644
多年來,圍繞著單片機(jī)應(yīng)用系統(tǒng)的抗干擾技術(shù)以及其受干擾后的自我恢復(fù),在硬件和軟件等方面積累了多種方法,這些方法相互結(jié)合,配合使用,有效地提高了系統(tǒng)的可靠性與抗干擾性。
看門狗(watch dog timer,簡(jiǎn)稱為wdt)技術(shù)就是最常見的抗干擾技術(shù)。看門狗wdt有硬件看門狗和軟件看門狗之分,無論是硬件看門狗還是軟件看門狗實(shí)際上都是一個(gè)可清零的定時(shí)計(jì)數(shù)器。如果該定時(shí)計(jì)數(shù)器用mcu芯片外部電路實(shí)現(xiàn),則為硬件看門狗,如果該定時(shí)計(jì)數(shù)器用mcu芯片內(nèi)部定時(shí)器/計(jì)數(shù)器實(shí)現(xiàn),則稱為軟件看門狗。
本文介紹硬件看門狗技術(shù),并給出了實(shí)用的基于cd4060的硬件看門狗電路。
1 硬件看門狗電路及其工作原理
它是針對(duì)工程項(xiàng)目所設(shè)計(jì)的一個(gè)實(shí)用電路,并且該電路實(shí)際使用情況良好。下面介紹電路的組成及其工作原理。
看門狗電路由14位二進(jìn)制計(jì)數(shù)器cd4060和三極管vt1、vt2等組成。
單片機(jī)at89c51的p1.7口設(shè)計(jì)成輸出口,由at89c51的cpu向看門狗電路發(fā)送喂狗信號(hào)——正脈沖,在兩個(gè)正脈沖間隔內(nèi),p1.7保持為低電平(此功能要結(jié)合軟件才能實(shí)現(xiàn),相應(yīng)的軟件設(shè)計(jì)在下面介紹)。我們知道,單片機(jī)at89c51的i/o口帶灌電流負(fù)載的能力比較大,每個(gè)引腳低電平時(shí)的吸入電流為20 ma,帶拉電流負(fù)載的能力卻很小,實(shí)測(cè)情況是,每個(gè)引腳高電平時(shí)的輸出電流僅25μa,現(xiàn)在p1.7口被設(shè)計(jì)成帶拉電流負(fù)載的方式,為了提高p1.7口帶拉電流負(fù)載的能力,所以,電路中設(shè)置了上拉電阻r3。
14位二進(jìn)制計(jì)數(shù)器cd4060的計(jì)數(shù)脈沖由其內(nèi)部振蕩器和外接阻容元件r1、r2、c1組成的電路產(chǎn)生,振蕩周期為
t0sc=2.2×r1×c1=0.22 ms
振蕩器產(chǎn)生的計(jì)數(shù)脈沖(矩形波)可以直接引出,同時(shí)還可以從cd4060的10個(gè)輸出端q4~q10和q12~q14得到不同分頻系數(shù)的方波輸出,各方波輸出信號(hào)的周期如表1所示。這樣,如果cd4060得不到cpu通過p1.7口發(fā)送來的喂狗信號(hào)——正脈沖,則cd4060的輸出端q14在1.8s內(nèi)將產(chǎn)生一個(gè)完整周期的方波信號(hào),而且低電平在前,高電平在后,其高電平經(jīng)三極管vt1、vt2處理后形成單片機(jī)at89c51的復(fù)位信號(hào),使單片機(jī)at89c51復(fù)位。由此可見,單片機(jī)at89c51正常工作時(shí),只要在0.9s內(nèi)從p1.7口送出一個(gè)正脈沖,便可及時(shí)清零看門狗,輸出端q14就不會(huì)產(chǎn)生定時(shí)溢出信號(hào),從而使看門狗電路對(duì)單片機(jī)系統(tǒng)不起作用。并且,從cd4060的10個(gè)輸出端q4~q10和q12~q14可以得到不同周期的方波信號(hào),經(jīng)三極管vt1、vt2處理后形成單片機(jī)系統(tǒng)的復(fù)位信號(hào),可以適應(yīng)不同用戶應(yīng)用程序,從而該硬件看門狗電路可以適應(yīng)不同的單片機(jī)應(yīng)用系統(tǒng)。
對(duì)mcs-51系列的單片機(jī)而言,它所需要的復(fù)位信號(hào)是高電平寬度大于2個(gè)機(jī)器周期的正脈沖,例如,單片機(jī)的時(shí)鐘脈沖頻率為12 mhz時(shí),則所需要的復(fù)位信號(hào)高電平寬度為2μs以上就可以了,而由上面的分析可知,cd4060的q14輸出的是高電平寬度為0.9 s的方波,如果讓它直接作為單片機(jī)的復(fù)位信號(hào),則單片機(jī)的復(fù)位時(shí)間勢(shì)必在0.9 s以上,這樣盡管可以使程序跑飛的單片機(jī)復(fù)位,但是顯然沒有做到盡快地引導(dǎo)跑飛的程序到正確的軌道來,如果這樣做的話,對(duì)于某些單片機(jī)應(yīng)用系統(tǒng)而言可能帶來非常嚴(yán)重的后果。圖1中的三極管vt1、vt2及其周圍阻容元件構(gòu)成波形轉(zhuǎn)換電路,把較寬的正脈沖變換為較窄的正脈沖,從而較好地解決了上述的問題。三極管vt1、vt2構(gòu)成的2級(jí)直接耦合放大器作為緩沖器使用,它是cd4060的輸出端q14的灌電流負(fù)載,c2、r8是微分電路。
經(jīng)分析后不難看出,電路中的r7、r8、c2還具有單片機(jī)上電復(fù)位的功能。
2 上電復(fù)位與看門狗信號(hào)復(fù)位的不同處理過程
由于程序跑飛很可能會(huì)造成一些隨機(jī)破壞事件,對(duì)某些系統(tǒng)而言,希望盡可能從斷點(diǎn)處恢復(fù)運(yùn)行,因此,有必要妥善解決跑飛的程序回復(fù)后的處理。
單片機(jī)應(yīng)用系統(tǒng)上電時(shí),上電復(fù)位電路會(huì)使得單片機(jī)處于復(fù)位狀態(tài),這一般稱為冷啟動(dòng),這種情況下,單片機(jī)處于復(fù)位狀態(tài)表現(xiàn)為:
(1) 程序計(jì)數(shù)器pc的值為0000h。
(2) i/o口(p0、p1、p2、p3(1))為ffh狀態(tài),即準(zhǔn)雙向i/o口的輸入狀態(tài)。
(3) 堆棧指示器sp=07h,即堆棧底為片內(nèi)ram的07h單元。
(4) 除上述狀態(tài)外,所有特殊功能寄存器sfr的有效位均為0。
(5) 上電復(fù)位時(shí),由于是重新供電,ram在斷電時(shí)數(shù)據(jù)丟失,上電復(fù)位后為隨機(jī)數(shù)。
單片機(jī)應(yīng)用系統(tǒng)的程序跑飛時(shí),看門狗產(chǎn)生復(fù)位信號(hào),也會(huì)使得單片機(jī)處于復(fù)位狀態(tài),這一般稱為熱啟動(dòng),這種情況下,單片機(jī)處于復(fù)位狀態(tài)表現(xiàn)為:
(1) 程序計(jì)數(shù)器pc的值為0000h。
(2)i/o口(p0、p1、p2、p3)為ffh狀態(tài),即準(zhǔn)雙向i/o口的輸入狀態(tài)。
(3)堆棧指示器sp=07h,即堆棧底為片內(nèi)ram的07h單元。
(4)除上述狀態(tài)外,所有特殊功能寄存器sfr的有效位均為0。
多年來,圍繞著單片機(jī)應(yīng)用系統(tǒng)的抗干擾技術(shù)以及其受干擾后的自我恢復(fù),在硬件和軟件等方面積累了多種方法,這些方法相互結(jié)合,配合使用,有效地提高了系統(tǒng)的可靠性與抗干擾性。
看門狗(watch dog timer,簡(jiǎn)稱為wdt)技術(shù)就是最常見的抗干擾技術(shù)?撮T狗wdt有硬件看門狗和軟件看門狗之分,無論是硬件看門狗還是軟件看門狗實(shí)際上都是一個(gè)可清零的定時(shí)計(jì)數(shù)器。如果該定時(shí)計(jì)數(shù)器用mcu芯片外部電路實(shí)現(xiàn),則為硬件看門狗,如果該定時(shí)計(jì)數(shù)器用mcu芯片內(nèi)部定時(shí)器/計(jì)數(shù)器實(shí)現(xiàn),則稱為軟件看門狗。
本文介紹硬件看門狗技術(shù),并給出了實(shí)用的基于cd4060的硬件看門狗電路。
1 硬件看門狗電路及其工作原理
它是針對(duì)工程項(xiàng)目所設(shè)計(jì)的一個(gè)實(shí)用電路,并且該電路實(shí)際使用情況良好。下面介紹電路的組成及其工作原理。
看門狗電路由14位二進(jìn)制計(jì)數(shù)器cd4060和三極管vt1、vt2等組成。
單片機(jī)at89c51的p1.7口設(shè)計(jì)成輸出口,由at89c51的cpu向看門狗電路發(fā)送喂狗信號(hào)——正脈沖,在兩個(gè)正脈沖間隔內(nèi),p1.7保持為低電平(此功能要結(jié)合軟件才能實(shí)現(xiàn),相應(yīng)的軟件設(shè)計(jì)在下面介紹)。我們知道,單片機(jī)at89c51的i/o口帶灌電流負(fù)載的能力比較大,每個(gè)引腳低電平時(shí)的吸入電流為20 ma,帶拉電流負(fù)載的能力卻很小,實(shí)測(cè)情況是,每個(gè)引腳高電平時(shí)的輸出電流僅25μa,現(xiàn)在p1.7口被設(shè)計(jì)成帶拉電流負(fù)載的方式,為了提高p1.7口帶拉電流負(fù)載的能力,所以,電路中設(shè)置了上拉電阻r3。
14位二進(jìn)制計(jì)數(shù)器cd4060的計(jì)數(shù)脈沖由其內(nèi)部振蕩器和外接阻容元件r1、r2、c1組成的電路產(chǎn)生,振蕩周期為
t0sc=2.2×r1×c1=0.22 ms
振蕩器產(chǎn)生的計(jì)數(shù)脈沖(矩形波)可以直接引出,同時(shí)還可以從cd4060的10個(gè)輸出端q4~q10和q12~q14得到不同分頻系數(shù)的方波輸出,各方波輸出信號(hào)的周期如表1所示。這樣,如果cd4060得不到cpu通過p1.7口發(fā)送來的喂狗信號(hào)——正脈沖,則cd4060的輸出端q14在1.8s內(nèi)將產(chǎn)生一個(gè)完整周期的方波信號(hào),而且低電平在前,高電平在后,其高電平經(jīng)三極管vt1、vt2處理后形成單片機(jī)at89c51的復(fù)位信號(hào),使單片機(jī)at89c51復(fù)位。由此可見,單片機(jī)at89c51正常工作時(shí),只要在0.9s內(nèi)從p1.7口送出一個(gè)正脈沖,便可及時(shí)清零看門狗,輸出端q14就不會(huì)產(chǎn)生定時(shí)溢出信號(hào),從而使看門狗電路對(duì)單片機(jī)系統(tǒng)不起作用。并且,從cd4060的10個(gè)輸出端q4~q10和q12~q14可以得到不同周期的方波信號(hào),經(jīng)三極管vt1、vt2處理后形成單片機(jī)系統(tǒng)的復(fù)位信號(hào),可以適應(yīng)不同用戶應(yīng)用程序,從而該硬件看門狗電路可以適應(yīng)不同的單片機(jī)應(yīng)用系統(tǒng)。
對(duì)mcs-51系列的單片機(jī)而言,它所需要的復(fù)位信號(hào)是高電平寬度大于2個(gè)機(jī)器周期的正脈沖,例如,單片機(jī)的時(shí)鐘脈沖頻率為12 mhz時(shí),則所需要的復(fù)位信號(hào)高電平寬度為2μs以上就可以了,而由上面的分析可知,cd4060的q14輸出的是高電平寬度為0.9 s的方波,如果讓它直接作為單片機(jī)的復(fù)位信號(hào),則單片機(jī)的復(fù)位時(shí)間勢(shì)必在0.9 s以上,這樣盡管可以使程序跑飛的單片機(jī)復(fù)位,但是顯然沒有做到盡快地引導(dǎo)跑飛的程序到正確的軌道來,如果這樣做的話,對(duì)于某些單片機(jī)應(yīng)用系統(tǒng)而言可能帶來非常嚴(yán)重的后果。圖1中的三極管vt1、vt2及其周圍阻容元件構(gòu)成波形轉(zhuǎn)換電路,把較寬的正脈沖變換為較窄的正脈沖,從而較好地解決了上述的問題。三極管vt1、vt2構(gòu)成的2級(jí)直接耦合放大器作為緩沖器使用,它是cd4060的輸出端q14的灌電流負(fù)載,c2、r8是微分電路。
經(jīng)分析后不難看出,電路中的r7、r8、c2還具有單片機(jī)上電復(fù)位的功能。
2 上電復(fù)位與看門狗信號(hào)復(fù)位的不同處理過程
由于程序跑飛很可能會(huì)造成一些隨機(jī)破壞事件,對(duì)某些系統(tǒng)而言,希望盡可能從斷點(diǎn)處恢復(fù)運(yùn)行,因此,有必要妥善解決跑飛的程序回復(fù)后的處理。
單片機(jī)應(yīng)用系統(tǒng)上電時(shí),上電復(fù)位電路會(huì)使得單片機(jī)處于復(fù)位狀態(tài),這一般稱為冷啟動(dòng),這種情況下,單片機(jī)處于復(fù)位狀態(tài)表現(xiàn)為:
(1) 程序計(jì)數(shù)器pc的值為0000h。
(2) i/o口(p0、p1、p2、p3(1))為ffh狀態(tài),即準(zhǔn)雙向i/o口的輸入狀態(tài)。
(3) 堆棧指示器sp=07h,即堆棧底為片內(nèi)ram的07h單元。
(4) 除上述狀態(tài)外,所有特殊功能寄存器sfr的有效位均為0。
(5) 上電復(fù)位時(shí),由于是重新供電,ram在斷電時(shí)數(shù)據(jù)丟失,上電復(fù)位后為隨機(jī)數(shù)。
單片機(jī)應(yīng)用系統(tǒng)的程序跑飛時(shí),看門狗產(chǎn)生復(fù)位信號(hào),也會(huì)使得單片機(jī)處于復(fù)位狀態(tài),這一般稱為熱啟動(dòng),這種情況下,單片機(jī)處于復(fù)位狀態(tài)表現(xiàn)為:
(1) 程序計(jì)數(shù)器pc的值為0000h。
(2)i/o口(p0、p1、p2、p3)為ffh狀態(tài),即準(zhǔn)雙向i/o口的輸入狀態(tài)。
(3)堆棧指示器sp=07h,即堆棧底為片內(nèi)ram的07h單元。
(4)除上述狀態(tài)外,所有特殊功能寄存器sfr的有效位均為0。
熱門點(diǎn)擊
- 基于CD4060的硬件看門狗技術(shù)
- 基于RFID技術(shù)的智能倉(cāng)庫(kù)管理系統(tǒng)
- 城市軌道交通電力綜合監(jiān)控系統(tǒng)的結(jié)構(gòu)與網(wǎng)絡(luò)通信
- TI新一代OMAP2處理器支持WMV9與H.
- Cadence推出高級(jí)時(shí)序簽收分析系統(tǒng)Enc
- 能量管理系統(tǒng)(EMS)在湖州電網(wǎng)中的應(yīng)用
- LwIP協(xié)議在μC/OS操作系統(tǒng)中的實(shí)現(xiàn)
- 基于PICMG2.9規(guī)范在CompactPC
- 零功耗MAX IIZ CPLD(Altera
- Visa和Wells Frago聯(lián)合測(cè)試NF
推薦技術(shù)資料
- 羅盤誤差及補(bǔ)償
- 造成羅盤誤差的主要因素有傳感器誤差、其他磁材料干擾等。... [詳細(xì)]
- STGWA30IH160DF2
- 最新一代低功耗內(nèi)存LPDDR6
- EMI CISPR25 CLA
- Android 和Linux
- 汽車混合信號(hào)微控制器̴
- 4A,6A 3KVRMS雙通道隔離的閘門驅(qū)動(dòng)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究