硬汉嵌入式论坛

 找回密码
 立即注册
查看: 4899|回复: 1
收起左侧

[μCOS-II] uCOS-II使用看门狗检测任务的执行状态的实现方法

[复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106959
QQ
发表于 2015-8-10 11:36:29 | 显示全部楼层 |阅读模式
这几天在为V4板子配套例子,专门做了一个uCOS-II使用看门狗检测任务的执行状态的例子,防止
出现某个任务长时间没有执行的情况:
1.  设置看门狗复位时间是10s,如果10s内不喂狗系统复位。
2.  想了如下几个可以实现的方案。
(1).  将喂狗函数放在滴答定时器中断的钩子函数里面,但是这种情况无法检测到任务长时间
没有执行的情况。
(2).  每个任务都执行喂狗函数,这个情况依然会出现无法检测到任务长时间没有执行的情况。
(3).  使用事件标志组,在最高优先级任务中等待其它所有用户任务发来的事件标志,如果所有
任务都发来了事件标志,那么久执行喂狗程序,如果有一个任务10s内没有发来事件标志,那么
系统会被复位。
   最终是采用的方案3
3.  具体情况还得具体分析,这里只是通过一个实例来简单的实现任务运行状态的检测。简单的说
就是为了检测任务的执行转态,我们设置每个任务10s必须发一次事件标志以此来表示任务在执行。
如果10s内有一个任务没有发来消息,系统会被复位。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106959
QQ
 楼主| 发表于 2015-8-10 11:59:44 | 显示全部楼层
1.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-12 00:18 , Processed in 0.268581 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表