Me parece que I2C en realidad está transfiriendo bits invertidos, lo que suena un poco extraño, así que estoy buscando una aclaración.
Diagrama I2C de aquí .
Digamos que estamos escribiendo al esclavo. Un cero (0) llega a SDA out
, lo que significa que nMOS está en HiZ y el receptor obtiene un 1 debido a un Pull-up. Y si un 1 llega a SDA out
, entonces nMOS se conectará con tierra, lo que significa que el receptor obtiene un 0.
Me parece que I2C en realidad está enviando datos invertidos a través del SDL. Esto realmente no tiene ningún sentido para mí, así que ... ¿hay un inversor en el extremo del receptor que no se muestra en el diagrama que hace que los datos sean correctos? ¿O malentendí cómo funciona en primer lugar?