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.

[参考译文] MSP430I2020:如何配置外部时钟输入?

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/974064/msp430i2020-how-to-configure-external-clock-input

器件型号:MSP430I2020

您好!

我想将 MSP430I2020与外部时钟输入结合使用。 我已经连接了一个4Mhz 振荡器、我确认它输出正确的时钟信号。

这是我使用的代码:

void main (void)
{
volatile unsigned int i;//使用 volatile 来防止删除
//通过编译器优化
WDTCTL = WDTPW + WDTHOLD;//停止 WDT



CSCTL0 |= DCOBYP;//外部振荡器4Mhz
CSCTL1 |= DIVS_16;// SMCLK = DCO/4


BIT0 |= 1 BIT0;// // P1.0、P1.1输出
P1SEL1 |= BIT0 | BIT1;// MCLK、SMCLK 引脚功能
P1SEL0 &=~(BIT0 | BIT1);

… 

使用引脚 P1.1上的示波 器、我获得频率为712Khz 的时钟信号、考虑到它被16分频、它得到的频率为11.39MHz、这是内部振荡器的频率(未校准)。

请告诉我如何将时钟系统配置为使用外部时钟振荡器而不是内部时钟振荡器。

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

    我找到了错误。  

    这是新代码:

    void main (void)
    {
    volatile unsigned int i; //使用 volatile 来防止删除
    //通过编译器优化
    WDTCTL = WDTPW + WDTHOLD; //停止 WDT
    
    P2SEL1 |= BIT0; // MCLK、SMCLK 引脚功能
    P2SEL0 |= BIT0;
    CSCTL0 |= DCOBYP; //外部振荡器4Mhz
    
    CSCTL1 |= DIVS__16; 

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

    您好!

    很好地解决了这个问题。 感谢您发布该解决方案、让 E2E 社区中的其他人受益。

    如果您计划使用 SD24 ADC 模块、则 DCO 旁路模式下的外部数字时钟频率必须为16.384MHz、SD24模块才能满足数据表中指定的性能。 我只想指出这一点。

    此致、

    James