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.

[参考译文] TMS320F2.8377万D:ADC问题

Guru**** 2044370 points
Other Parts Discussed in Thread: CONTROLSUITE, LM4132, OPA320, OPA350, OPA365, LMC6482
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/634661/tms320f28377d-adc-issue

部件号:TMS320F2.8377万D
本线程中讨论的其他部件:controlSUITELM4132OPA320OPA350OPA365REF5050LMC6482

您好,

我在自己的定制PCB上使用F2.8377万D硅版本C。 我已配置为采样10个模拟输入,这些输入被分配到3个ADC (4+3+3)。 每个模拟输入都通过RC滤波器提供给控制器引脚(R - 47欧姆,C - 33pf)。测试时, 我使用电池和电阻分压器网络对所有输入短路并提供可变电压。ADC时钟配置为25 MHz,采集窗口在12位单端模式下设置为400 ns。以下是观察结果。

当连续采样所有10个输入(使用controlSUITE中的示例软件)时,结果的平均值会随着电压增加到满刻度3.3V而下降, 在平均值上观察到约150个计数的噪声。当 对给定特定ADC的单个输入或一组输入进行采样时,噪声计数将减少到20。

2,对两个ADC的输入组进行采样时,噪声增加到150次。

3.然后,所有ADC的SOC都使用Timer1 @16kHz频率, 然后噪声计数减少到20,但在第一种情况下,结果的平均值会随着电压增加到满刻度3.3V而下降。 采样单个输入时,平均值接近给出的实际输入。

当我更改ADC时钟和/或采集窗口时,这种现象没有得到改善。


