搜索
bottom↓
回复: 31

对于使用嵌入式操作系统的工程如何使用看门狗

[复制链接]

出0入0汤圆

发表于 2015-3-24 09:12:48 | 显示全部楼层 |阅读模式
如题,任务不断地切换,不知道该如何添加看门狗,还是说不需要添加呢?

出0入0汤圆

发表于 2015-3-24 09:44:40 | 显示全部楼层
各个任务都喂狗,如果不添加看门狗,你的可靠性肯定要打折扣的。

出0入0汤圆

发表于 2015-3-24 09:48:50 | 显示全部楼层
在优先级最低的任务里添加看门狗

出0入0汤圆

发表于 2015-3-24 09:52:00 | 显示全部楼层
外狗麻烦,系统启动前怎么办,内狗也麻烦,需要软件启动的狗,启动之前死了怎么办?等楼下答案

出5入0汤圆

发表于 2015-3-24 11:03:39 | 显示全部楼层
NJ8888 发表于 2015-3-24 09:52
外狗麻烦,系统启动前怎么办,内狗也麻烦,需要软件启动的狗,启动之前死了怎么办?等楼下答案 ...

通过RC做外狗的触发延时,确保系统启动到喂狗之间有足够的时间

出0入0汤圆

发表于 2015-3-24 11:10:30 | 显示全部楼层
宰了         

出0入0汤圆

发表于 2015-3-24 11:12:25 | 显示全部楼层
NJ8888 发表于 2015-3-24 09:52
外狗麻烦,系统启动前怎么办,内狗也麻烦,需要软件启动的狗,启动之前死了怎么办?等楼下答案 ...

用ISL88013做看门狗,有51S的上电延迟。

出0入0汤圆

发表于 2015-3-24 11:17:08 | 显示全部楼层
6楼的回复亮了

出0入0汤圆

发表于 2015-3-24 11:25:30 | 显示全部楼层
可以参考工控机看门狗设计思路,带投退功能的。
上电时,关闭,boot之类的不启动,开任务程序时再投入,喂狗时间还可以设置。

出0入0汤圆

发表于 2015-3-24 11:32:58 | 显示全部楼层
在优先级最低的线程里面喂狗,不过要计算好每个任务的时间片,防止超时。

出0入0汤圆

发表于 2015-3-24 11:41:53 | 显示全部楼层
erxun 发表于 2015-3-24 11:25
可以参考工控机看门狗设计思路,带投退功能的。
上电时,关闭,boot之类的不启动,开任务程序时再投入,喂 ...

如果boot时死了怎么恢复

出0入0汤圆

发表于 2015-3-24 11:47:08 | 显示全部楼层
NJ8888 发表于 2015-3-24 11:41
如果boot时死了怎么恢复

boot时死机,手动重启吧~~

不过boot程序都是比较成熟的;
板子硬件质量(可靠性)还是第一位的。

出0入0汤圆

发表于 2015-3-24 15:49:36 | 显示全部楼层
我在空闲任务里面加的,编程的时候注意保证空闲任务可以被执行到,初始化也在空闲任务里面进行的

出0入0汤圆

 楼主| 发表于 2015-3-24 17:58:53 | 显示全部楼层
liqiinhit2 发表于 2015-3-24 09:44
各个任务都喂狗,如果不添加看门狗,你的可靠性肯定要打折扣的。

时钟节拍的任务优先级是不是最高的?我现在有一个优先级很高的任务需要等待IO口,我担心会误触发看门狗

出0入0汤圆

发表于 2015-3-24 18:52:58 来自手机 | 显示全部楼层
看我之前写的软件看门狗,每个任务一个软件看门狗,做

出0入0汤圆

 楼主| 发表于 2015-3-24 21:13:36 | 显示全部楼层
inkfish321 发表于 2015-3-24 18:52
看我之前写的软件看门狗,每个任务一个软件看门狗,做

能否给个您做的东西的链接,让我学习学习?

出0入0汤圆

发表于 2015-3-24 21:17:51 | 显示全部楼层
没有好好学操作系统的人飘过

出0入0汤圆

发表于 2015-3-24 21:52:20 | 显示全部楼层
每一个必须执行的任务里面做一个倒计时计数器,然后在某一个任务里面检测所有的计数器都为0了,则喂狗,然后将所有的计数器赋初值,初值根据各任务的执行频率确定。

出0入0汤圆

发表于 2015-3-24 21:54:51 | 显示全部楼层
伍师傅32 发表于 2015-3-24 17:58
时钟节拍的任务优先级是不是最高的?我现在有一个优先级很高的任务需要等待IO口,我担心会误触发看门狗 ...

不明白什么叫误触发?看门狗是你在指定的时间内喂过就不咬人了。。。

