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.

[参考译文] TMS320F28075:不同的 CMPSS 模块是否具有不同的迟滞性能?

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/820113/tms320f28075-will-different-cmpss-modules-behave-with-different-hysteresis-performance

器件型号:TMS320F28075
主题中讨论的其他器件:TL082

客户使用相同的输入信号进行测试、并以相同的配置馈送至不同的 CMPSS。 他们发现不同模块的迟滞性能各不相同。 以 CMPSS3和 CMPSS4为例、所有 CMPSS 配置都是相同的。 而 CMPSS3的迟滞行为小于设置值、而 CMPSS4似乎没有 迟滞 、当 DACVAL 较高时(如3068)、这个问题就更加明显了。 您可以检查一下这个吗? 谢谢你。

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

    尊敬的 Aki:

    我们尚未观察到这一点。 能否提供您看到的内容的一些数字? 还提供示波器截图。 谢谢。

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

    您好、Frank、

    它们使用 VDDA (3.3V)作为 CMPSS DAC 的基准、并 使用4x 迟滞设置、因此预期的迟滞电压应为(48/4096)*3.3V = 0.03867V。

    1) DACHVALA=3086、对于 CMPSS4、测得的迟滞电压为 0.002352V、低于预期值的10%;对于 CMPSS3 、测得 的迟滞电压为 0.021756V。

    2) 2) DACHVALA=632、结果好于前者。 对于 CMPSS4、 测得 的迟滞电压为 0.0294V;  对于 CMPSS3  、测得的迟滞电压为0.03057V。

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

    尊敬的 Aki:

    感谢您提供额外的详细信息。 我怀疑他们的旅行很吵。 几个问题:

    他们的实验有多重复? 例如、如果它们重新运行大约10次、它们测量的迟滞变化是多少?

    2.如果他们将 COMPDAC 基准切换为 VDAC、他们是否会发现相同的问题?

    驱动正输入的源是什么?

    我假设 COMPDAC 保持稳定并且正输入被扫描。 作为一个实验、它们可以执行反向操作:保持正输入稳定并扫描 COMPDAC。

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

    谢谢、我将与客户核实。

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

    弗兰克、

    客户表示 多次测试后、迟滞误差变化不大。 由于引脚被占用、因此它们无法切换到 VDAC、因此使用了 VDAC  

    直流稳压源作为正输入。 它们还尝试保持正输入稳定并扫描 COMPDAC、并获得以下测试结果:

    CMPSS3迟滞误差3098-3068= 30LSB

    CMPSS3 迟滞误差3080-3068= 12LSB

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

    抱歉、结果应该是迟滞、而不是迟滞误差

    CMPSS3迟滞:3098-3068= 30LSB

    CMPSS3 迟滞:3080-3068= 12LSB

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

    Aki、

    抱歉、30lsb 和12lsb 指的是什么? 这2是否在 CMPSS3上运行?

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

    弗兰克、

    抱歉、出现拼写错误。 它应该是:

    CMPSS3迟滞:3098-3068= 30LSB

    CMPSS4 迟滞:3080-3068= 12LSB

    这几乎与之前的测试结果匹配。  

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

    Aki、

    没问题。 好的、他们看到的绝对是意料之外的。 他们能否提供用于测试迟滞的代码片段? 我只想确认它与我们测试它的方式类似。

    顺便说一下、他们是在单个 F28075单元上看到这种情况、还是在多个单元上看到这种情况?

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

    弗兰克、

    他们检查 了 COMPSTS 的 COMPHSTS 位、以决定观察 CMPSS 输出的变化。 他们已经检查了两个 F28075单元、并获得了与 CMPSS3和 CMPSS4相似的结果。 您能否分享一下如何在 您的一侧测试迟滞? 谢谢你。

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

    Aki、

    如果他们在2台设备上看到它、则可能不是 Fluke。 下面是一个代码片段、介绍了如何测试迟滞。 我们必须把一些东西取出、这样它可能不会编译、但希望您能得到这个想法。 它们需要使用最佳非零滤波器设置的锁存器。 对于正输入上的同一信号、它们应该运行多次以查看 cmpss_TRIP_CODE 和 cmpss_unTRIP_CODE 的变化量。 如果它们变化很大、则意味着它们可以使用迟滞、但无法使用设置来测试迟滞。

    while (cmps_ptr[cmpss_ndx]->COMPSTS.bit.COMPHLATCH =0){//向下扫描
    CMps_ptr[cmpss_ndx]->DACHVALS .bit.DACVAL--;
    delay_US (1);
    if (cmpss_ptr[cmpss_ndx]->DACHVALS =
    
    
    1;dcs_delay = cmplr.ac.rs
    
    = 1;cmplr.acrs = 1);cmplr.acr.acrs = cmplr.rs = cmprs = cmpr.rs 1;cmprs = cmprs
    if ((cmps_ptr[cmpss_ndx]->DACHVALS .bit.DACVAL = 0)&&(cmps_ptr[cmpss_ndx]->COMPSTS.bit.COMPHLATCH = 0){
    cmps_trip_code = 0xDEAD;//失败
    }
    其他{cmps_trip_rtr=cmpss_cr=>cmpss_cmpss_up.microcontrollers_cmpss_cr=x=x=[cmpvr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/sr.cn/s.cn/sr.cn/s.cn/s.cn/s.cn/s.cn/s.cn/s.cn/s.cn/s
    
    
    
    COMPSTS.bit.COMPHLATCH
    
    
    
    
    
    
    
    
    if (((cmps_ptr[cmpss_ndx]->DACHVALS .bit.DACVAL = 0xFFF)&&(cmps_ptr[cmpss_ndx]->COMPSTS.bit.COMPHLATCH = 1)}{
    cmpss_untrip_code = 0xDEAD;//失败
    }
    否则{
    cmpss_uncrss_trip_cmpss_code.cmpss_cmpss_und_trip_cmpss_code.cmpss_cmpss_cmpss_und_cmpss_cumps_trip_cumps_cumps_code.trip_cmpss_cmpss_cmpss_code.trip_cmpss_c
    
    
    

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

    您好、Frank、

    客户想知道是否有必要使用我们的代码来测试它、因为他们已经扫描了 DACVAL 以获得相同的正信号。  

    无论如何、为了方便起见、您能否检查以下代码是否正确(由您修改)?

    以 CMPSS3为例。

    EALLOW;
    
    Cmpss3Regs.COMPCTL.bit.CTRIPHSEL=CTRIP_LATCH;
    
    EDIS;
    
    while (Cmpss3Regs.COMPSTS.bit.COMPHLATCH = 0){//向下扫描
    
    Cmpss3Regs.DACHVALS.bit.DACVAL---;
    DELAY_US (1);
    if (Cmpss3Regs.DACHVALS .bit.DACVAL = 0)中断;
    EALLOW;
    Cmpss3Regs.COMPSTSCLR.bit.HLATCHCLR = 1;
    DELAY_US (1);
    EDIS;
    }
    if (((Cmpss3Regs.DACHVALS .bit.DACVAL = 0)&&(Cmpss3Regs.COMPSTS.bit.COMPHLATCH = 0)){
    cmpss_TRIP_CODE = 0xDEAD;//失败
    }
    否则{
    cmpss_TRIP_CODE = Cmpss3Regs.DACHVALS.bit.DACVAL;
    }
    while (Cmpss3Regs.COMPSTS.bit.COMPHLATCH = 1){//向上扫描
    Cmpss3Regs.DACHVALS.bit.DACVAL++;
    DELAY_US (1);
    if (Cmpss3Regs.DACHVALS .bit.DACVAL = 0xFFF) break;
    EALLOW;
    Cmpss3Regs.COMPSTSCLR.bit.HLATCHCLR = 1;
    DELAY_US (1);
    EDIS;
    }
    if (((Cmpss3Regs.DACHVALS .bit.DACVAL = 0xFFF)&&(Cmpss3Regs.COMPSTS.bit.COMPHLATCH = 1)){
    cmpss_untrip_code = 0xDEAD;//失败
    }
    否则{
    cmpss_untrip_code = cmpss3Regs.DACHVALS .bit.DACVAL;
    }
    cmpss_hystelsis = cmpss_untrip_code - cmpss_trip_code;
    

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

    Aki、

    由于它们看到的是意外的、我们首先必须确保它们用于测试迟滞的过程正确无误、然后从此处继续。 这就是提供用于测试的代码的原因。 他们对代码所做的更改看起来不错。

    请让他们至少运行10次、并报告 cmpss_trip_code 和 cmpss_untrip_code 的传播。

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

    弗兰克、

    他们已使用上述代码进行测试、并获得以下结果:

    CMPSS3 迟滞范围为 32至50LSB

    CMPSS4滞后范围为5至12LSB

    您能否帮助使用 F28075对其进行测试并向客户展示我们的结果? 谢谢你。

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

    Aki、

    他们在 CMPSS3、18 LSB 上看到的变化非常大、这使我对他们的设置提出了疑问。 在我看来、他们的设置不够干净、无法正确测量。 不过、我将在 F28075器件上尝试此操作并返回报告。 您可以在 EOB 星期一之前收到最新的回复。 谢谢。

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

    弗兰克、

    非常感谢您的进一步反馈。

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

    Aki、

    您能确认他们正在使用的 F28075器件型号吗?

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

    弗兰克、

    它们使用的是 TMS320F28075PTPT。

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

    Aki、

    我仍在尝试保护 F28075PTPT 器件以对其进行测试。 我们的站点上没有现成的可用资源。 请给我几天时间、让我获得一个测试。 谢谢。

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

    Aki、

    我找到了一个 F28075PTP 器件对其进行测试。 我没有发现任何问题。 对于迟滞4x、CMPSS1-CMPSS4显示了基准电压为3.3V 时的41至45 LSB。 这似乎是他们的设置问题。

    他们在 CMPSS4上看到这一点也很有趣、因为 CMPSS4、ADCIN14和 ADCIN15的输入都连接到所有 ADC。 这意味着与其他引脚相比、ADCIN14和 ADCIN15的负载有所增加、当 ADC 进行转换时、负载会加剧。 您能否确认当它们测量迟滞时、没有 ADC 处于活动状态。

    为了进行调试并最大程度地降低噪声、它们是否可以启用 GPDAC 并使用它来提供比较器的正输入?

    此外、如果可以、请转发其系统的原理图。

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

    您好、Frank、

    感谢您的测试确认。 我将与客户核实您的建议。 请您分享您的测试条件吗? 您是否将 GPDAC 用于正输入?  您测试过哪种 DACHVALS 值?

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

    您好、Frank、

    客户实际上在 测量 CMPSS4的迟滞时使用的是 CMPIN4P 中的 ADC。 您能否帮助您还使用有源 ADC 进行测试? 我们想知道这是否是这个问题的主要原因。

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

    Aki、

    使用的 GPDAC 值为2048和3072。 如果它们在测量迟滞的同时使用 ADC、那么这就是原因。 如前所述、与其他 ADC 通道相比、ADCIN14和 ADCIN15的负载会增加、因此驱动它们的任何通道都必须足够强。

    如果驱动 ADCIN14的电源不够强、只要 ADC S/H 电容闭合、电压就会下降、该下降将反映在比较器跳闸中。

    请让他们转发相应的原理图部分。

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

    弗兰克、

    请检查其 AD 采样电路是否存在 ADCIN14。 采样信号通过放大器 TL082、100欧姆电阻器、2.2nF 滤波电容器和10欧姆电阻器、然后馈送到 F28075。

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

    Aki、

    谢谢、我将进行回顾并返回给您。 在平均时间内、请让他们检查 gpdac 提供正输入且无 ADC 采样时的迟滞。

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

    弗兰克、

    客户表示 板上很难将 DAC 作为正输入进行接线。   是否可以在启用 ADCIN14的情况下检查迟滞性能? 它还可以验证我们的假设。 您是否对其 AD 采样电路有任何建议? 感谢您在这种情况下提供的长期支持。

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

    Aki、

    遗憾的是、我目前没有带宽来检查 ADC 采样的迟滞。 如果他们无法使用 DAC、则可以使用带电位器的电池。 或者、它们也可以使用与之前相同的设置、但在测量迟滞时禁用 ADC 采样。 是否可以让它们仅在禁用 ADC 的情况下运行与之前相同的测试?

    就原理图而言、运算放大器输出端的2.2nF 电容非常大。 它们为什么需要这么大的电容?

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

    您好、Frank、

     ADCIN14 在之前的 CMPSS4迟滞测试期间由 ADC-B 使能。 现在、他们尝试禁用 ADC-B 采样、 迟滞增加到20LSB、当所有 ADC 采样被禁用时 、迟滞范围为44~48 LSB、与数据表相匹配。 我的问题是  、禁用 ADC-B 采样后、为什么迟滞仍然较低。  这是由其他 ADC 模块的采样保持电路的影响造成的吗?

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

    Aki、

    我很高兴看到、禁用 ADC 采样可改善 CMPSS 迟滞。

    我认为他们的输入网络已经设置为进行电荷共享、但即使这样、他们在运算放大器输出端的电容也过大。 这基本上意味着、当 ADC 的 S/H 电容器闭合对信号进行采样时、大部分电流由2.2nF 电容提供、这会导致输入电压下降。 这种电压下降会影响 CMPSS 跳闸。 在样本之间、这个2.2nF 的大电容必须由运算放大器完全充电。

    如果 ADC 采样过快、且两次采样之间不会发生完全充电、ADC 将记录错误结果。 如果 ADC 的采样窗口足够大(换句话说、ADC 采样缓慢)、ADC 可能不会受到太大的影响、因为有足够的时间让2.2nF 和 S/H 电容器充满电。

    对于 CMPSS、这些压降将影响跳闸。 您可以尝试使用 CMPSS 滤波器来缓解这种情况、以便瞬时跳闸不会影响滤波器的输出。 但是、为了使其有效工作、您需要分析 ADC 采样率、以便相应地调整 CMPSS 滤波器。

    它们还可以 Spice 其输入网络。 请告诉我们这是否不清楚。

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

    弗兰克、

    感谢您的详细解释。 它们使用40K 的采样频率、采集窗口使用13个 CPU 时钟。

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

    Aki、

    他们分析这种情况的最准确方法是 Spice 其输入网络。 这样、他们就可以看到压降了多少以及压降了多长时间。 然后、他们可以使用此信息来配置 CMPSS 滤波器以忽略此窗口。

    他们也可以这样看待它:因为他们自己已经确认磁滞不会发生故障、所以磁滞实际上可以解决这一问题。 启用迟滞后、当 ADC 对信号进行采样并降低引脚上的电压时、迟滞将防止比较器跳闸。 是、迟滞量没有变化、而是按预期工作。

    请告诉我是否可以将其标记为已解决。

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

    弗兰克、

    它们在代码中使用了数字滤波器、因此您提到了空白窗口来忽略采样时的电压信号压降、对吧? 感谢您在这种情况下给予的大力支持、我将再次表示强烈支持。

    请使用手机 â"扫一扫"x

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

    Aki、

    我的意思是他们应该设置滤波器窗口和阈值、这样1或2个瞬时断开不会使滤波器的输出断开。