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.

[参考译文] TMS320F28069:内部振荡器温度补偿测试技术

Guru**** 2560390 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1006686/tms320f28069-internal-oscillator-temperature-compensation-testing-techniques

器件型号:TMS320F28069

您好!

我正在为内部振荡器测试我们具有和不具有温度补偿的软件/代码。 我们决定采用的策略是在某个设定频率(~10kHz)下切换 GPIO、并查看具有和不具有温度补偿的不同温度下的变化。  

我向 TI 专家和一般论坛提出的问题是、可以使用哪些其他技术来检查温度补偿是否已按预期启用/工作?  

谢谢、

中国。

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

    中国

    感谢您访问 TI E2E 论坛。  

    您的方法很好、尤其是在您有备用 PWM 时。  

    下面是另一个选项、可在需要时将 CPU 时钟直接连接到引脚。  实际上、如果您在监控时钟的同时控制系统、我更喜欢您的方法;因为与 GPIO 上的 MHz 类型时钟相比、10kHz 会导致更低的 EMI/噪声、如下所述。  只想为您提供选项。

    您可以将 CPU 时钟直接输出到 GPIO18、多路复用器设置3。  然后、您需要在 SysCtrlRegs 中配置 XCLKOUT 寄存器。  我建议使用 DIV4、它会在 IO 上提供90MHz/4 = 25MHz。  这将更清晰地显示时钟、因为它不要求 IO 切换远高于它们的转换速率。  

    下面的代码应该执行我在上面描述的操作:

        EALLOW;
        GpioCtrlRegs.GPAMUX2.bit.GPIO18 = 3;  //enable XCLKOUT to GPIO18
        SysCtrlRegs.XCLK.bit.XCLKOUTDIV = 0;  //XCLKOUT = CPUCLK/4
        EDIS;

    最棒的

    Matthew

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

    您好、Matthew、

    我以前读过这种方法、但忘记了这种方法。 感谢您慢跑我的记忆、 同时指出了这种方法的缺点。 但 在我的示例中、GPIO18在项目中用于其他外设。 我有几个 GPIO 是免费的、可以在周期性任务中将它们用于 PWM 或常规引脚切换。

    我将保持该帖子开放几天、以检查其他人是否有他们使用/遇到的不同技术、并在稍后关闭该帖子。

    谢谢、

    中国。

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

    中国

    感谢您的反馈、在 CPU 开销方面、PWM 方法一旦配置、将为0、因为它在硬件中为100%。  

    这也意味着、如果您选择使用来自 CPU 的 GPIO 切换、则不必担心 ISR 时序不一致、这可能会更改时钟输出的周期时间。

    您的技术略有不同、对于使用所有 PWM (这种情况发生很多)的人而言、eCAP 模块支持基本 PWM 输出。  虽然可配置性远低于 ePWM、但这也是一个选项。

    最棒的

    Matthew