【求助】MSP430F5529 UCS模块的问题

2019-08-06 16:44发布

我XT2外接的是16M的晶振,我想利用DCO给他升到32M,但是程序有时候是32M,有时候是8M等等等等,代码是
请用过的帮帮我呀 或者有类似的例程也行(程序中红 {MOD}字体应该是重点出错的地方)

void main(void) {
    WDTCTL = WDTPW+WDTHOLD;
    P1DIR |= BIT0;
    P1SEL |= BIT0;              //可以看ACLK的频率
    P2DIR |= BIT2;
    P2SEL |= BIT2;             //SMCLK
    P7DIR |= BIT7;
    P7SEL |= BIT7;             //MCLK

    P5SEL |= BIT2+BIT3;
    UCSCTL6 &= ~XT2OFF;          //打开XT2

    do
     {
       UCSCTL7 &= ~XT2OFFG;
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
啥是arm
1楼-- · 2019-08-06 17:19
额 发错了 再来
啥是arm
2楼-- · 2019-08-06 19:23
 精彩回答 2  元偷偷看……
dirtwillfly
3楼-- · 2019-08-07 00:30
看不出有什么问题。
这里有一个用4MHz的XT2,得到16MHz的DCLCLK的程序,你参考下
P1DIR |= BIT0;
P1SEL |= BIT0;              //可以看ACLK的频率
P2DIR |= BIT2;
P2SEL |= BIT2;             //SMCLK
P7DIR |= BIT7;
P7SEL |= BIT7;             //MCLK

P5SEL |= BIT2+BIT3;
UCSCTL6 &= ~XT2OFF;          //打开XT2

/*********************寄存器配置部分******************************/

__bis_SR_register(SCG0);
UCSCTL0 = DCO0+DCO1+DCO2+DCO3+DCO4;
UCSCTL1 = DCORSEL_4;                    //DCO频率范围在28.2MHZ以下
UCSCTL2 = FLLD_4 + 1;                   //D=16,N=1
UCSCTL3 = SELREF_5 + FLLREFDIV_3;       //n=8,FLLREFCLK时钟源为XT2CLK;DCOCLK=D*(N+1)*(FLLREFCLK/n);DCOCLKDIV=(N+1)*(FLLREFCLK/n);
UCSCTL4 = SELA_4 + SELS_3 +SELM_3;      //ACLK的时钟源为DCOCLKDIV,MCLKSMCLK的时钟源为DCOCLK
UCSCTL5 = DIVA_5 +DIVS_1;               //ACLK由DCOCLKDIV的32分频得到,SMCLK由DCOCLK的2分频得到
                                         //最终MCLK:16MHZ,SMCLK:8MHZ,ACLK:32KHZ

__bic_SR_register(SCG0);                //Enable the FLL control loop

/**********************************************************************/

__delay_cycles(8192);
do
{
  UCSCTL7 &= ~(XT2OFFG + XT1LFOFFG + DCOFFG); //Clear XT2,XT1,DCO fault flags
  SFRIFG1 &= ~OFIFG;       //Clear fault flags
}while (SFRIFG1&OFIFG);
smilingangel
4楼-- · 2019-08-07 01:56
dirtwillfly 发表于 2013-8-28 17:45
看不出有什么问题。
这里有一个用4MHz的XT2,得到16MHz的DCLCLK的程序,你参考下
P1DIR |= BIT0;

这个还是用的是内部的基准频率进行倍频得到的吧
smilingangel
5楼-- · 2019-08-07 02:12
XT2的4MHz的晶振应该是没有用到的
啥是arm
6楼-- · 2019-08-07 03:08
smilingangel 发表于 2013-8-28 23:47
XT2的4MHz的晶振应该是没有用到的

他板子上是自带的4M晶振 我把他给卸了,装了一个16M的晶振上去  请问你有相关程序吗?

一周热门 更多>