-
#include
-
int i=0,j=0;
-
void delay(int ms); //延时函数,具体多长时间,有多少算多少,意思意思
-
void main()
-
{
-
//WDTCTL = WDTPW + WDTHOLD;
-
P1DIR = 0xff; //配置P1口为输出
-
-
while(1)
-
{
-
delay(5);
-
P1OUT = ~((1<<6)|(1<<0)); //P1.0和P1.6是LED,今天就点它
-
delay(5);
-
P1OUT = (1<<6)|(1<<0);
-
-
}
-
}
-
-
void delay(int ms)
-
{
-
for(i=ms;i>0;i--)
-
for(j=0;j<255;j++);
-
}
项目上要用430的单片机,以前没写过相关的程序,按照经典套路,拿到一个新的单片机,首先就是点亮LED,这次过程已然如此。
上面是准备做的单灯闪烁程序,延时delay()函数,括号里面最大只能填5,填6灯就不亮了。
啥情况!!
隐隐约约觉得,系统好像一直在复位,一直在复位,一直在复位,一直在复位,一直在复位,一直在复位,一直在复位,,哎呀!有狗!!!
于是加入了
-
WDTCTL = WDTPW + WDTHOLD;
关看门狗,然后,哈哈,问题解决了,单灯闪烁正常了,一切都正常了,蓝蓝的天空白云又飘起来了。
莫非430单片机上电就启动看门狗?好吧,暂且是这个结论。
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。