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.

[参考译文] CCS/TMS320F28379D:使用 SDFM 替代电力电子应用中的 SAR ADC

Guru**** 2818805 points

Other Parts Discussed in Thread: CONTROLSUITE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/743823/ccs-tms320f28379d-using-the-sdfm-to-replace-sar-adcs-for-power-electronics-applications

器件型号:TMS320F28379D
Thread 中讨论的其他器件:controlSUITE

工具/软件:Code Composer Studio

您好!  我们有一个使用28335的项目、该项目使用 SPI 测量电力电子交流/直流转换器中总共4个外部 ADC (两个电压、两个电流)。

简单布局为:

计时器在100kHz 触发-->在计时器的负边沿,所有4个 ADC 开始其转换("同步采样")-->在与的"转换完成"信号上中断28335 -->读取该 ADC 在中断例程中的结果

现在、我们在 Launchpad 开发板上使用28379D micro。  为了节省空间和资金、我们希望将4个传统 SPI ADC 替换为以10MHz 时钟运行的 Δ-Σ ADC。  我们仍将以100kHz 的频率运行内部控制环路、但现在没有"convert_done"信号来中断-我知道 Δ-Σ ADC 以10MHz (其时钟速度)更新。

-->在 SDFM 中,我如何每100kHz 临时“冻结”ADC 结果,以便我可以快速读取四个 ADC 结果,而不会改变它们的值?

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

    SDFM 滤波器结果不会更新每个 SDCLK 边沿上的数据。 它会在每个频率(DOSR/SD 调制器频率)更新数据。 因此、SDFM 滤波器结果被间接冻结。

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

    感谢 Manoj 的回应!  在 SDFM 模块的 controlSUITE 示例中、代码显示了如何设置模块、但我看不到如何实际"读取" SDFM 模块结果(即、实际读取 SDFM 输出并将其转换为某种电压)。  是否有这样的示例?

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

    否、我们没有与您的要求完全匹配的示例。 最接近的示例是 sdfm_PWM_SYNC_CPU、可以根据您的要求进行修改。

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

    谢谢你 Manoj!

    为便于理解:

    假设我使用计时器为我的 Σ-Δ ADC 和 SDFM 模块生成10MHz 的 PWM 时钟。

    我希望更新速率为100kHz (与我们使用 SAR ADC 的原始设置类似、我们希望控制律环路以100kHz 的频率运行)。

    -->我的 OSR 值应该是 OSR_100 (10MHz/100 = 100kHz),这是正确的吗?

    -->我要在比较器滤波器还是数据滤波器中使用 OSR_100?  我不能完全理解差异。

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

    您可以使用 PWM 来生成 SDCLK。 这比使用 CPU 定时器有效。 此外、我建议您使用20MHz PWM 时钟而不是10MHz、因为它可以为给定的 OSR 设置提供更好的 ENOB。

    对于比较器滤波器、滤波器结果不是存储器映射的、COSR 可以从1到32不等。
    对于数据滤波器、滤波器结果为存储器映射、DOSR 可在1至256之间变化。

    比较器滤波器用于检测过流/欠流情况、不用于控制律环路。 数据滤波器输出用于控制环路。

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

    再次感谢 Manoj!

    -->因此,假设我使用28379的20MHz PWM 以及200的 OSR 速率(同样,控制环路速率为100kHz)。

    每100kHz 触发一次中断的最佳方法是什么、以便将控制律方程与 SDFM 结果"同步"?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    每100KHz 的 PWM 中断是最佳方法、因为整个过程与 PWM 同步、而 PWM 恰好是控制环路的核心。

    此致、
    曼诺伊