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.

[参考译文] TMS320F280039C:I2C 挂起问题 — SCL 在从模式下卡在低电平

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1617166/tms320f280039c-i2c-hang-issue---scl-stuck-low-in-slave-mode

器件型号: TMS320F280039C

亲爱的香榭丽舍大街、

我向我们的客户询问这个问题。

F28039 用作 I2C 从器件。

我们观察到 I2C MY Hang 和 SCL 无法释放(卡在低电平)。

F280039 I2C 会因 SCL 变为低电平而挂起。

在这种情况下、F280039 不会按预期响应。

我想知道是否将 I2CMDR.IRS 从 0 切换为 1 是复位 I2C 模块的唯一方法、或者是否有其他推荐的恢复方法。

I2CMDR.IRS = 0

I2CMDR.IRS=1

感谢您的支持

此致、

Clark

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

    嗨、Clark、

    也许会尝试在 I2C R/W 中断环路中添加一些 50µs 延迟。 在串行外设锁存 up.in CCS 调试中、x39c 120MHz SYSCLK 似乎有竞态条件。 特别注意到、SPI、SCI FIFO 信号 PZ 器件的行为不符合预期。 看似本地总线仲裁器可能在到 CPU 累加器或其他寄存器的数据管道中停止。 某些标志在竞态条件下被忽略或挂起、CPU 16 位透明地址锁存器有时似乎会闩锁。

    DEVICE_DELAY_US (50);

    我们观察到 I2C 我的挂起和 SCL 无法释放(卡在低电平)。

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

    您好、

    我们的支持是在今天由于美国假期而停止工作,感谢您的耐心。

    此致、

    彼得

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

    嗨、Clark、  

    遗憾的是、对于 F28003x 器件系列中的 I2C 模块、 IRS 切换是复位 I2C 模块的唯一方法。 如果切换 IRS 不足以满足您的需求、F28P55x 器件有一些改进、更灵活的时钟延展

    此致、

    彼得