[PIC®/AVR®/dsPIC®产品] 单片机16F1827开门狗复位后为何程序不从头运行呢。

[复制链接]
 楼主| xp8587365 发表于 2014-9-26 10:57 | 显示全部楼层 |阅读模式
void init()
{
    WDTCON= 0x14;
    OSCCON= 0xEA;
    OPTION_REG =0x00;
   
}
void main()
{
    init();
    Delay_ms(100);
    Delay_ms(100);
    Delay_ms(100);
    Delay_ms(100);
    while(1)
    {
    }
    CLRWDT();
    Delay_ms(100);
}
开门狗超时后,就一直卡在while(1)出不来。
yklstudent 发表于 2014-9-26 11:29 | 显示全部楼层
你怎么确认没从头运行的,配置位设置如何?
wangch_sh 发表于 2014-9-26 11:35 | 显示全部楼层
while(1)
    {
    }
    CLRWDT();
    Delay_ms(100);
你这样写,清狗指令还有什么用?
Rain_King 发表于 2014-9-27 08:48 | 显示全部楼层
按照逻辑来说,肯定出不来...很简单,一开机,初始化看门狗,然后就进入死循环,没有喂狗,重启....然后,重复前面的过程...

评分

参与人数 1威望 +1 收起 理由
xp8587365 + 1 赞一个!

查看全部评分

 楼主| xp8587365 发表于 2014-9-28 09:58 | 显示全部楼层
wangch_sh 发表于 2014-9-26 11:35
while(1)
    {
    }

我其实是在调试时,在Delay_ms那边设置断点,看在复位后能否重新在此处停止,但是现在我有个新的想法,复位后是不是设置的断点也没有作用了吧。
 楼主| xp8587365 发表于 2014-9-28 09:59 | 显示全部楼层
Rain_King 发表于 2014-9-27 08:48
按照逻辑来说,肯定出不来...很简单,一开机,初始化看门狗,然后就进入死循环,没有喂狗,重启....然后, ...

我其实是在调试时,在Delay_ms那边设置断点,看在复位后能否重新在此处停止,但是现在我有个新的想法,复位后是不是设置的断点也没有作用了吧。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

36

帖子

1

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