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.

[参考译文] TMS320F28388D:尽管 F28388D 上具有 GPIO 输入鉴定、但意外检测到短脉冲

Guru**** 2516840 points
Other Parts Discussed in Thread: TMS320F28388D

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1560345/tms320f28388d-unexpected-detection-of-short-pulse-despite-gpio-input-qualification-on-f28388d

器件型号:TMS320F28388D


工具/软件:

尊敬的 TI 团队:

我正在使用 TMS320F28388D、并尝试使用 GPIO 输入鉴定功能过滤短脉冲。 以下是我的设置:

  • 配置为输入限定模式的 GPIO 01 (3 个样本)。
  • 限定周期设置为 255、需要~10.2µs 的采样窗口。
  • 配置完成  CPU1 、根据需要。
  • GPIO 所有权随后将转移到  CPU2 、它使用 GPxDAT 寄存器读取输入。

尽管进行了此设置  3µs 脉冲  CPU2 仍在检测到 SCL。 我确认了限定设置已正确应用、并预计该脉冲会被滤除。

值得注意的是:相同的输入限定配置已成功用于管理的应用的其他部分  CPU1 、它的行为与预期一致。 此问题仅在读取输入时出现  CPU2

我的理解是、 GPxDAT 反映了合格的输入状态、因此应抑制短干扰。 CPU2 可能看到不合格输入值的原因是否存在? 这可能是由于与采样时间点的时序对齐造成的、还是限定条件与 CPU2 读取的交互方式存在限制?

任何见解或说明都将非常感谢!

谢谢、
Javier Fernandez Cepeda

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

    您好 Javier:

    当 QUALPRD=n 时、限定符每 2 * n * SYSCLK 周期(而不是 2^n)对引脚进行一次采样。 在 200MHz (T_clk = 5ns) 时、QUALPRD=255⇒T_SAMPLE = 2 * 255 * 5ns =每个样本的 2.55µs。 使用 3 样片鉴定时、输入必须在= 3 * 2.55µs = 7.65µs 时保持稳定、才能翻转鉴定状态(对齐最多可以累加一个样本)。 因此、如果 3µs 脉冲确实处于 3 采样模式、则应抑制该引脚。

    如果 CPU2 的 初始化代码\重新初始化 GPIO、它可以静默将引脚设置回 SYNC (00) 或更改组的 QUALPRD。 在轮询之前、请立即从 CPU2 读回并确认这些寄存器仍然是 QSEL=01(3 样片)、以及正确 8 引脚组的预期 QUALPRD。 此外、 验证您的引脚 (GPxDAT) 是否未无意中处于 CPU2 上的异步模式。

    此处的一项快速测试是临时切换到 6 样片鉴定、以增加最小识别宽度 (6 * 2.55us = 15.3us)。 如果误报检测消失、它指向仍然有效的鉴定、但之前的设置在 CPU2 上不起作用。

    此致、

    Masoud