AnsweredAssumed Answered

I2C DevAddress incorrect

Question asked by Nyix on Jun 26, 2017
Latest reply on Jun 27, 2017 by Nyix

Hey,

 

I have a problem with the I2C1 on the STM32F746G-Discovery.

I'm using the example-code for communication with DMA, but I changed the address mode from 10bit to 7bit.

Now it's getting strange. The ST-Board is the master and a TCA6424A port expander is the slave. According to the datasheet the device address is 010 0010b (=22h; my ADDR pin is connected to GND).

But if I use the function HAL_I2C_Master_Transmit_DMA() and watch the output with an oszilloscope, the device address changed from 22h to 11h (010 0010b -> 001 0001b). I don't know why, but the library adds an extra zero in front of the device address. I can workaround it, if I use 44h as an address (100 0100b). With 44h the output is 22h.

 

Did I miss something or is there a bug in the code? How can I disable the additional zero in front of the device address?

 

Kind regards

Nyix

Outcomes