关于STC的看门狗

[复制链接]
12775|13
 楼主| fover 发表于 2010-11-8 11:37 | 显示全部楼层 |阅读模式
用的是STC12C5A60AD,以前的是小程序没用到看门狗,现在开始用到
程序格式大概如下:
main()
{
                                //  A
     init_delay();         //   初始化中灯闪几下,时间大于狗的时间
    ........
    WDT = xxxx;         //  B
   while(1)
   {

    work_delay();

    WDT = xxxx;        // C

    }
}

我对看门狗的理解是:初始化后从B点开始计时,到达C点后喂狗,然后再循环下一次的,若没到规定的时间喂狗则CPU复位,然后初始化再从B点开始计时。但我发现复位时看门狗就在计时,相当于在A点的时候就在计时,然后就一直在初始化那复位复位的。最后我把初始化时间改小了在看门狗的时间之内,才可以正常运行。

我想问的是:是我的理解有错误还是这个STC有什么特别之处?
coody 发表于 2010-11-8 14:14 | 显示全部楼层
一旦启动看门狗,就要断电才能关闭,否则狗有何用?

有的MCU是下在哎成素时就选择,永远起作用。。。
yewuyi 发表于 2010-11-8 14:25 | 显示全部楼层
这个你可以看手册中的看门狗是否是MCU直接硬件启动的。
xianghou 发表于 2010-11-8 17:23 | 显示全部楼层
你在下载的时候选是复位重置看门狗就可以了
 楼主| fover 发表于 2010-11-8 17:44 | 显示全部楼层
问题貌似没有说清楚,启动的时候是正常的,正常工作也是正常的,一旦work_delay函数出现问题后引起复位才会出现上面的那个问题。
   看门狗是软件启动的。
   以前好像看过一个贴说STC的看门狗软件关不了的,看来是和coody兄说的一样,只有断电才能关闭,系统复位也拿它没办法。
必有我师 发表于 2010-12-4 19:02 | 显示全部楼层
?看门狗是什么东西我都没清楚,不过我貌似从来没有用过看门狗模块呢!
wubing1211 发表于 2010-12-4 19:32 | 显示全部楼层
学到了
stupidboy456 发表于 2013-7-25 15:06 | 显示全部楼层
学习力,,谢谢
kardoche 发表于 2014-8-27 16:45 | 显示全部楼层
看门狗是不是单独独立运行的?对CPU执行指令没有任何影响把?初学者,请多多指教
kardoche 发表于 2014-8-27 16:48 | 显示全部楼层
烧程序时,如果选择上电复位时由硬件自动启动看门狗的话,是不是除了断电,它就永不停止了?
ningling_21 发表于 2014-8-27 17:23 | 显示全部楼层
kardoche 发表于 2014-8-27 16:48
烧程序时,如果选择上电复位时由硬件自动启动看门狗的话,是不是除了断电,它就永不停止了? ...

是这样的
kardoche 发表于 2014-8-28 15:21 | 显示全部楼层
谢谢,大侠能帮我解决一下问题吗? https://bbs.21ic.com/icview-792540-1-1.html
kardoche 发表于 2014-8-28 15:24 | 显示全部楼层
ningling_21 发表于 2014-8-27 17:23
是这样的


谢谢,大侠能帮我解决一下问题吗? https://bbs.21ic.com/icview-792540-1-1.html
reuben123 发表于 2015-1-9 11:37 | 显示全部楼层
软件里面有设置启动看门狗,下载程序时还需要选择上电复位启动看门狗吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

25

主题

231

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部