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.

[参考译文] MSP430I2041:如何确定 I2C 从设备中的读取或写入操作?

Guru**** 2587365 points
Other Parts Discussed in Thread: MSP430I2041

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/863542/msp430i2041-how-to-determine-read-or-write-in-i2c-slave

器件型号:MSP430I2041

我正在为 MSP430i2041写入 I2C 从设备、我希望能够检测主设备是正在写入还是正在读取。 I2C 规定、当主器件想要写入时、它发送(地址<< 1)| 0以及当它想要读取时、它发送(地址<< 1)| 1、最后一位指示写入(0)或读取(1)。

在 MSP 侧、如何检测读取/写入位? 接收到 UCSTTIFG 后、我已经检查了 UCBxADDRX 寄存器、它只包含右对齐地址。 它似乎不包括读取/写入位。

是否有办法获得读取/写入位?

谢谢、

Jason

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

    根据用户指南(SLAU335)第12.3.5.1.1和 12.3.5.1.2节(每一节中的第二段)、UCTR 位被自动置位以指示方向。 (在主器件中、软件必须设置此位。)

    您还将获得 RXIFG 或 TXIFG、用于指示方向、但这更间接。

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

    感谢 Bruce、我将尝试并报告给大家!

    Jason

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

    这就是诀窍、谢谢 Bruce!

    Jason