zhaoqingtao008 发表于 2013-6-27 09:49:57

问一个简单的问题

我是才学的430,我看到书上用看门狗定时器的时候用了
while(1)
{
      _BIS_SR(CPUOFF);
      _NOP();
}
我不知道这个NOP是干嘛的,不写可以吗?
还有在定时器A里没有这句话,这样CPU不就一直在工作了吗?功耗怎么办?是不是不用啊

Eric2013 发表于 2013-6-27 11:33:34

一个nop为1个指令周期

kang732816702 发表于 2013-6-27 23:46:43

本帖最后由 kang732816702 于 2013-6-27 23:48 编辑

在执行完中断时430会进入之前的状态,如果进入定时中断前系统在低功耗状态,那么执行完中断服务函数后会自动进入低功耗状态。

_BIS_SR(CPUOFF);这一句已经进入低功耗模式了;

至于循环,可能是为了确保系统一直在低功耗状态。

NOP为耗费一个机器周期的指令,一般作为一个机器周期的延时

zhaoqingtao008 发表于 2013-6-28 07:32:05

kang732816702 发表于 2013-6-27 23:46 static/image/common/back.gif
在执行完中断时430会进入之前的状态,如果进入定时中断前系统在低功耗状态,那么执行完中断服务函数后会自 ...

十分感谢您的耐心解答

zhaoqingtao008 发表于 2013-6-28 07:33:42

kang732816702 发表于 2013-6-27 23:46 static/image/common/back.gif
在执行完中断时430会进入之前的状态,如果进入定时中断前系统在低功耗状态,那么执行完中断服务函数后会自 ...

可以加你为好友吗?430才学,中途遇到很多问题,谢谢。你的QQ是多少?

kang732816702 发表于 2013-6-28 10:36:14

zhaoqingtao008 发表于 2013-6-28 07:33 static/image/common/back.gif
可以加你为好友吗?430才学,中途遇到很多问题,谢谢。你的QQ是多少?

呵呵我也刚学没多久QQ是我的昵称不要字母验证码是前面的字母
页: [1]
查看完整版本: 问一个简单的问题