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 first bit missing or Leading SCL

Part Number: MSP430FR4133
Other Parts Discussed in Thread: TCA9535

Hello,

I am developing a hall sensor EVM and for that I need to use some LED light indicators that I plan switch on and off with my GPIO expander that is controlled by the MSP430FR4133.  The GPIO expander is controlled through I2C.  It appears that I am getting a peculiar situation where the SDA drops the first bit or leads the SCL.  I first tried sending the signal to  the GPIO device (TCA9535) and then to a voltage divider (10k and 9Meg from Vcc to GND) emulating the open drain.  In each case the signals are essentially the same, so I am convinced it has something to do with the setup of the MSP430.  I modified the sample code you all  provide: msp430fr413x_euscib0_i2c_15.c, such that it would send the addresses: 0x4E, 0x47, 0x8E, or 0x87.  The leading 0 of 0x4E, 0x47 appears to be dropped as well as the leading 1 of 0x8E,0x87.  All of these measurements were done with a slower frequency (UCB0BRW = 0x82;) .  However, I also repeated at the original frequency as well and the result seemed the same.  Do you know how I can fix this problem?

Figure 1: Address: 0x4E, UCB0BRW = 0x8; 

Fig. 2 Address: 0x4E, UCB0BRW = 0x82;

Fig. 3 Address: 0x4E, UCB0BRW = 0x82;

Fig. 4 Address: 0x87, UCB0BRW = 0x82;

  • Hello Patrick,

    A slave address is seven bits long so it makes sense that the MSB of a 8-bit number is excluded during I2C communication. Make sure that you are sending the correct slave address + R/W bit to the TCA9535 which should then acknowledge by holding the line low on the ninth clock edge.

    Regards,
    Ryan

**Attention** This is a public forum