单(dān)片机的(de)程序在运行(háng)过程中,为了增加系(xì)统的可(kě)靠性,防(fáng)止芯片受到外界干扰而程(chéng)序跑飞等系统异常,我们引入看(kàn)门狗功(gōng)能,Watch Dog Timer,简称为WDT。如图(tú)1。
图1 看门狗监控单片机(jī)的程序
它本质(zhì)上(shàng)是(shì)一个(gè)递增(zēng)定时器,它的工作原理很简单,当(dāng)程序开始运行(háng)时(shí),看门狗定(dìng)时(shí)器的(de)值从零开始向上递(dì)增,当(dāng)到(dào)达(dá)预设值时,就会强制(zhì)单(dān)片机复(fù)位,使系(xì)统程序从头开始运行。如图2.
图2 看(kàn)门(mén)狗本质上是一个定时器
那么我(wǒ)们如(rú)何使用它呢?我们的(de)代码(mǎ)中,当看门狗定时器的值即将溢出时将其清零(líng),使它重新从零(líng)开始计数,那么只要程序(xù)正常运行(háng),看(kàn)门狗(gǒu)就不会强制单(dān)片(piàn)机(jī)复位。这样就实现了看门狗对程序的监(jiān)控功能。如图3.
图3 清零看懵定(dìng)时器(qì)
上述方法实现(xiàn)的是(shì)软件(jiàn)看门狗功能,当然,我们也可以搭建硬件看门(mén)狗电路,同样实现(xiàn)超(chāo)时强制(zhì)单片机复位的功能。他的思路就(jiù)是不断的给一(yī)个电容充电(diàn),在电容(róng)从满电状(zhuàng)态放电至(zhì)阈值电压前再次充电,就能(néng)保证(zhèng)电路不输出复位(wèi)信号。从而实现硬件看门狗功能。如图4.
图4 不断给电容充电
图5为(wéi)电路原理图,它(tā)由两(liǎng)个与非门外加阻容器(qì)件串联而(ér)成。
图5 硬件看门狗(gǒu)电路
当(dāng)我们给第1引脚一个低(dī)电平,也就是喂狗的时(shí)候,A与(yǔ)非(fēi)门(mén)输出高(gāo)电平(píng),此时电容C两端开始充电。同时,与非门B的(de)两个输(shū)入端电平为高,那么(me)输出(chū)端第4引(yǐn)脚(jiǎo)就(jiù)为(wéi)低电(diàn)平,不(bú)产生复位动作。如图6.
图6 不产生复位信号
喂狗操(cāo)作(zuò)完毕之(zhī)后,第1引脚(jiǎo)为高电平,那么,A与非门(mén)输出低电平,此时电容(róng)C开始放电(diàn),当电容(róng)C的电量低于阈(yù)值时,第五,六引(yǐn)脚(jiǎo)电平为低(dī),则第4引脚输(shū)出(chū)高(gāo)电(diàn)平,产生复位。如(rú)图7。图8为产生复位(wèi)时的时序图。
图7 产生复位信号
图8 复位时序
我(wǒ)们需要操作的是在电(diàn)容C放电至阈值的时间(jiān)段内给(gěi)第1引脚一个低电(diàn)平,也就是喂狗操作(zuò),保证第4引脚(jiǎo)持续输出低电平(píng),这样就(jiù)实现了看(kàn)门狗对电路(lù)的监(jiān)控功能。如图9.
图9 正常情况下不产生(shēng)复位的时序(xù)图
客(kè)服QQ1:63355785 客服QQ2:61303373 客服QQ3:67399965 客服QQ4:2656068273 产(chǎn)品分类地图(tú)
版权所有:保(bǎo)定市开云和禾邦电子有限公司 保定市开云和禾邦(bāng)电子有限(xiàn)公司营业执照

关键字:保定(dìng)电子元器件 保定电子元件 电子元器件(jiàn) 电子元(yuán)件