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.

[参考译文] TMS320F28377S:在一个 ADC 模块内同时使用两个 SOC 时出现问题

Guru**** 2445440 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1033879/tms320f28377s-problems-with-simultaneous-use-of-two-soc-within-one-adc-module

器件型号:TMS320F28377S
主题中讨论的其他器件:C2000WARE

各位专家、您好!
在一个 ADC 模块中使用两个 SOC 时出现问题。在我的应用中、我在  PWM2的 PRD 上同时触发 ADCA 模块的 SOC0和 SOC1。

我已按如下方式初始化 ADC:
AdcaRegs.ADCSOC0CTL.bit.CHSEL =(UINT16) 2;
AdcaRegs.ADCSOC0CTL.bit.TRIGSEL = 7;
AdcaRegs.ADCINTSEL1N2.bit.INT1SEL = 0;
AdcaRegs.ADCINTSEL1N2.bit.INT1E = 1;
AdcaRegs.ADCINTFLGCLR.bit.ADCINT1 = 1;

AdcaRegs.ADCSOC1CTL.bit.CHSEL =(UINT16) 3;
AdcaRegs.ADCSOC1CTL.bit.ACQPS = 14;
AdcaRegs.ADCSOC1CTL.bit.TRIGSEL = 7;

通过此设置、我在 AdcaResultRegs.ADCRESULT0中获得的值几乎与在 AdcaResultRegs.ADCRESULT1中获得的值相同。 我注意到、这些始终是通道2 (SOC0)的值。 我可以在通道3上放置任何电压值、它不会改变 AdcaResultRegs.ADCRESULT1寄存器中的任何值。 我怀疑这是因为 SOC0具有更高的原型化率。

是否有人知道如何解决这个问题?

此致  


Artur  

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

    Artur、

    要进行调试、请对 ADC 使用以下 C2000Ware 示例。 仅更改 CHSEL 值(必要时更改 PLL 设置)。 使用不同的构建单独尝试两个通道。

    ~\C2000Ware_xxxx\device_support\f2837xs\examples\CPU1\ADC_SoC_ePWM

    如果您的硬件正常工作、则使用示例代码库进行的转换应在预期范围内。 然后、您可以专注于软件。

    如果该示例的转换不正确、您需要首先关注硬件。

    Tommy

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

    Tommy、您好、感谢您的提示。
    错误出现在我的硬件中。 事实证明、第二个 ADC 引脚上没有定义的信号、因此第一个信号会"拉动"信号。 显然是焊接错误。

    感谢您投入宝贵的时间和精力。 很抱歉打扰您。

    许多问候语
    Artur