#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单片机上电就启动看门狗?好吧,暂且是这个结论。
我要赚赏金
