历史上的今天
返回首页

历史上的今天

今天是:2025年06月11日(星期三)

正在发生

2020年06月11日 | 单片机系统软件看门狗的设计思路解析

2020-06-11 来源:elecfans

硬件看门狗是利用了一个定时器,来监控主程序的运行,也就是说在主程序的运行过程中,我们要在定时时间到之前对定时器进行复位如果出现死循环,或者说PC指针不能回来。那么定时时间到后就会使单片机复位。常用的WDT芯片如MAX813,5045,IMP 813等,价格4~10元不等。

单片机系统软件看门狗的设计思路解析

软件看门狗

软件看门狗技术的原理和这差不多,只不过是用软件的方法实现,我们还是以51系列来讲,我们知道在51单片机中有两个定时器,我们就可以用这两个定时器来对主程序的运行进行监控。我们可以对T0设定一定的定时时间,当产生定时中断的时候对一个变量进行赋值,而这个变量在主程序运行的开始已经有了一个初值,在这里我们要设定的定时值要小于主程序的运行时间,这样在主程序的尾部对变量的值进行判断,如果值发生了预期的变化,就说明T0中断正常,如果没有发生变化则使程序复位。


对于T1我们用来监控主程序的运行,我们给T1设定一定的定时时间,在主程序中对其进行复位,如果不能在一定的时间里对其进行复位,T1 的定时中断就会使单片机复位。在这里T1的定时时间要设的大于主程序的运行时间,给主程序留有一定的的余量。而T1的中断正常与否我们再由T0定时中断子程序来监视。这样就够成了一个循环,T0监视T1,T1监视主程序,主程序又来监视T0,从而保证系统的稳定运行。


系统软件"看门狗"的设计思路:

1.看门狗定时器T0的设置。在初始化程序块中设置T0的工作方式,并开启中断和计数功能。系统Fosc=12 MHz,T0为16位计数器,最大计数值为(2的16次方)-1=65 535,T0输入计数频率是.Fosc/12,溢出周期为(65 535+1)/1=65 536(μs)。


2.计算主控程序循环一次的耗时。考虑系统各功能模块及其循环次数,本系统主控制程序的运行时间约为16.6 ms。系统设置"看门狗"定时器T0定时30 ms(T0的初值为65 536-30 000=35 536)。主控程序的每次循环都将刷新T0的初值。如程序进入"死循环"而T0的初值在30 ms内未被刷新,这时"看门狗"定时器T0将溢出并申请中断。


3.设计T0溢出所对应的中断服务程序。此子程序只须一条指令,即在T0对应的中断向量地址(000BH)写入"无条件转移"命令,把计算机拖回整个程序的第一行,对单片机重新进行初始化并获得正确的执行顺序。


推荐阅读

史海拾趣

AC Interface Inc公司的发展小趣事

随着国内市场的饱和,ABC Electronics Inc. 开始寻求国际化的发展道路。公司首先在欧洲设立了分支机构,通过参加国际电子展会、与欧洲企业建立合作伙伴关系等方式,逐步打开了欧洲市场。随后,公司又进军北美和亚洲市场,通过本地化运营和定制化服务,满足了不同国家和地区的需求。这一国际化战略不仅拓展了公司的市场份额,也提升了其品牌影响力。

FEMA Electronics Corporation公司的发展小趣事

FEMA的创始人李明(化名)是一位资深的电子工程师,他在一次与客户的交流中,发现了市场对高质量电子元件的迫切需求。于是,他毅然决定创办FEMA,专注于研发和生产高性能的电子元器件。创业初期,公司面临着资金短缺、技术瓶颈等重重挑战。然而,李明凭借坚定的信念和不懈的努力,成功攻克了技术难关,并与多家知名企业建立了合作关系,为公司的发展奠定了坚实的基础。

骅讯(Cmedia)公司的发展小趣事

为了进一步提升品牌影响力和市场竞争力,骅讯积极寻求与知名品牌的合作。通过与音频市场上的主要品牌建立合作关系,骅讯成功将其先进的音频技术应用于各种音频产品中,为消费者带来了更为优质的音频体验。这种合作模式不仅促进了骅讯技术的推广和应用,也为其带来了更为广阔的市场空间。

屹晶微(EG)公司的发展小趣事

