Other Parts Discussed in Thread: DRV10983
Hi,
I am attempting to write something via I2C to DRV10987 but the last byte is not acknowledged. As a first step I want to enable shadow register, so I set the 12th bit of EEPROM programming 5 register (0x35). Pull up resistors are 4k7 per recommendations in datasheet. My supply voltage is 12V and motor is connected. Here are traces measured by oscilloscope.
This is the first byte right after "START". This byte is write address of DRV10987 and it is acknowledged (the device is connected correctly and replying).
The second byte is the EEPROM Programming 5 register (0x35). This byte is acknowledged as well.
The third byte is the first portion of data, where bit 12 is set, all others are cleared. This byte was acknowledged as well.
The fourth byte is the rest of data, what is basically all zeroes. This byte is NOT acknowledged without any reason.
Could somebody help me with this? I spent lot of time with changing the clock frequency or other things without any change. Oscilloscope is used to detect possible noise in the communication. This is the very first portion of data sent to the device after power up. I tried to write to another registers with the same result. I did not try reading anything.
For easier readability of the signals here is the logic analyzer output:
Thanks a lot for help in advance!