This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/MSP-EXP430G2:从基本时钟系统获取SMCLK和MCLK,导致波形异常。 我做错了什么?

Guru**** 2606725 points
Other Parts Discussed in Thread: MSP430G2553

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/654352/ccs-msp-exp430g2-sourcing-smclk-and-mclk-from-basic-clock-system-causing-waveform-abnormality-what-am-i-doing-wrong

部件号:MSP-EXP430G2
主题中讨论的其他部件:MSP430G2553

工具/软件:Code Composer Studio

大家好,

我一直在尝试从DCO获取SMCLK和MCLK,并在MSP430G2553启动板中使用分频器。 代码如下所示。 以下函数是程序的唯一内容,在main中。 我已经对其余的内容进行了评论。

void basic_clock系统init_125KHz MCLK_smclk_aclk (void)
{
DCOCTL = 0; //选择最低DCOx和MODx设置
BCSCTL1 = CALC1_1MHz; //设置范围
DCOCTL = CALDCO_1MHz; //设置DCO步进+调制*/

BCSCTL2 |= sels | divs_3 | SELM_0 | DIVM_3;// SMCLK和MCLK /8

P1DIR |= BIT4;
P1SEL || BIT4;
//摘要:125KHz MCLK SMCLK
} 

我在示波器中观察到的波形相当不准确。 请参见下面的黄色图。

如果我取下分禾器,只设置了分禾器和SELM_0,我仍然得到一个不准确的波形。 请参阅下文。

注:当我删除行"BCSCTL2 |= sels | divs_3 | SELM_0 | DIVM_3"时,我就能获得一个相当精确的1MHz波形。 但是,当我尝试在MCLK和SMCLK上提供125kHz (1MHz / 8)信号时,我需要该线路。

有人能指出我做错了什么吗?

谢谢你。

此致,

Guyan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    > BCSCTL2 |= sels | divs_3 | SELM_0 | DIVM_3;// SMCLK和MCLK /8

    "传送带"请求LFXT1,而不是DCO (参考SLAU144J sec 5.3。3)。 我猜你没有32kHz的晶体,所以它反复故障转移,在这个过程中抖动。 尝试:

    > BCSCTL2 |=(0*TEL)| DIVS_3 | SELM_0 | DIVM_3;// SMCLK & MCLK /8.
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Bruce:
    你是对的。 它现在就可以工作了。 非常感谢!
    此致,
    Guyan