[51单片机] 看门狗问题

[复制链接]
1791|4
 楼主| 蓦然回首; 发表于 2013-11-15 09:45 | 显示全部楼层 |阅读模式
资料上说:WDT在休眠或空闲模式超时,器件将唤醒并从PWRSAV指令处开始继续执行代码。--问题来了器件唤醒后是从main函数第一句开始执行(也就是复位了),还是从空闲模式下面的语句开始执行。不理解“从PWRSAV指令处开始继续执行代码”到底是从哪里开始执行。
香水城主 发表于 2013-11-15 10:06 | 显示全部楼层
从哪里进入休眠或空闲模式,就从哪里继续。
 楼主| 蓦然回首; 发表于 2013-11-15 17:49 | 显示全部楼层
本帖最后由 蓦然回首; 于 2013-11-15 17:53 编辑
香水城主 发表于 2013-11-15 10:06
从哪里进入休眠或空闲模式,就从哪里继续。

/*****用的中颖79f083**/
RSTSTAT =0x01;   //喂狗   1024ms
idle_mode();   //进入空闲模式
for(i=0;i<3;i++)
{
   led0=!led0;
  delayms(100);
}
按你说的led0会闪烁,但我发现没有执行idle_mode();下面的语句,而是直接复位了。所以对这句话“从PWRSAV指令处开始继续执行代码”就不理解了
 楼主| 蓦然回首; 发表于 2013-11-16 17:46 | 显示全部楼层
看了一下规格书,中断唤醒空闲模式才会继续空闲模式下面的程序,看门狗溢出只会产生复位。从而从头开始了。
 楼主| 蓦然回首; 发表于 2013-11-16 17:46 | 显示全部楼层
还是感谢好心人的回答
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

14

帖子

0

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