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.

[参考译文] MSP430FR2676:DCO 频率

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1158251/msp430fr2676-dco-frequency

器件型号:MSP430FR2676

大家好、

我的客户对该器件的 DCO 频率有疑问、请参阅下面的详细信息。

根据 TI 提供的代码示例 msp430fr267x_CS_08.c、在 Software_Trim ()函数中、有三个问题涉及 DCO 频率的控制:

1.在函数中的以下'do'循环中(靠近顶部):

操作 

CSCTL7 &=~DCOFFG//清除 DCO 故障标志 
} while (CSCTL7 & DCOFFG)//测试 DCO 故障标志 

DCOFFG 标志被清零、然后立即被检查以查看是否被清零。  一旦被清零、这个标志再次被置位需要多长时间?  用户手册指出、如果 DCO 抽头设置达到0或511、则 DCOFFG 置1、 上面'do'循环前面的行将 DCO 设置为256、所以 FLL 是否需要一些时间将抽头自动调整为0或511、在此期间 DCOFFG 将保持清零、从而立即退出'do'循环?  我看不到这个'do'循环的要点、请解释。

2.在上面的'do'循环之后、有:

__DELAY_CYCLLES ((unsigned int) 3000 * MCLK_FREQ_MHz)//等待 FLL 锁定状态(FLLUNLOCK)保持稳定 
//建议等待24个经过分频的 FLL 参考时钟周期 

请解释一下24个周期的分频 FLL 参考时钟乘以1 (因为这是以 MHz 为单位的时钟频率)如何等于3000?  我想我在这里可能缺少一些东西。  (REFOCLK 的标称值为32.768kHz。)

3. FLL 在自动控制下调整 DCO 抽头的频率如何?  (即、它是 n 个 REFOCLK 计数、在这种情况下、什么是 n、或者如何计算它?

谢谢你。

此致、
5月

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

    您好、May、

    我明天会回来。

    Evan

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

    您好 Evan、

    谢谢你。

    期待您的回应。

    此致、
    5月

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

    您好、May、

    感谢您的耐心等待。 请确保客户正在访问 https://www.ti.com/lit/an/slaa992/slaa992.pdf 、本文档中也提供了示例代码。

    1。do while 循环的重点是确保成功清除该标志。 例如、如果清除 DCOFFG、然后硬件立即再次设置它、do-while 循环将执行回读并在必要时再次清除该标志。

    2、24个 FLL 基准时钟周期的最小值。 在该示例中、它只是等待24个时钟周期的时间更长。  

    3.用户指南的第3.2.7节指出、FLL 在32个时钟周期内混合了 DCO 抽头:

    此致、

    Evan

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

    您好 Evan、

    感谢您提供的信息、我的客户对该号码还有进一步的疑问、需要有关该号码的更多信息、请参阅详细信息。

    您指出需要32个时钟周期、但您参考的手册中的一节指出这是针对调制器的。 我没有问过调制器、我问 FLL 需要时间来调整 DCO 抽头。 根据我的理解,即使调制器已关闭,也会发生这种情况,因此我认为这与它没有太大关系。

    如果将32.768kHz 的 REFO 时钟用作 DCO 的输入、并且需要使用 FLL (而不是调制器)的 DCO 提供1MHz 的频率、则首先选择并应用 DCO 抽头。 然后、FLL 确定 DCO 抽头是否正确。 如果没有、它将更改抽头。 我的问题是:从设置抽头到确定是否正确抽头需要多长时间? (如何针对不同的情况进行计算?)

    我假设时间在某种程度上与 REFO 时钟频率相关、例如、REFO 的特定周期数、但它可能与 DCO 输出时钟周期相关。

    谢谢你。

    此致、
    5月

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

    您好、May、

    您能问客户为什么需要此类 详细信息吗? 如果他们担心时钟抖动、FLL 不是一个好的架构。

    谢谢、

    Evan

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

    您好 Evan、

    请参阅客户的回复:

    我的应用将在 LPM3 (DCO 未运行)中花费大量时间、然后、当事件发生可能在数月后、更改为工作模式并立即使用 DCO 输出以在 1MHz 频率下生成精确频率。

    但我了解到、进入工作模式后、之前的 DCO 设置可能无法生成精确的1MHz 频率、因为在 LPM3模式下条件(尤其是温度)可能会发生变化。

    因此、FLL 必须稳定在所需的频率上、在此期间、1MHz 可能会稍微关闭。   如果需要在软件控制下更改 DCOFTRIM、则需要更长时间。   如应用报告 SLAA992《DCO+FLL 应用指南 》中所述、我已经对该指南进行了广泛研究、并尝试了它在 LaunchPad 上的代码示例中提到的一些软件例程。

    我不能回答这个问题:生成精确的1MHz 时钟需要多长时间、我想知道这一时间是多少。   它将影响我的应用。

    如果在进入活动模式时将 TAP 设置为中点(十进制256)、并且必须到达一端才能获得锁定、或者无法锁定该 DCOFTRIM 值、我想知道需要多长时间。

    抱歉、我习惯控制每个事件、一直到 MCU (而不是 MSP430)的单个时钟周期、并且旧习惯已难以养成。   或者至少知道每个时钟周期中发生的情况。   也许有点老派了。   我仍然想知道对我的应用的影响。

    谢谢你。

    此致、
    5月

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

    您好、May、

    感谢询问客户这一点、但仅根据文档、很可能难以预测周期精度的水平。 我建议客户执行一些测试、以确定此过程可能需要多长时间。 在不同的温度和电压下进行测试应该能够很好地了解最坏的情况。

    此致、

    Evan