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.

[参考译文] TMS320F28375S:ADC 同步运行

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

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/769878/tms320f28375s-adc-synchronous-operation

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

尊敬的团队:

我使用的是 TMS320F2837S 控制器100引脚封装。 我总共有14个模拟输入、每个 ADC 内核(A 和 B)有7个。 在这方面、对于一个模拟通道、我需要更多的采集窗口。 对于其余通道、我使用了140nS 的采集窗口、对于 ADC A 内核中的一个通道、我使用了900nS 的采集窗口。 因此、无法实现同步操作。  我已经测试了140nS 的水化是足够的、对于剩余的通道也可以正常工作。 在数据表中、提到不支持375S 100引脚12位 ADC 的 ENOB 值。  

1、为什么仅限100引脚版本?

2.如果我在375S 控制器的100引脚封装中执行异步操作、会发生什么情况?

3.如果2个 ADC 内核之间的转换略有差异(<1us),会发生什么情况?

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

    1+2)如果 ADC 异步运行、由于这个封装内 ADC 高基准和低基准引脚的特定配置、性能下降。 此处"不受支持"表示性能相当差和/或未完全表征。

    3) 3) ADC 未以锁步方式运行时的任何时序增量都是一个问题。

    ADC-A 上的一个通道需要更长的 S+H 持续时间是否是唯一的问题? (没有多个异步触发源?) 应该可以只增加 ADC-B 上相应 SOC 的 S+H;假设140ns 足够、您不应该看到转换后的值有任何持续时间超过足够 S+H 的差异。

    例如

    ADC-A:SOC0至 SOC5:S+H = 140ns、SOC6 = 900ns
    ADC-B:SOC0至 SOC5:S+H = 140ns、SOC6 = 900ns
    (所有 SOC 使用相同的触发器)

    或者、如果您希望 ADC-B 上的 SOC0到 SOC7的采样保持均匀间隔:

    ADC-A:SOC0 = 900ns、SOC1至 SOC6:S+H = 140ns、
    ADC-B:SOC0 = 900ns、SOC1至 SOC6:S+H = 140ns、
    (所有 SOC 使用相同的触发器)
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    感谢您的回复。

    我正在使用所有 ADC 通道的初始软件触发器、即 SOC0至 SOC6。 为 EOC6生成 ADCINT1。 现在、ADCINT1将触发 SOC0至 SOC6、该过程继续进行。 通过这种方式、ADC 在连续模式下运行。

    最初、为了给两个 ADC 内核提供软件强制触发、 需要编写两条指令。 为了执行第一条指令、它需要2个系统时钟。 因此 、对于200MHz 时钟、两个 ADC 内核之间的延迟将为10ns。 由于这个延迟、两个 ADC 将处于异步模式以实现连续运行。

    如何在不使用任何其他中断的情况下以同步模式运行 ADCA 和 ADCB、即 ADC 在不使用定时器、 GPIO、ePWM 等的情况下处于同步模式(可以使用初始软件强制触发)?

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

    ADC 触发器是 ADCINT 标志触发器的 OR 和通过 SOC.TRIGSEL 设置选择的触发器。 因此、您肯定可以使用列出的其中一项作为初始触发器、然后让 ADC 持续转换。

    查看 C2000ware 中的同步软件强制示例:
    \device_support\f2837xs\examples\cpu1\adc_soc_software_sync

    这一个模块使用的是内部馈送至 XBAR 的 GPIO (但您可以使用其他模块之一执行类似的操作来创建一次性触发器)。