出0入0汤圆

 楼主| 发表于 2015-3-24 22:11:30 | 显示全部楼层
liqiinhit2 发表于 2015-3-24 21:54
不明白什么叫误触发?看门狗是你在指定的时间内喂过就不咬人了。。。

就是程序在等待 IO 的时候,这个时候超时应该是正确的,不应该放狗的

出0入0汤圆

发表于 2015-3-25 06:50:51 来自手机 | 显示全部楼层
等待时一直喂狗,rtos不是不要用循环等待吗,怎么不用中断?

出0入0汤圆

 楼主| 发表于 2015-3-25 09:18:23 | 显示全部楼层
rayt2012 发表于 2015-3-25 06:50
等待时一直喂狗,rtos不是不要用循环等待吗,怎么不用中断?

当时偷懒了,就做成等待的了,看来这一块还得改过来,然后在每个任务中都喂狗

出0入0汤圆

发表于 2015-3-25 10:49:41 | 显示全部楼层
gwnpeter 发表于 2015-3-24 15:49
我在空闲任务里面加的,编程的时候注意保证空闲任务可以被执行到,初始化也在空闲任务里面进行的 ...

坛子里帖子讨论过这个问题,貌似在那里是用最高优先级喂狗

出0入0汤圆

发表于 2015-3-25 21:57:30 | 显示全部楼层
伍师傅32 发表于 2015-3-24 22:11
就是程序在等待 IO 的时候,这个时候超时应该是正确的,不应该放狗的

所以不能阻塞等待io的

出0入0汤圆

发表于 2015-4-1 00:53:18 | 显示全部楼层
myxiaonia 发表于 2015-3-25 10:49
坛子里帖子讨论过这个问题,貌似在那里是用最高优先级喂狗

空闲任务整么会是追高优先级?那个系统的,我用ucosii和rtx。我跟踪过堆载空间,确认是空闲任务是运行在任务空间,运行在用户模式的,
优先级也是最低的,因为我的空闲任务会使cpu进入休眠模式,如果不是追低优先级,其他任务是不会运行的

出0入0汤圆

发表于 2015-4-1 07:32:40 | 显示全部楼层
gwnpeter 发表于 2015-4-1 00:53
空闲任务整么会是追高优先级?那个系统的,我用ucosii和rtx。我跟踪过堆载空间,确认是空闲任务是运行在 ...

我的意思是  坛子里有个帖子  几年前的  也是讨论在rtos中如何喂狗

在那里 讨论结果是最高优先级任务中喂狗  帖子在这里

出0入0汤圆

发表于 2015-4-1 11:31:01 | 显示全部楼层
如果是linux呢?从上电到linux 应用启动还要等一段时间,这段时间怎么办呢?我之前是又额外加了个单片机去监视.......不知道有什么好办法没?

出0入0汤圆

 楼主| 发表于 2015-4-1 14:34:17 | 显示全部楼层
shijianzhou 发表于 2015-4-1 11:31
如果是linux呢?从上电到linux 应用启动还要等一段时间,这段时间怎么办呢?我之前是又额外加了个单片机去 ...

Linux引导完成之后的看门狗你是如何进行喂狗操作的?

出0入0汤圆

发表于 2015-4-5 10:11:00 | 显示全部楼层
本帖最后由 gwnpeter 于 2015-4-5 10:24 编辑
myxiaonia 发表于 2015-4-1 07:32
我的意思是  坛子里有个帖子  几年前的  也是讨论在rtos中如何喂狗

在那里 讨论结果是最高优先级任务中 ...


看了,最高优先级是监控OS用的,无法监控普通任务
但是我的要求很简单,必须保证低优先级的任务被看门狗守护,怎么办???
但是合理强壮的编程能保证在正常情况下,看门狗窗口期之内,系统一定会进入空闲任务

出0入0汤圆

发表于 2015-4-5 10:27:43 来自手机 | 显示全部楼层
gwnpeter 发表于 2015-4-5 10:11
看了,最高优先级是监控OS用的,无法监控普通任务
但是我的要求很简单,必须保证低优先级的任务被看门狗 ...

你说的也不错,其实情况不同都要具体分析,我现在就用idle任务运行一个原来是裸奔的程序,和你差不多情况

出0入14汤圆

发表于 2015-4-5 17:21:17 来自手机 | 显示全部楼层
如果任务在等信号量的,怎么喂?是不是通过任务执行逻辑判断

出0入0汤圆

发表于 2015-4-5 19:28:48 | 显示全部楼层
不要寄希望于用看门狗来敷衍系统的bug。
看门狗是最后一道防线!。
要想提高产品代码或者硬件的稳定性可以通过遗言或者日志系统。让每一次出错都有记录可以查。

回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-9 19:57

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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