Actualmente estoy intentando usar el MS5611 (sentado en un CJMCU-117) sobre I²C con libopencm3 en un STM32F103C8.
Cuando hago una lectura, el esclavo envía un byte adicional (0xFF) después de que el maestro ha enviado un NACK. Esto sucede tanto para la lectura de PROM (2 bytes) como para la lectura de ADC (3 bytes).
El siguiente Código da como resultado la siguiente forma de onda, la hoja de datos [1] muestra en la página 13 cómo debería ser.
// Send
i2c_transfer7(I2C2, 0x77,
commandPtr, 1,
nullptr, 0);
// Read
i2c_transfer7(I2C2, 0x77,
nullptr, 0,
bufferPtr, 3);
¿Puedealguienayudarmearesolveresto?
[1]