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.

[参考译文] TMS320F28069:使用 SIMULEN0同步采样模式时、是否可以将 SOC1保持未配置?

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1497577/tms320f28069-is-it-okay-to-leave-soc1-unconfigured-when-using-simulen0-simultaneous-sampling-mode

器件型号:TMS320F28069

工具/软件:

您好、

我正在使用 TMS320F28069 (100引脚 PZP 封装) 我目前正在准备使用 同步采样模式(SIMULEN0) 公式。
目标是采样 U 相电流(ADCINA0) W 相电流(ADCINB0) 游标 消息流 ePWM1 SOCA 作为触发器。

以下是我的配置计划:

AdcRegs.ADCSAMPLEMODE.bit.SIMULEN0 = 1;//启用 SOC0和 SOC1的同步采样
AdcRegs.ADCSOC0CTL.BIT.TRIGSEL = 5;// ePWM1 SOCA 触发器
AdcRegs.ADCSOC0CTL.BIT.CHSEL = 0;//配对:ADCINA0 (U 电流)和 ADCINB0 (W 电流)
AdcRegs.ADCSOC0CTL.BIT.ACQPS = 6;//采样窗口= 7个周期(6 + 1)
AdcRegs.INTSEL1N2.bit.INT1SEL = 1;//在 EOC1之后触发 ADCINT1 (即 ADCINB0结果)

我的问题是:

当 SIMULEN0 = 1且 SOC0设置为从 ePWM1触发时、
是否可以让 SOC1完全不配置?

目前、我没有为写入任何配置ADCSOC1CTL、因此它将保留为默认值:

  • TRIGSEL = 0(仅限软件)

  • CHSEL = 0

  • ACQPS = 0(通常被视为无效)

在这种同步模式下、SOC1是否仍能与 SOC0成对正常工作、
这两个结果是否会ADCRESULT0ADCRESULT1按预期出现在和中?

跟进:

  • 在此模式下、SOC1未配置是否存在任何风险或问题?

  • 还是最好显式配置ADCSOC1CTL,即使 SIMULEN0处理配对?  

希望得到任何澄清或建议!

