msp430时钟的怪问题 谁告诉我我加分

5151515151   2009-11-9 12:34 楼主
    我用的是msp4302132,只有一个XT,接了16M晶振,我把XT的8分频用作ACLK,把ACLK用于TA产生40K的PWM波形,同时把XT不分频用作MCLK,我把ACLK,MCLK,40K PWM的三个引脚都测量了,40K波形正确,ACLK端口无输出,MCLK端口输出1.1-1.2M的波形。然后我加入判断晶振起振的语句,结果发现晶振没起振,可是如果真是这样的化,我的定时器怎么可能产生准的40K  PWM波啊。看MCLK的输出又好像的确晶振没有起振,为什么啊?
不加起振判断的始终分配语句语句如下:

//-------------基础时钟初始化--------------//
BCSCTL1 |= XT2OFF;               // 2132芯片无XT2,不用
BCSCTL1 |= XTS;                  // XT1用于高速模式
                                 // XT1外接16M,不分频
BCSCTL1 |= DIVA_3;               // ACLK为XT1的8分频,2MHz
BCSCTL2 = SELM_3;                // MCLK为XT1-16MHz晶振
BCSCTL3 = LFXT1S_2;              // XT1范围选择,3-16M外接晶振

P2SEL |= BIT0;   //开ACLK测量口
P2DIR |= BIT0;

P1SEL |= BIT4;   //开MCLK测量口
P1DIR |= BIT4;

//-------------定时器初开始化-------------//
TA0CTL = TASSEL_1+MC_1;         // TA时钟源为ACLK,增计数
CCTL0 = OUTMOD_4;               // 输出翻转
CCR0= 25-1;                     // 25uS间隔
   
P1SEL |= BIT1;                  // P2.2用于信号输出
P1DIR |= BIT1;

回复评论 (4)

建议:
1。示波器测量晶振频率,确认是否起振。
2。如果没有,审查晶振电路,系统复位电路是否正常。查看datasheet,看看匹配电容取值是否合适,另外,注意精度的选取。
3。查阅datasheet,关于晶振设置的相关部分,核对代码是否有编辑失误。
点赞  2009-11-9 12:48
如果MCLK没起震,你的程序能运行?

嘿嘿
点赞  2009-11-9 12:52
测晶振时可以用万用表,对地检测管脚!如果约为1/2系统电压就基本没有问题了!
点赞  2009-11-9 12:59
解决了,程序代码调了下语句顺序,不过还是感谢你们!!!!!!!!
点赞  2009-11-9 13:46
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复