[资料分享] MSP430F5529 统一时钟系统UCS

fish001   2018-9-9 23:33 楼主
实验:将MCLK和SMCLK配置为XT1(F5529的XT1为32.768KHZ)

/*1.配置IO口5.4和5.5为XT1功能。*/

/*2.配置XCAP为XCAP_3,即12PF的电容。*/

/*3.清除XT1OFF标志位。*/

/*4.等待XT1起振。*/

#include   

void main(void){

     P1SEL |= BIT0;P1DIR |= BIT0;//测量ACLK用

     P2SEL |= BIT2;P2DIR |= BIT2;//测量SMCLK用

     P7SEL |= BIT7;P7DIR |= BIT7;//测量MCLK用

     P5SEL |= BIT4|BIT5;      //配置为XT1功能,电路板上晶振接于这两脚

     UCSCTL6 |= XCAP_3;        //配置电容为12pF

     UCSCTL6 &= ~XT1OFF;     //使能XT1

/*下面是很重要的一步:*/

/* XT1刚刚起振的时候可能有错误,导致时钟错误标志位置位,必须先清零*/

/*OFIFG即Osc Fault Flag,位于SFRIFG1中*/

while(SFRIFG1 & OFIFG)   {                     //如果有时钟错误

   UCSCTL7 &=~(XT2OFFG+DCOFFG+XT1LFOFFG);          //清除3种时钟错误标志

   SFRIFG1&=~(OFIFG);}                      //清除时钟错误标志位

UCSCTL4&=(UCSCTL4&(~(SELS_7|SELM_7)))|SELS_0|SELM_0;   //将SMCLK和MCLK时钟源配置为XT1

}

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复