李贝 发表于 2020-9-21 08:41:33

MSP430F149切换外部晶振为什么有时会不成功?

   现象是:用MSP430F149定时器B定时执行IO开关,发现开机后有时IO口输出开关频率会变慢,经过查找,将晶振切换命令连续写2次以上就可以了,写外部晶振部分如下

      BCSCTL1 &= ~XT2OFF;                     // 打开XT2
      do{
          IFG1 &= ~OFIFG;                           // 时钟稳定
          for (i = 0xff; i > 0; i--);      
      }
      while ((IFG1 & OFIFG));                  
      BCSCTL2 |= SELM_2+SELS+DIVS_3;               // MCLK=SMCLK=XT2

   有没有谁遇到过这种情况,具体原因是什么?不然心里没有底。

wiisir 发表于 2020-9-25 21:44:08

是不是MSP430单片机太冷门了,用的人非常少?我是来学习的

wqy0410 发表于 2020-9-26 10:00:01

10多年前的型号了

李贝 发表于 2020-9-27 08:43:02

是的,资源太少了

helloshi 发表于 2020-9-27 10:21:59

把 第一行打开XT2 写到 do 里面
do里面的 for延时不需要

李贝 发表于 2020-9-27 13:43:41

helloshi 发表于 2020-9-27 10:21
把 第一行打开XT2 写到 do 里面
do里面的 for延时不需要

是这个原因吗?我连续将这个程序写了两遍这几天测试下来竟然没有问题了{:sweat:}

helloshi 发表于 2020-9-27 14:32:25

李贝 发表于 2020-9-27 13:43
是这个原因吗?我连续将这个程序写了两遍这几天测试下来竟然没有问题了...

do 里面就是一直写直到成功为止

李贝 发表于 2020-9-27 15:20:28

helloshi 发表于 2020-9-27 14:32
do 里面就是一直写直到成功为止

是的,但测试后发现就是会出问题,会是RST复位电路问题吗
页: [1]
查看完整版本: MSP430F149切换外部晶振为什么有时会不成功?