鬼眼刀道 发表于 2016-1-20 10:10
有时间发帖不如多看两遍参考手册,以下文字摘抄自官方:
The WDT+ interrupt flag, WDTIFG, locate ...
首先很感谢您的回复,我想您在学习的时候肯定也会遇到就算是看书看N遍也不明白的地方。
接着您的回复我有几个疑问:
1.首先,先说IFG1吧,我截了个图在下面,您说IFG1通过宏U0IFG进行了重定义,这个我看到了,但后面并没有在另外定义值是多少,我截了个图在下面,上电后IFG1初始值第0位和4位都是0,其余位用作其他用途,但我想一开始IFG1肯定会有一个初始值的吧,我想的对吗???2.这是我对程序的理解,不知道这几步的注释对不对还请帮忙看下:
for(i = 0; i < 3; i++)
{
IFG1 &= ~WDTIFG; //IFG1原本为0,但启用了看门狗定是间隔器第0位变1,所以WDTIFG为0x01,这一步将IFG1第0位置0,其余位不变
while(!(IFG1 & WDTIFG)); //等待IFG1的第0位置0
IFG1 &= ~WDTIFG; //将IFG1第0位置1,也就是这一步IFG1为1时后会引起上面的1s的延时是吧
}
3.上面这个延时函数应该是2s的,我在开发板实验了几次,分别将for语句中的i