LIS3DH don't send ACK at 9th clock pulse
I am using LIS3DH accemelator to acuqire gravity data. The MCU is NXP MKL16. LIS3DH's pin8 CS is set to high level to communicate with I2C protocol, and pin7 SA0 is set to connect to GND. The SCL and SDA pins are pull up with 4.7K resisttors. After setting the MCU's I2C port with 50KHz communication speed, and try to read WHO_AM_I register of LIS3DH, the value return is 0XFF, which is not correspond with 0X33. Then I use an oscilloscope the capture the signals on Lis3DH SCL and SDA pins. The signals can be seen from the picture. It seems that the acknowledge is not received at the 9th clock pulse, which is conflict with the LIS3DH's datasheet. I have spent plenty time to make LIS3DH to work correctly, but in vain.
Does anybody know the reason? Help or suggestion is needed here. Thanks!
