打印

MSP430时钟问题

[复制链接]
1249|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pengchunhua123|  楼主 | 2013-11-13 11:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 pengchunhua123 于 2013-11-13 11:11 编辑

CPU运行在晶振(32768Hz)和DCO时钟下怎么理解,为什么msp430的cpu能有两个时钟源,程序附上,望高手指点
#include <msp430g2231.h>
void main(void)
{
    WDTCTL = WDTPW + WDTHOLD;            // 关闭看门狗定时器
    if (CALBC1_1MHZ ==0xFF || CALDCO_1MHZ == 0xFF)
   {
       while(1);                               // If cal const erased, 挂起
   }
  BCSCTL1 = CALBC1_1MHZ;                // Set range
  DCOCTL = CALDCO_1MHZ;                //设置DCO模式
  P1DIR = 0x41;                          // P1.0 和P1.6配置输出
  P1OUT = 0x01;                         // P1.0 开启
  BCSCTL3 |= LFXT1S_0;          // LFXT1 = 32768Hz
  while(IFG1 & OFIFG)
  {
      IFG1 &= ~OFIFG;                       // 清除OSCFault 标志
    _delay_cycles(100000);                 // 为可见标志延时
  }
  P1OUT = 0;                           // P1.6 关闭
  // __bis_SR_register(SCG1 + SCG0);       // 关闭DCO
  BCSCTL2 |= SELM_0 + DIVM_3;          // MCLK = DCO
  while(1)
  {
      P1OUT = 0x40;                       // P1.6 开启
      _delay_cycles(100);
      P1OUT = 0;                         / / P1.6 关闭
     _delay_cycles(5000);
  }
}

相关帖子

沙发
pengchunhua123|  楼主 | 2013-11-14 20:22 | 只看该作者
唉。。好吧。自己顶一下。。不过问题也已经基本解决了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

6

帖子

0

粉丝