谢谢你。

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

    您好、  

    这应该没问题。

    此致、

    Ben Collier

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

    您好 Ben、

    感谢您的明确答复。

    但是、我担心 SOC1的结果可能无效。
    您能否澄清一下为什么 SOC1的结果在此模式下被视为无效?

    在我的例子中、这一点非常重要 SOC0和 SOC1均产生有效结果
    因为我需要 使用 ADCINA0和 ADCINB0对 U 相和 W 相电流进行同时采样 分别。

    因此、我想再次确认以下几点:

    我是否需要显式配置 ADCSOC1CTL  为了确保  SOC1 (ADCINB0)的结果在同步采样模式下有效?

    下面是我打算使用的代码:  
    --------------------------------------------------------------------------------

    AdcRegs.ADCSAMPLEMODE.bit.SIMULEN0 = 1;//启用 SOC0和 SOC1的同步采样
    AdcRegs.INTSEL1N2.bit.INT1SEL = 1;//在 EOC1之后触发 ADCINT1 (即 ADCINB0结果)

    AdcRegs.ADCSOC0CTL.BIT.TRIGSEL = 5;// ePWM1 SOCA 触发器
    AdcRegs.ADCSOC0CTL.BIT.CHSEL = 0;//配对:ADCINA0 (U 电流)和 ADCINB0 (W 电流)
    AdcRegs.ADCSOC0CTL.BIT.ACQPS = 6;//采样窗口= 7个周期(6 + 1)

    AdcRegs.ADCSOC1CTL.BIT.TRIGSEL = 5;//与 SOC0相同(这是否忽略?)
    AdcRegs.ADCSOC1CTL.BIT.CHSEL = 0;// ADCINB0
    AdcRegs.ADCSOC1CTL.BIT.ACQPS = 6;//设置为6以获得最小的7周期采集窗口
    --------------------------------------------------------------------------------

    我已经设置了 ADCSOC0CTL.bit.TRIGSEL = 5(ePWM1 SOCA 触发器)、
    因此、我有点担心TRIGSEL SOC1的设置是否会导致任何冲突或意外行为、
    或者、如果在启用 SIMULEN0时只是忽略了该值、

    目前、我从 ADCINA0和 ADCINB0获得了结果。
    但我对这两个通道是否有信心 是真正同时采样的
    以及是否需要 两个通道都使用了适当的采集窗口

    如果您能确认上述配置是否正确、我们将不胜感激。
    以及它是否可以确保 有效和同步采样 差分 ADC 通道。

    再次感谢您的持续支持!

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

    您好、

    请给我一天时间来研究这个问题。

    此致、

    Ben Collier  

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

    谢谢 Ben。
    感谢您抽出宝贵时间。
    我将等待您的答复。

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

    您好、

    我很抱歉我的初始回答、我是不正确的。 在同步采样模式下使用 SOC0和 SOC1时、可以不配置 SOC1。 我编辑了我的初始回复、以避免将来出现混淆。

    此致、

    Ben Collier  

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

    您好 Ben、

    再次感谢您先前对同步采样模式的阐述。

    根据 TRM 中的描述、我了解当启用同步采样时(例如SIMULEN0 = 1)、
    ADCINA0和 ADCINB0的采样保持(S&H)同时发生 ,但 转换按顺序执行 —先是 A0、然后是 B0。

    鉴于此、我预计会是这样 ADCINA0和 ADCINB0上施加了相同的电压 、ADCRESULT0和 ADCRESULT1的数字结果应该几乎相同。

    为了验证这一点、我进行了一个小实验:

       

    • 我已连接 ADCINA0和 ADCINB0切换到同一电源输出 (如第一张图中所示)。

    • 我放了一个 EOC1中断中的断点 观察 ADC 结果(如第二个图中所示)。

    • 我捕获了不同电压电平下的结果并对进行了比较 理想数字值 使用 ADCINA0和 ADCINB0的实际结果(请参阅下表)。

    以下是测试的一些关键结果:

    测试编号 PSU 电压 理想数字值 ADC 数字值 两种方法
    ADCINA0 ADCINB0 ADCINA0 ADCINB0
    1. 0.5 620 598. 610 3.6% 1.7%
    2. 0.5 620 686 701. -10.6% -13.0%
    3. 0.5 620 637 623. -2.7% -0.4%
    4. 1. 1241. 1273 1280 -2.6% -3.2%
    5. 1. 1241. 1309. 1318 -5.5% -6.2%
    6. 1. 1241. 1280 1257 -3.2% -1.3%
    7. 2. 2482. 2502. 2474 -0.8% 0.3%
    8. 2. 2482. 2480 2459 0.1% 0.9%
    9. 2. 2482. 2517 2498 -1.4% -0.7%

    如您所见、即使两个 ADC 引脚都连接在一起、A0和 B0的 ADC 结果也不相等。
    在某些情况下、还包括 理想值的偏差误差超过10% 、似乎太高了。

    我的问题:

    1. 之间出现如此大的变化是正常的 ADCINA0和 ADCINB0 在同步采样模式下、两个输入在物理上连接在一起?

    2. 是否还有其他需要检查的内容 验证准确性或校准 同步采样的好处是什么?
      (作为参考、我已经执行Device_cal了和AdcOffsetSelfCal()由 TI 提供的。)

    任何见解或建议都将非常感谢。

    再次感谢您的帮助!

    此致、
    JangHoon Kim

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

    您好、

    这两者之间变化很大是正常的吗 ADCINA0和 ADCINB0 在同步采样模式下、当两个输入在物理上连接在一起时?

    该错误是否是由设置的稳健性引起的? ADC 的输入端是否有任何噪声? 如何向 ADC 引脚提供 PSU 电压?

    此致、

    Ben Collier

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

    您好 Ben、

    感谢您的跟进。

    如测试设置图中所示、使用直接布线通过同一节点向 ADCINA0和 ADCINB0提供了 PSU 电压。

    2.我认为 ADC 输入端没有明显的噪声。
    MCU 目前在没有任何 PWM 活动或 FET 等外部开关组件的情况下运行、因此环境应该相对安静。

    `D、我`了 i evice_cal ()`并按照 TI 的建议执行了` AdcOffsetSelfCal ()。

    作为参考、我附上了当前测试设置的照片。

    如您所见、PSU 电压通过跳线直接提供给 ADCINA0和 ADCINB0引脚、电源和 ADC 输入之间无需进行任何 RC 滤波。

    这种直接接线是否对小干扰或与布局相关的效应很敏感、这可能会导致我观察到的变化?

    如果您建议检查其他方面、请告知我。

    再次感谢您的持续支持!

    此致、
    JangHoon Kim

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

    您好、

    如您所见、PSU 电压通过跳线直接提供给 ADCINA0和 ADCINB0引脚、电源和 ADC 输入之间无需任何 RC 滤波。[/报价]

    具有这样的长跳线不会导致 ADCINA0和 ADCINB0产生干净的信号。  

    您至少能将跳线绞在一起吗? 这应减小两个输入之间的差值。

    此致、

    Ben Collier