新闻  |   论坛  |   博客  |   在线研讨会
MSP430自学点滴(1)内有恶狗
zxk236350893 | 2014-07-01 14:55:46    阅读:671   发布文章

  1. #include   
  2.  int i=0,j=0;  
  3. void delay(int ms);                    //延时函数,具体多长时间,有多少算多少,意思意思  
  4. void main()  
  5. {  
  6.   //WDTCTL    =   WDTPW   +   WDTHOLD;  
  7.   P1DIR   =   0xff;                    //配置P1口为输出  
  8.     
  9.   while(1)  
  10.   {  
  11.       delay(5);  
  12.       P1OUT   =   ~((1<<6)|(1<<0));    //P1.0和P1.6是LED,今天就点它  
  13.       delay(5);  
  14.       P1OUT   =   (1<<6)|(1<<0);  
  15.         
  16.   }  
  17. }  
  18.   
  19. void delay(int ms)  
  20. {  
  21.   for(i=ms;i>0;i--)  
  22.     for(j=0;j<255;j++);  
  23. }  



项目上要用430的单片机,以前没写过相关的程序,按照经典套路,拿到一个新的单片机,首先就是点亮LED,这次过程已然如此。

上面是准备做的单灯闪烁程序,延时delay()函数,括号里面最大只能填5,填6灯就不亮了。

啥情况!!

隐隐约约觉得,系统好像一直在复位,一直在复位,一直在复位,一直在复位,一直在复位,一直在复位,一直在复位,,哎呀!有狗!!!

于是加入了

  1. WDTCTL    =   WDTPW   +   WDTHOLD;  
关看门狗,然后,哈哈,问题解决了,单灯闪烁正常了,一切都正常了,蓝蓝的天空白云又飘起来了。




莫非430单片机上电就启动看门狗?好吧,暂且是这个结论。

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客