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.

[参考译文] MSP430FR4133:I2C SDA 第一位缺失或主 SCL

Guru**** 2538950 points
Other Parts Discussed in Thread: MSP430FR4133, TCA9535

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/651446/msp430fr4133-i2c-sda-first-bit-missing-or-leading-scl

器件型号:MSP430FR4133
主题中讨论的其他器件: TCA9535

您好!

我正在开发霍尔传感器 EVM、为此、我需要使用一些 LED 指示灯、我计划使用由 MSP430FR4133控制的 GPIO 扩展器来打开和关闭这些指示灯。  GPIO 扩展器通过 I2C 进行控制。  似乎我遇到了一种特殊情况、SDA 会降低第一个位或领导 SCL。  我首先尝试将信号发送到 GPIO 器件(TCA9535)、然后尝试发送到分压器(从 Vcc 到 GND 为10k 和9Meg)、从而模拟开漏。  在每种情况下、信号基本上是相同的、因此我相信它与 MSP430的设置有关。  我修改了您提供的示例代码 :msp430fr413x_euscib0_i2c_15.c、这样它将发送地址:0x4E、0x47、0x8E 或0x87。  0x4E 的前导0 0x47和0x8E、0x87的前导1似乎都被丢弃。  所有这些测量都是用较低的频率(UCB0BRW = 0x82;)完成的。  但是、我也在原始频率重复、结果看起来是一样的。  您知道如何解决此问题吗?

图1:地址:0x4E、 UCB0BRW = 0x8;  

图 2 地址:0x4E、 UCB0BRW = 0x82;

图 3地址:0x4E、 UCB0BRW = 0x82;

图 4地址:0x87、 UCB0BRW = 0x82;

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

    从器件地址为7位长、因此在 I2C 通信期间排除8位数字的 MSB 是合理的。 确保您正在向 TCA9535发送正确的从器件地址+ R/W 位、该位应通过在第九个时钟边沿将线路保持为低电平来进行确认。

    此致、
    Ryan