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.

[参考译文] MSP430F5529:帮助修改示例代码以使用 SMCLK (DCO、FLL)而不是 USBCLK (XT2)。 MSP430F5529LaunchPad

Guru**** 2540720 points
Other Parts Discussed in Thread: TDC7201

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/831746/msp430f5529-help-modifying-example-code-to-use-smclk-dco-fll-instead-of-usbclk-xt2-msp430f5529launchpad

器件型号:MSP430F5529
主题中讨论的其他器件:TDC7201

您好!

我在 MSP430F5529LaunchPad 上运行了 TDC7200EVM_USB 示例。 我认为、它使用4MHz XT2时钟(振荡器)与子板上的 TDC7201进行 SPI 通信。

我正在尝试修改示例以使用8MHz SMCLK 与 TDC7201进行 SPI 通信、但我不确定这是不可能的。

当前"UCSCTL4 = SELA_XT1CLK + SELESS_XT2CLK + SELM_DCOCLKDIV"。 为了将 SPI 时钟从4MHz 改为8MHz、是否正确更改 SELS 值(例如 SES_DCOCLK)? 如果我进行更改、这也会影响 USB 通信吗?

感谢您的任何帮助!

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

    您好、B Lench、

      "UCSCTL4 = SELA_XT1CLK + SELS_XT2CLK + SELM_DCOCLKDIV"、这个代码选择 ACLK、SMCLK 和 MCLK 源时钟、 如果你想使用8MHz SMCLK 进行 SPI 通信、你必须通过 FLL 生成一个8MHz 时钟、  

    就像这样(16 MHz):

    UCSCTL3 |= SELREF_2; //设置 DCO FLL 基准= REFO
    UCSCTL4 |= SELA _2; //设置 ACLK = REFO
    __bis_SR_register (SCG0); //禁用 FLL 控制环路
    UCSCTL0 = 0x0000; //设置可能的最低 DCOx、MODx
    UCSCTL1 = DCORSEL_5; //选择 DCO 范围16MHz 操作
    UCSCTL2 = FLLD_0 + 487; //将 DCO 乘法器设置为16MHz
    //(N + 1)* FLLRef = Fdco
    //(487 + 1)* 32768 = 16MHz
    //设置 FLL Div = fDCOCLK
    __BIC_SR_register (SCG0); //启用 FLL 控制环路 

    然后通过写入 SPI 控制寄存器(UCSSELx)来选择时钟源

    对于 USB 通信、此更改不会影响它、您可以发现 USB 使用 精确的48MHz 内部时钟。  这是由一个 PLL 生成的、PLL 由其中一个系统振荡器(XT1或 XT2) 4MHz 供电。

     

    此致

    Johnson

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

    尊敬的 Johnson:

    谢谢、这太棒了!

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

    您好、B Lench、

    我很乐意帮助您解决问题。 如果您有任何问题、请随时在 E2E 社区中提问。

    此致

    Johnson