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.

[参考译文] TMS320F280025C:如何清除 I2CSTR 寄存器的总线忙位

Guru**** 2425930 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1064596/tms320f280025c-how-to-clear-bus-busy-bit-of-i2cstr-register

器件型号:TMS320F280025C

您好!

我正在开发写入/读取从器件的功能。
发现当从器 件断电(等待电源完全放电)、然后上电时、如果我们检查条件:I2C_isBusBusy (base)、它将返回 true。

它显示 了 I2CSTR 寄存器的总线忙位始终处于高电平。 为什么总线忙位总是很高,这是个问题吗? 如何防止出现此问题?
我在这里找到了类似的论坛: e2e.ti.com/.../tms320f280049c-i2c-signals-being-busy-when-it-should-not

只需了解在复位 i2c 模块后是否有任何其他方法或建议来清除总线忙位。

谢谢!

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

    从器件重新上电后、I2C 引脚的状态是什么?

    您是否处于重复模式(或)非重复模式? 如果您处于重复模式、则可以立即发送停止条件以使总线退出忙状态。 如果您处于非重复模式、则可以在生成停止条件之前读取/写入 I2C CNT 字节数。

    此致、

    曼诺伊