屹晶微的创始人黄米龙,原本在发电厂从事电气运营工作长达八年。这段经历让他对电子领域有了深入的了解和浓厚的兴趣。然而,他并没有满足于现状,而是看到了中国芯片产业的巨大潜力和发展空间。于是,在2007年,他毅然决定从发电厂辞职,利用自己的积蓄和借来的资金,在台州创立了屹晶微电子有限公司。

在创立初期,屹晶微面临着资金短缺、技术落后和市场竞争激烈的困境。但黄米龙凭借对电子行业的深刻理解和坚定的信念,带领团队克服了种种困难。他们不断引进先进技术和设备,加强研发力量,提升产品质量。经过几年的努力,屹晶微逐渐在芯片设计领域崭露头角,并成功推出了多款具有自主知识产权的芯片产品。

DMS Electronic Components, Inc公司的发展小趣事

DMS深知品质对于企业的重要性,因此从一开始就建立了严格的质量管理体系。公司采用先进的生产设备和工艺,对每一个环节都进行严格把关,确保产品质量符合国际标准。DMS还积极参与国际认证,通过ISO9001、CE、UL等认证,进一步提升了品牌的国际竞争力。

FINTEK公司的发展小趣事

在快速发展的同时,FINTEK公司始终不忘履行社会责任和推动可持续发展。公司积极参与环保公益事业,致力于减少生产过程中的能源消耗和废物排放。同时,FINTEK还加大了对清洁能源和可再生能源技术的研发投入,以推动电子行业的绿色转型。此外,FINTEK还积极履行纳税义务,为社会创造更多的就业机会和税收贡献。这些举措不仅彰显了FINTEK作为行业领导者的责任感,也为公司的长远发展奠定了良好的社会基础。

问答坊 | AI 解惑

如何在REGISTRY上找到GPRS的連線名稱

請問各位高手~ 現在我已經在手機的\"開始\"->\"設定\"->\"連線\" 中新增一個GPRS連線,名稱為eeworld 那請問一下我在REGISTRY當中如何找到 我在HKEY_LOCAL_MACHINE\\Comm\\ConnMgr\\Providers\\{7C4B7A37-5FF7-4bc1-80F6-5DA7870BB1AA}\\Connec ...…

查看全部问答>

求助

Error: Node instance \"u1\" instantiates undefined entity \"counter10\"怎么办?…

查看全部问答>

大家看看我的配置单,给个意见~~

CPU:CORE2 E4500           795 主板:技嘉P31-DS3L          600 内存:KINGSTON 1G*2 DDR2-800    150*2 硬盘:酷鱼160G        ...…

查看全部问答>

菜鸟问题:是数字信号还是模拟信号?

某一种仪器可以通过数据线和电脑连接,也就是信号能够通过电脑进行处理,这种信号是数字的还是模拟的? 另外,如果一种仪器比如手持测电流的能立即显示在小屏幕上的,是数字信号还是模拟信号? …

查看全部问答>

配置sqlce连接管理器里面的虚拟目录后 在设备上输入http://服务器名/虚拟目录名/sscesa20.dll之后显示找不到页面

问题如上 创建虚拟目录时使用的是匿名访问 或Basic athentication 两种方式 接着下一步 到如图所示 c:\\33.bmp 这里就不知道要不要选中了 我是没有选 HTTP pemissions 也只选中了 只读 和 目录浏览 有漏洞或者错误的地方请大家帮忙指出来 ...…

查看全部问答>

单片机网口通讯问题

我查看网上论51单片机网口必用到RTL8019或者NE2000,可是这些芯片早过时无法买到,可有其他的办法实现单片机网口通讯,最好能提供电路图和代码,谢谢 …

查看全部问答>

求问单片机监测电机堵转的电路

小弟想问下有谁知道单片机监测电机堵转的参考电路,要求很简单,只要在电机堵转时停止供电就可以了,在此表示感谢!!…

查看全部问答>

RVDS4.0 如何使用。

各位大侠,请教一下有谁用过RVDS4.0  。贴个实例吧。…

查看全部问答>

求CC2430控制超声波传感器HY-SRF04的程序

急求如上所述的完整程序,用IAR编写的,能够成功运行!…

查看全部问答>

请教C51定时中断问题

初学单片机,部分程序如下: void timer0() interrupt 1 { TMOD=0x01; TH0=(65535-50000)/256; TL0=(65535-50000)%256; EA=1; ET0=1; TR0=1; tt1++; if(tt1==20) {   LIGHT=~ LIGHT;   tt1=0; } } ...…

查看全部问答>