[发明专利]多任务看门狗的实现装置和方法无效

专利信息
申请号: 201210518407.4 申请日: 2012-12-06
公开(公告)号: CN103853625A 公开(公告)日: 2014-06-11
发明(设计)人: 邓洪波 申请(专利权)人: 苏州工业园区新宏博通讯科技有限公司
主分类号: G06F11/00 分类号: G06F11/00
代理公司: 苏州威世朋知识产权代理事务所(普通合伙) 32235 代理人: 杨林洁
地址: 215126 江苏省苏*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 任务 看门狗 实现 装置 方法
【说明书】:

技术领域

发明涉及单片机的复位控制领域,尤其是涉及一种如何实现多任务看门狗的技术领域。

背景技术

随着在32位微处理器在嵌入式产品中的广泛应用,嵌入式操作系统也逐渐被大量应用。由于嵌入式操作系统的使用, 大大降低了复杂应用系统中软件开发的工作量, 使得嵌入式软件能够采用现代的软件开发技术进行代码编写和调试, 从而也提高了软件的质量。但在嵌入式应用中, CPU 必须可靠工作, 即使因为某种原因进入一个错误状态, 系统也应该可自动恢复。为解决“程序跑飞”的问题,常用“看门狗”来提高微型机系统的可靠性和安全性。

所谓 “看门狗”是一个计数器,基本功能是在发生软件问题和程序跑飞后使系统重新启动。一般有一个输入,叫喂狗(kicking the dog or service the dog);一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就会给出一个复位信号到MCU,使MCU复位. 防止MCU死机. 看门狗的作用就是防止程序发生死循环,或者说程序跑飞。

看门狗计数器正常工作时自动计数,程序流程定期将其复位清零,如果系统在某处卡死或跑飞,该定时器将溢出,并将进入中断。在定时器中断中执行一些复位操作,使系统恢复正常的工作状态,即在程序没有正常运行期间,如期复位看门狗以保证所选择的定时溢出归零,使处理器重新启动。

单任务程序采用顺序机制,看门狗的实现是非常简单的,只需要在合适的位置定时的去“喂狗”就可以了。而在多任务系统中,多个任务进程分享CPU资源,为了保证每个任务的正常运行,需要在每个任务中执行“喂狗”动作。但是如果仅仅是简单直接进行喂狗的动作,如果一个任务出现异常不能正常运行,其它任务还是会可以继续地喂狗。单个任务出现故障,系统还是能够正常运行,此时看门狗并没有起到应有的作用。所以,在嵌入式操作系统中如何使用看门狗是一个比较复杂的流程。

发明内容

为了解决上述技术问题,本发明公开了一种实现多任务看门狗的装置和方法。所述实现多任务的看门狗装置,包括一个硬件定时器,连接一单片机,用于监控主程序的运行;一个软件看门狗计数器数组,所述软件看门狗计数器数组包括若干个软件看门狗计数器,用于对每一个任务进行监控,所述装置还包括一个软件计数器,所述软件计数器对各个任务的软件看门狗计数器进行累加计数。

进一步的,所述的软件看门狗计数器数组根据每一个任务运行周期的不同,设定不同的动作阀值。

进一步的,所述硬件计时器包括一个输入和一个输出,所述输入用于接收清零信号,所述输出连接所述单片机,用于输出复位信号。

进一步的,所述软件计数器的优先级别高于所述若干个软件看门狗计数器。

进一步的,本发明还公开了一种实现多任务的看门狗的方法,所述方法包括下列步骤:         

将一个硬件定时器连接到一单片机,对主程序的运行进行监控;

提供一个软件看门狗计数器数组,所述软件看门狗计数器数组包括若干个软件看门狗计数器,每个软件看门狗计数器监控一个任务;

提供一个软件计数器,所述软件计数器对各个任务的软件看门狗计数器进行累加计数;同时与其对应的动作阀值比较;在所有任务正常运行的情况下,所述软件计数器值不断被清零;当某一任务出现故障后,所述软件计数器不能被清零,累计一段时间后,所述软件计数器值将溢出;所述软件计数器值首先通过会试图恢复出现故障的任务,当连续几次仍然不能正常运行该任务时,停止喂硬件狗,重启整个系统。

进一步的,所述软件计数器和所述硬件计时器的输入相连,当各个任务正常运行时,所述软件计数器提供清零信号,当任务出现故障时,所述软件计数器不能及时对于硬件计时器清零,硬件计时器的输出输送复位信号到单片机,复位系统。

进一步的,所述软件计数器的优先级别高于所述若干个软件看门狗计数器。

进一步的,所述的软件看门狗计数器数组根据每一个任务运行周期的不同,设定不同的动作阀值,所述软件计数器对各个任务的软件看门狗计数器进行累加计数;同时与其对应的动作阀值比较。

进一步的,所述软件计数器利用嵌入式系统的任务切换心跳中断,定时实现对硬件计数器的清零动作。

进一步的,所述嵌入式系统的切换心跳中断累计硬件计时器,并判断硬件计时器是否溢出,如果硬件计时器溢出,系统复位。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州工业园区新宏博通讯科技有限公司,未经苏州工业园区新宏博通讯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201210518407.4/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top