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.

[参考译文] MSP430FR5969:在 MSP430Ware cs_ex2_DCO16MHz driverlib 示例中启用等待状态和16MHz MCLK 的顺序不正确?

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/837275/msp430fr5969-incorrect-order-of-enabling-wait-states-and-16mhz-mclk-in-msp430ware-cs_ex2_dco16mhz-driverlib-example

器件型号:MSP430FR5969
主题中讨论的其他器件:MSP430WARE

MSP430Ware 3.80.07.00 driverlib cs_ex2_DCO16MHz 示例 cs_ex2_DCO16MHz 具有以下调用来配置16MHz 操作:

//将 DCO 频率设置为16MHz
CS_setDCOFreq (CS_DCORSEL_1、CS_DCOFSEL_4);

CS_initClockSignal (CS_SMCLK、CS_DCOCLK_select、CS_Clock_divider);
CS_initClockSignal (CS_MCLK、CS_DCOCLK_select、CS_Clock_divider);

//将等待状态设置为1
FRAMCTL_configureWaitStateControl (FRAMCTL_ACCESS_TIME_CYCESS_1); 

为了实现可靠运行、 在设置 DCO 频率之前、是否应设置等待状态的数量?

而寄存器级示例 msp430fr59xx_cs_02.c 确实首先设置了等待状态:

//根据器件数据表的要求为 MCLK 配置一个 FRAM 等待状态
//在8MHz 以上的操作_Befor_配置时钟系统。
FRCTL0 = FRCTLPW | NWAITS_1;

//时钟系统设置
CSCTL0_H = CSKEY >> 8; //解锁 CS 寄存器
CSCTL1 = DCORSEL | DCOFSEL_4; //将 DCO 设置为16MHz
CSCTL2 = SELA_VLOCLK | SELESS_DCOCLK | SELM_DCOCLK;//设置 SMCLK = MCLK = DCO、
// ACLK = VLOCLK
CSCTL3 = DIVA__1 | DIVM__1; //设置所有分频
器 CSCTL0_H = 0; //锁定 CS 寄存器 

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

    你(们)好

    你是对的。 它应先设置等待状态。 我将报告此问题并在将来进行更改。 感谢您的评论。

    此致

    Gary