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.

[参考译文] AM625SIP:MCT8329A

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1508175/am625sip-mct8329a

器件型号:AM625SIP
主题中讨论的其他器件:MCT8329A

工具/软件:

有关 MCT8316/MCT8329"字节之间100us"的问题。 我不清楚这个定义。 在定义字节传输时、是否包括 数据的8个时钟周期加上 ACK/NACK 或仅包括数据传输的一个周期。  I2C 主器件是否必须在两个字节之间保持一个空闲(无时钟)时钟周期、或者确认时钟周期是两个字节之间的时间、并且简单地以10kHz 周期运行 I2C 时钟会提供必要的100us 延迟?

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

    您好 William、

    MCT8316没有时钟延展、因此我们建议每一口之间延迟100us。

    每个字节为8位数据+ 1位 ACK/NACK、在下一个字节传输开始之前延迟100us。

    谢谢、此致

    Venkatadri S.

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

    Venkatadri:

    感谢您的答复。 我想多确认一点。 字节之间的时间是否仅适用于从主器件到 MCT8329a 的写入? 我可以修改我的 HAL 驱动程序(STM32)、以便在写入时添加100us 延迟、但我想确认是否需要延迟从设备 TI 芯片发送并由主设备接收的字节。 这很难管理、因为 MCT8329a 正在发送和控制该起搏。 获取从器件发送的前两个字节来实现字节之间的中断一直很困难、因此我希望从器件发送的字节不需要100us。 在前两个字节之后、我能够延迟 ACK 并使时钟停止的间隙为100us。
    我第一次使用此代码看起来不错、因为我运行的器件有三个 MCT8329a 器件、所有这些器件都 表现出芯片冻结、并且24小时内没有故障。 我只是想确认这应该是可靠的,而不是完全依赖于我的测试结果。

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

    您好 William、

    主器件在发送和接收时控制时钟。  

    每个一字节提供100us 延迟、如果从器件需要额外的时间、从器件可以执行时钟延展。

    谢谢、此致

    Venkatadri S.

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

    我不明白"每提供一个字节的100us 延迟、如果从器件需要额外的时间、从器件可以执行时钟延展。" MCT8329a 是从器件、问题在于该器件在 MCT8329a 中不工作

    查看 TI 应用手册 SLLA662–2025年3月、"如何为 MCx83xx 器件系列对 I2C 进行编程"之后、我知道100us 只适用于写入、而不是读取。 我已经对所有地址写入和数据写入实现了此目的、使得没有发送的字节没有字节之间的100us 间隙。 我还尝试将 I2C 时钟降低至低至5kHz。 MCT8329a 仍然会出现芯片冻结、因此是否需要采取其他措施来消除芯片冻结?

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

    您好 William、

    您是否曾经能够与器件通信、或者器件根本没有响应?

    此致、

    Sachin S.

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

    是的、我们看到的是读取 SYS_STATUS2寄存器、因此会将电机转速报告为零。 当我有一个带电流探针的示波器时、我可以看到 I2C 事务首先在该寄存器的位15-0中变为零、但当前模式显示电机仍在运行。 由于我们每500ms 轮询一次该寄存器、因此我们会看到无论电机如何运行、它都将报告零、并且只能通过复位芯片来恢复正常数据。 当然会关闭电机、我们必须重新启动才能看到速度恢复。

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

    您好 William、

    您能否发布使用的 JSON 文件? 您能否检查是否有任何故障处于重试模式并且所有故障均已启用?

    您能否分享相电流波形以了解是否有重试?  

    谢谢、此致

    Venkatadri S.

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

    您好 William、

    您有任何更新吗?

    谢谢、此致

    Venkatadri S.