Documentos de Académico
Documentos de Profesional
Documentos de Cultura
C Comienzo (Start):
Se produce cuando un dispositivo maestro ocupa
el bus, generando la condición. La línea de datos
(SDA) toma un estado bajo mientras que la línea
de reloj (SCL) permanece alta.
Protocolo de Comunicación I2C
B CONCEPTOS FUNDAMENTALES
U
S Parada (Stop):
Un dispositivo maestro puede generar esta
I condición, dejando libre el bus. La línea de datos
y la de reloj toman un estado lógico alto.
2
C Dato válido (Valid Data):
Situación presente cuando un dato presente en la
línea SDA es estable al tiempo que la
línea SCL está a nivel lógico alto.
Protocolo de Comunicación I2C
B CONCEPTOS FUNDAMENTALES
U
S Formato de Datos (Data Format):
La transmisión de un dato a través de este bus
I consiste de 8 bits de dato (1 byte). A cada byte
transmitido al bus le sigue un noveno pulso de
2 reloj durante el cual el dispositivo receptor del
byte debe generar un pulso de reconocimiento.
C
Reconocimiento (Acknowledge):
El pulso de reconocimiento, conocido como ACK
(del inglés Acknowledge), se logra colocando la
línea de datos a un nivel lógico bajo durante el
transcurso del noveno pulso de reloj.
Protocolo de Comunicación I2C
B CONCEPTOS FUNDAMENTALES
U Dirección de envío – Address.
El I2C no cuenta con una línea de selección de esclavos (Como lo hace el
S protocolo SPI), así que se debe establecer una forma de notificación al
Esclavo, para que éste se prepare para recibir información del Maestro.
I Mediante la sección de Dirección (Address) en el mensaje es como se
notifica al Esclavo, es por eso que va en seguida del Bit de Inicio (Start).
2 Así que esta es la secuencia que se sigue para el direccionamiento de
esclavos.
C 1.- El Maestro envía la dirección del Esclavo con el que quiere
comunicarse, esta dirección se envía a todos los Esclavos que estén
conectados.
2.- Cada Esclavo recibe la dirección, y la compara con su propia dirección.
3.- Si la dirección coincide con el Esclavo, en seguida el Esclavo envía un
bit ACK con nivel de voltaje Bajo, de regreso al Maestro.
4.- Si la dirección no coincide con el Esclavo, simplemente no se hace
nada, y la vía SDA permanecerá en nivel de voltaje Alto.
Protocolo de Comunicación I2C
B CONCEPTOS FUNDAMENTALES
U
S
Bit de Lectura/Escritura – Read/ Write Bit.
I
Después de la dirección en el mensaje, se envía un bit,
2 notificando al Esclavo si el Maestro quiere escribir
información o leer información de él. Si el Maestro
C quiere enviarle información al Esclavo (Escribir),
entonces manda un Bajo. Si el Maestro quiere solicitar
información al Esclavo (Leer), el bit Read/ Write será de
nivel Alto.
Protocolo de Comunicación I2C
B CONCEPTOS FUNDAMENTALES
Frame de información – Data Frame.
U Después de que el Maestro recibe el bit ACK del Esclavo, la
primer sección o Frame de información está lista para ser
S enviada al Esclavo.
El Frame para transportar información siempre es de 8 bits y se
I envía primero el bit más significativo. Después de enviar un
Frame de información, inmediatamente se envía un bit
2 ACK/NACK, para comprobar que el Frame de información
efectivamente se ha llegado a su destino y se ha recibido
C satisfactoriamente. Independientemente de quién envía el Frame
de información, si el Esclavo o el Maestro, siempre se debe
enviar en seguida el bit ACK/NACK, antes de que se envíe el
segundo Frame de información.
Una vez que se envían ambos Frames de información, el
Maestro puede activar un condición de paro (Stop), y con esto se
va a detener la transmisión. La condición de paro (Stop) es un
cambio de voltaje de nivel Bajo a nivel Alto, en la vía SDA, y se
activa cuando en la vía SCL se pasa de un nivel Bajo a un nivel
Alto (La vía SCL, posteriormente, permanecerá en nivel Alto).
Protocolo de Comunicación I2C
B
Índice
U
– Introducción
S – Conceptos Fundamentales
I – Funcionamiento
– Pasos para la Ejecución
2 – Un Maestro y varios Esclavos
– Varios Maestros y Varios esclavos
C
– Ventajas y Desventajas
– Ejemplos de dispositivos que utiliza el bus I2C
– Conclusiones
– Referencias
Protocolo de Comunicación I2C
B Funcionamiento
U
S Con el I2C la información viaja en mensajes. Los
mensajes van divididos en tramas de datos. Cada mensaje
I lleva un trama con una dirección la cuál transporta la
dirección binaria del esclavo al que va dirigido el mensaje,
2 y una o más tramas que llevan la información del mensaje.
También el mensaje contiene condiciones de inicio y paro,
C lectura y escritura de bits, y los bits ACK y NACK. Todo
esto va entre cada sección de datos.
Protocolo de Comunicación I2C
B Funcionamiento
U
Para que pueda quedar más claro aquí se ilustra un
S mensaje enviado a través del I2C.
I
2
C
Protocolo de Comunicación I2C
B Funcionamiento
U
S
I
2
C
Protocolo de Comunicación I2C
B Funcionamiento
U
Transmisión de bits
S – Los bits de datos van por SDA
– Por cada bit de información es necesario un pulso de SCL
I – Los datos sólo pueden cambiar cuando SCL está a nivel bajo
2
C
Dato Dato
válido válido
Protocolo de Comunicación I2C
B Funcionamiento
U Transmisión de bits
S – Los bits de datos van por SDA
– Por cada bit de información es necesario un pulso de SCL
I – Los datos sólo pueden cambiar cuando SCL está a nivel bajo
2
C
Dato Dato
válido válido
Protocolo de Comunicación I2C
B Funcionamiento
U
S
I
2
C
Protocolo de Comunicación I2C
B Funcionamiento
U
S
I
2
C
Protocolo de Comunicación I2C
B Funcionamiento
U
S
I
2
C
Protocolo de Comunicación I2C
B Funcionamiento
U
S
I
2
C
Protocolo de Comunicación I2C
B Funcionamiento
U
S Casos particulares de respuesta
– Esclavo ocupado y no responde al ACK de dirección
I • Maestro genera condición de STOP
– El esclavo quiere interrumpir una recepción periódica de datos
2 • El esclavo no responde a un dato con ACK
C • El maestro genera la condición de STOP
– El maestro quiere interrumpir una recepción de datos de un esclavo
• El maestro no responde con ACK
• El esclavo deja de transmitir
• El maestro genera condición de STOP
Protocolo de Comunicación I2C
B Funcionamiento
U
S
I
2
C
Protocolo de Comunicación I2C
B
Índice
U
– Introducción
S – Conceptos Fundamentales
I – Funcionamiento
– Pasos para la Ejecución
2 – Un Maestro y varios Esclavos
– Varios Maestros y Varios esclavos
C
– Ventajas y Desventajas
– Ejemplos de dispositivos que utiliza el bus I2C
– Conclusiones
– Referencias
Protocolo de Comunicación I2C
B Pasos de ejecución
U
1.- El Maestro envía la condición de Inicio (Start) a cada
S Esclavo que esté conectado en la vía SDA, cambia el
nivel de voltaje a Bajo, y deja la vía SCL en estado Alto.
I
2
C
Protocolo de Comunicación I2C
B Pasos de ejecución
U
2.- El Maestro envía la dirección de 7 a 10 bits, a
S cada uno de los Esclavos para identificar al
Esclavo con el que se quiere comunicar.
I
2
C
Protocolo de Comunicación I2C
B Pasos de ejecución
U 3.- Cada Esclavo recibe la dirección y la compara con su
propia dirección. Si la dirección coincide, el Esclavo envía
S un bit ACK, y pone la vía SDA en nivel Bajo de voltaje. Si
la dirección no es la misma, entonces los Esclavos no hacen
I nada y dejan la vía SDA en el mismo nivel de voltaje Alto.
2
C
Protocolo de Comunicación I2C
B Pasos de ejecución
U
4.- El Maestro envía o recibe los Frames de
S información.
I
2
C
Protocolo de Comunicación I2C
B Pasos de ejecución
U
5.- Después de que cada Frame de información fue
S enviado, el dispositivo que recibe ( ya sea Esclavo o
Maestro) va a enviar un bit ACK al remitente, para
I notificarle que la información se recibió exitosamente.
2
C
Protocolo de Comunicación I2C
B Pasos de ejecución
U
6.- Para concluir la transmisión de información, el
S Maestro envía al Esclavo la condición de paro (Stop)
con un nivel Alto en la vía SDA, cuando cambia el
I estado de SCL a Alto.
2
C
Protocolo de Comunicación I2C
B
Índice
U
– Introducción
S – Conceptos Fundamentales
I – Funcionamiento
– Pasos para la Ejecución
2 – Un Maestro y varios Esclavos
– Varios Maestros y Varios esclavos
C
– Ventajas y Desventajas
– Ejemplos de dispositivos que utiliza el bus I2C
– Conclusiones
– Referencias
Protocolo de Comunicación I2C
B Un Maestro y varios esclavos
U
S Como ya lo hemos visto, en I2C el Maestro controla
a los esclavos por medio de una dirección, por lo
I tanto, un sólo Maestro puede controlar muchos
Esclavos. Usando 7 bits de dirección se pueden
2 obtener hasta 128 dispositivos conectados (En
realidad son sólo 112, ya que los 16 restantes son
C
utilizados para fines especiales).
Para 10 bits de dirección se pueden obtener hasta
1024 dispositivos conectados (Es muy raro utilizar
10 bits).
Protocolo de Comunicación I2C
B Un Maestro y varios esclavos
U
Muchos Maestros se pueden conectar a múltiples
S
Esclavos pero puede haber problemas cuando dos o
I más Maestros intentan enviar u obtener información
al mismo tiempo en la vía SDA. Esto se puede
2 resolver si cada Maestro tiene la capacidad de leer el
estado del SDA, para saber si se encuentra ocupado o
C no, antes de enviar información. Si el SDA se
encuentra en Bajo, quiere decir que algún otro
Maestro se encuentra utilizando la vía SDA, por lo
tanto habría que esperar a que se desocupe. Si el
estado del SDA es Alto, significaría que se puede
enviar información de forma segura sin causar
conflictos.
Protocolo de Comunicación I2C
B Varios Maestros y Varios Esclavos
S
I
2
C
Protocolo de Comunicación I2C
B Ejemplos de Dispositivos con I2c
U Termómetro / Termostato
S
I
2
C
Protocolo de Comunicación I2C
B Ejemplos de Dispositivos con I2c
U
S
I
2 Ver simulación
C en Proteus
Protocolo de Comunicación I2C
B
Índice
U
– Introducción
S – Conceptos Fundamentales
I – Funcionamiento
– Pasos para la Ejecución
2 – Un Maestro y varios Esclavos
– Varios Maestros y Varios esclavos
C
– Ventajas y Desventajas
– Ejemplos de dispositivos que utiliza el bus I2C
– Conclusiones
– Referencias
Protocolo de Comunicación I2C
B
Conclusiones
U
S
Conclusiones
I • Un bus serie permite reducir el tamaño general del
circuito
2
• El protocolo del bus I2C contempla
C Conexión de nivel físico
Intercambio de datos
• El protocolo se puede
implementar
Utilizando puertos de entrada/salida maestro
Unidad específica
• Gran cantidad de dispositivos compatibles con
I2C
Protocolo de Comunicación I2C
B
Índice
U
– Introducción
S – Conceptos Fundamentales
I – Funcionamiento
– Pasos para la Ejecución
2 – Un Maestro y varios Esclavos
– Varios Maestros y Varios esclavos
C
– Ventajas y Desventajas
– Ejemplos de dispositivos que utiliza el bus I2C
– Conclusiones
– Referencias
Protocolo de Comunicación I2C
B
Referencias
U
Enlaces de Internet
S The I2C FAQ
http://www.ping.be/~ping0751/i2cfaq/i2cindex.htm
I
2 Robots Didácticos
http://robots-argentina.com.ar/didactica/descripcion-y-funcionamiento-del-bus-i2c /
C
Fundamentos del I2C
https://teslabem.com/nivel-intermedio/fundamentos/
Protocolo de Comunicación I2C
B
Preguntas
U
S
I
2
C
Protocolo de Comunicación I2C
B
U
S
I
2
C