【转】Launchpad 时钟学习

2019-07-20 14:38发布

学习板:Launchpad msp430g2231
做任何事情的前提都有准备工作,我实验之前是看的 【LaunchPad】系统初始化及时钟配置.pdf这篇文章还是讲的比较详细的,推荐大家先看一下

上电后,系统默认使用的主系统时钟MCLK和子系统时钟SMCLK是DCOCLK产生的1.1MHZ时钟,而辅助时钟ACLK则为内部VLOCLK产生的12KHZ时钟。

(1)我把带的那个32.768KHZ的晶体焊在板子上了 实验代码为:
//******************************************************************************//  MSP430G2231<span style="" color:black;"="">时钟实验////  验证上电后的系统初始时钟////  开发板状态:XIN--32.768KHZ--XOUT////  馒头//  中国计量学院//  2012-3-2//  Built with IAR Embedded Workbench Version: 5.30//******************************************************************************#include <msp430g2231.h>  int main(){  BCSCTL3 |= LFXT1S1;//设置ACLK时钟源为32.768KHZ  P1DIR |= BIT0 | BIT4;  P1SEL |= BIT0 | BIT4;//选择P1.4口为SMCLK输出口 P1.0口为ACLK输出口  while(1);}

可以看一下BCSCTL1、BCSCTL2、BCSCTL3三个寄存器的值,查看寄存器的位分配图就可以知道,上电后,MCLK和SMCLK的时钟源都是默认为DCOCLK
用示波器测得P1.4口输出的SMCLK为1.09488MHZ(约为1.1MHZ),P1.0口输出的ACLK为12.0041KHZ(需要说明一下的是,我刚开始的时候没焊接晶体,程序里也没有这一句,然后debug,以为P1.0会输出默认的12.0041KHZ,可实际是输出的根本不是一个时钟信号,然后我焊接上晶体,依旧没加BCSCTL3 |= LFXT1S1这句,测得P1.0口输出的为32.768KHZ)
[cpp] view plain copy
print?

  • <pre name="code" class="cpp"><pre></pre>  
  • <pre></pre>  
  • <pre></pre>  
  • <pre></pre>  
  • <pre></pre>  
  • <pre></pre>  
  • <pre></pre>  
  • <pre></pre>  
  • <pre></pre>  
  • <pre></pre>  
  • <pre></pre>  
  •      
  • </pre>  


0条回答

一周热门 更多>