请帮助我了解 正在发生的情况,并建议是否为ADC执行任何正确的配置。

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

    您的电池分压器的阻抗是多少? 之后,在进入47ohm + 33pF网络之前,是否存在高速运算放大器缓冲器? 通常,电池不是ADC的良好测试源;理想情况下,您应该在直流模式下使用具有板上本地运算放大器的良好函数发生器来分离电缆阻抗。 电压参考IC +分压器+运算放大器也可以形成良好的测试源。

    什么是VREFHI电压源? VREFHI电容器是否正位于VREFHI引脚上? 什么是对VREFHI电压进行缓冲? 是否确定此缓冲区是稳定的?

    当您对多个ADC进行采样时,它们是否以锁定步骤运行以满足"同步操作"? 如果不是,这是什么软件包?

    除非以前将时钟配置为高于指定的最大值50MHz,否则ADCCLK不会帮助实现这一点。 增大S+H可能会有所帮助,但前提是源具有中等高阻抗;这对极高的阻抗,嘈杂的输入或嘈杂的基准没有帮助。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好,Devin
    分压器网络的阻抗约为2K-4K欧姆,我没有使用任何运算放大器缓冲器。IC的封装为BGA,四个ADC的所有VREFHI引脚都绑在一起,并且捕获器放置在离控制器非常近的位置。 根据电压参考IC LM4132,VREFHI的输入为3.3V,不使用任何缓冲器。 所有ADC的时钟和acqps值保持相同,同步操作是通过使用Timer1提供SoC触发器来检查的,这是否可以确保同步操作?

    我将使用电压参考IC +分压器+运算放大器进行检查。

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

    因此,如果分频器阻抗为2K,后跟47ohm + 33pF,则输入网络的阻抗为2K + 33pF,这是66ns的RC时间常数。 您需要大约9.7 时间常量才能在12位分辨率下稳定为0.25LSB,因此S+H至少应为640ns。 如果您使用运算放大器从ADC输入中分离除法器输出,则可以使用更短的S+H (尽管计算过程中涉及的内容会稍多一些,因为您必须考虑运算放大器BW,外部RC和内部ADC RC)。

    对于参考输入,我不确定驱动所有4个ADC输入的一个LM4132是否会很好。 我们通常建议使用高速低噪声运算放大器来缓冲每个ADC参考输入(尽管在一个运算放大器输出之间共享2个ADC参考在实验中性能良好)。 一些良好的参考驱动程序是OPA320,OPA350和OPA365。 如果这是一个问题,减少ADCCLK可能会有所帮助。 当有更多ADC运行时,您会看到更多噪音,这是一个症状,表明参考带宽不足可能是原因。

    根据对LM4132数据表的快速浏览,需要检查的其他事项:
    -最大稳定电容负载为10uF。 4个ADC之间的电容是否超过此值?
    输入电容必须大于输出电容。 如果输出上有~10uF,输入上是否有超过此值的值?

    这听起来就像您可以很好地将同步operation...using CPU计时器作为触发器来执行此操作。 此外,BGA封装在异步操作ADC时的性能下降较小(但听起来好像是同步操作它们)。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Devin,

    我尝试使用电压参考IC +分压器+运算放大器作为的电源

    模拟输入,并且工作正常,最大偏差超过10个计数。但是

    所有ADC的参考引脚VREFHI总共存在40MF去耦电容。

    正如我前面所说的,所有这些引脚都短路并连接到LM4132。 是否可以是

    问题?


    此致,

    Naveen。

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

    您好,Naveen:

    有了良好的输入信号和参考,应该可以将代码扩展到大约4个LSB,或超过256个转换。   

    在参考IC +运算放大器侧,您使用的是什么IC?  在运算放大器之后,您是否还有47ohm + 33pF电容器?  您可以在此处尝试以下操作:

    • 将33pF提高到145pF到435pF的范围内。  这是ADC内部S+H电容器的10至30倍。  
      • 您可能还想稍微增加S+H持续时间(由ACQPS控制)。 也许可以试试,100ns,150ns,还有像500ns这样大的东西  
    • 在分压器之前,在参考IC的输出处添加一些电容。  这通常是相当大的数量,可能是1uF-10uF
    • 在分压器输出处添加一些电容。  这可能相当大,但必须小心不要破坏运算放大器的稳定性。  可能100nF到1uF是一个不错的选择。  
    • 如果以上任何一种使用电线,请尽可能缩短电线,并使用接地回线进行编织。
    • 使用带宽较高和/或噪音较低的运算放大器。  一些好的选择是OPA320,OPA350或OPA365。     

    对于ADC VREFHI,电容越大通常越好。  但是,LM4132的 最大电容负载规格为10uF,因此您可以尝试将引脚上的总电容降低到此电平,看看这是否有帮助(通过将每个电容器降低到<2.5uF, 或者移除3个10uF电容器,仅使用一个ADC -仅用于调试)。   

    LM4132数据表还需要比输出电容更多的输入电容,因此您至少应确保输入电容大于40uF。   

    但是,为了获得最佳性能,每个VREFHI引脚应由单独的缓冲器驱动(或至少不由参考IC直接驱动)。  

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

    所用的参考IC是REF5050,OP-amp是LM6482。我仍然在OP-amp之后并行连接RC网络。 实际上,我已将S+H持续时间增加到1.13 usec。 但是,当所有ADC未同步运行且配置了连续转换时,问题仍然存在。我尝试将LM4132上的输出电容降低到10uF,但没有任何改进。 是否确实需要同步操作所有ADC?

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

    由于LMC6482的带宽仅约为~1MHz,因此US范围内的某些内容实际上适用于所需的S+H持续时间。

    驱动电路是构建在PCB上,还是使用物理导线进行调试设置?

    是否使用单参考IC +运算放大器来驱动所有ADC通道并联? 如果ADC采样的回退干扰了相关网络上的其他通道(当ADC S+H打开时,引脚上的外部电容与内部ADC S+H电容器相等时,会有显著的浪涌电流),我不会感到惊讶。 也许尝试拆分信号源?

    在评估一个输入时,您始终可以将较低质量的信号源(如电池输出)放在其他通道上。 然后将源静音并再次测试,仅评估运算放大器驱动通道的结果(但仍在每个测试的所有其他ADC上进行转换)。

    如果您看一下ADC数据表规范,我们将在ADC异步操作时降低ENOB和ADC到ADC隔离的规范:

    www.ti.com/.../specifications

    ADC同步运行时,这些参数也有单独的规格,显示无降级。 这是准确的,但此测试为每个ADC使用了独立的参考电路(类似于上面张贴的TRM图I中所示的参考配置,这是推荐的参考配置)。 如果您使用一个没有缓冲区的REFIC来驱动所有4个ADC参考,那么如果您看到通过共享参考路径产生的一些干扰,我不会感到特别惊讶; 参考输入不是高阻抗,它可以作为开关电容器类型电路,在每个ADCCLK的开头进行切换,并需要在每个ADCCLK的结尾积极地恢复到参考电压。 这需要高带宽驱动程序。

    总的来说,我认为您应该先看看通过ADC输入路径的耦合,但如果这不能获得您想要的性能,您可能会想交换参考电路以获得官方推荐的配置。