请问MSP430初始化总陷入死循环里,是不是芯片坏了呢?如何解决这问题?

2019-03-24 11:27发布

  1. //系统初始化
  2. void InitSys(void)
  3. {
  4.   if (CALBC1_1MHZ ==0xFF || CALDCO_1MHZ == 0xFF)                                    
  5.   {  
  6.     while(1);                               // If calibration constants erased  (调试时,总陷入这一句)
  7.                                             // do not load, trap CPU!!
  8.   }
  9.   //12Mhz
  10.   BCSCTL1 = CALBC1_12MHZ;                   // Set range
  11.   DCOCTL = CALDCO_12MHZ;                    // Set DCO step + modulation*/
  12. }
复制代码板子是MSP430.LaunchPad,用的是MSP430G2553芯片,在调试的时候,发现总陷入while(1)死循环里,已经是第二个芯片成这样了,我借了我同学的G2553芯片试试,发现可以跳过死循环,程序是没问题,那么是不是芯片有问题呢?MSP430芯片不会这么脆弱的吧?

遇到这样的情况,应该怎么办呢? 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
5条回答
yangxf1217
2019-03-25 03:25
//******************************************************************************



#include  



void main(void)

{

  WDTCTL = WDTPW +WDTHOLD;                  // Stop Watchdog Timer

  if (CALBC1_1MHZ ==0xFF || CALDCO_1MHZ == 0xFF)                                    

  {  

    while(1);                               // If calibration constants erased

                                            // do not load, trap CPU!!

  }

//1Mhz

  BCSCTL1 = CALBC1_1MHZ;                    // Set range

  DCOCTL = CALDCO_1MHZ;                     // Set DCO step + modulation */

这一段好像都注释掉了

一周热门 更多>

相关问题

    相关文章