Академический Документы
Профессиональный Документы
Культура Документы
Introduccin
Caractersticas del bus I2C
Conexin de dispositivos al bus: nivel fsico
Intercambio de informacin: nivel de enlace
Generacin del protocolo desde un microcontrolador
Ejemplos de dispositivos que utiliza el bus I2C
Conclusiones
Bibliografa
Introduccin
Caractersticas del bus I2C
Conexin de dispositivos al bus: nivel fsico
Intercambio de informacin: nivel de enlace
Generacin del protocolo desde un microcontrolador
Ejemplos de dispositivos que utiliza el bus I2C
Conclusiones
Bibliografa
Introduccin
En las lecciones anteriores se ha visto:
Interaccin con el entorno
Puertos de entrada/salida
Expansin de memoria externa
Comunicacin serie
Asncrona
Sencillo interfaz sncrono
Introduccin
Interconexin de dispositivos mediante bus serie
Ventajas
Inconvenientes
Velocidad inferior a un bus paralelo
Disponibilidad de circuitos que soporten el bus
Parmetros generales
Introduccin
Origen del bus I2C (Inter Integrated Circuits Bus)
Desarrollado por Philips a principios de los 80 como medio de
interconexin entre una CPU y dispositivos perifricos dentro de la
electrnica de consumo.
Simplificar las conexiones entre los perifricos (pistas, decodificadores, ..)
Aumentar de la inmunidad al ruido
Control de sistemas de audio y vdeo (baja velocidad)
Aplicaciones
Introduccin
Caractersticas del bus I2C
Conexin de dispositivos al bus: nivel fsico
Intercambio de informacin: nivel de enlace
Generacin del protocolo desde un microcontrolador
Ejemplos de dispositivos que utiliza el bus I2C
Conclusiones
Bibliografa
Velocidad de transmisin
Standard: hasta 100 Kbits/s
Fast: hasta 400 Kbits/s
High-speed: hasta 3,4 Mbits/s
Introduccin
Caractersticas del bus I2C
Conexin de dispositivos al bus: nivel fsico
Intercambio de informacin: nivel de enlace
Generacin del protocolo desde un microcontrolador
Ejemplos de dispositivos que utiliza el bus I2C
Conclusiones
Bibliografa
Dispositivos
Microcontrolador
Protocolo de comunicacin I2C
VDD
Nivel alto
VDD
Nivel bajo
VDD
SDA
SCL
Carga activa
t
Nomenclatura
Emisor: Dispositivo que enva datos al bus
Receptor: Dispositivo que recibe datos del bus
Maestro: Dispositivo que inicia una transferencia, genera las seales
de reloj y termina la transferencia
Esclavo: Dispositivo direccionado por un maestro
Protocolo de comunicacin I2C
SDA
SCL
Dato
vlido
Dato
vlido
SDA
Emisor
D6
D5
D4
D3
D2
D1
D0
Receptor
Bus
ACK
D7
D6
D5
D4
D3
D2
D1
D0
ACK
Maestro
SCL
D a t o
SCL
(maestro)
SDA
(maestro)
Bus
inactivo
Condicin
de inicio
START
Primer bit
SCL
(maestro)
SDA
(maestro)
ltimo bit
ACK o NACK
Condicin
de fin
STOP
Bus
inactivo
Maestro
A5
A4
A3
A2
A1
A0
R/W
Esclavo
ACK
A6
Bus
A5
A4
A3
A2
A1
A0
R/W
ACK
R/W
Maestro
SCL
Direccin
Protocolo de comunicacin I2C
M
A
E
S
T
R
O
E
S
C
L
A
V
O
10
Direccin
W A
Maestro
Dato
Esclavo
A P
Maestro
Esclavo Maestro
Dir
Dato
Dato
Dato
A P
M
A
E
S
T
R
O
E
S
C
L
A
V
O
11
Direccin
R A
Maestro
Esclavo
Dato
N P
Esclavo
Maestro
Dir
Dato
Dato
Dato
N P
Direccin
Maestro
Dato
Esclavo
Maestro
A S
Esclavo
Direccin
R A
Maestro Esclavo
Dato
Esclavo
NP
Maestro
12
13
SDA
Dato
vlido
tSU:DAT 0,25 s
tr < 1 s
tHIGH > 4 s
tf < 0,3 s
T 10 s
tHD:DAT 0 s
tLOW 4,7 s
F 100 Kbits/s
Protocolo de comunicacin I2C
SDA
(maestro)
SCL
(maestro)
tSU:STA 4,7s
tHD:STA 4s
SDA
(maestro)
SCL
(maestro)
tLOW 4,7s
tSU:STA 4s
tHD:STA 4,7s
Protocolo de comunicacin I2C
14
No se permite multimaestro
15
Generacin de START
Generacin de STOP
Enviar direccin o dato y recibir ACK
Recibir dato y enviar ACK o NACK
Consideraciones temporales
Velocidad del procesador
Un 8051 a 12 MHz ejecuta un ciclo mquina cada microsegundo.
Las instrucciones de acceso a los puertos consumen un ciclo mquina.
Pseudocdigo
SCL
(maestro)
SDA = BIT
SCL = 1
delay(4s )
SCL = 0
delay(4,7s )
tSU:DAT 0,25s
tHIGH 4s
tHD:DAT 0s
tLOW 4,7s
16
Interfaz I2C
Direccionamiento
Acceso a la funcionalidad del dispositivo
En dispositivos sencillos lectura y escritura de datos.
En dispositivos complejos
Configuracin de modo de funcionamiento
Comando + dato
Ejemplos de dispositivo
puerto de E/S de 8 bits
Memoria serie
Sensor de temperatura - termostato
Protocolo de comunicacin I2C
17
Despus de la inicializacin
Configurado como entrada (todas las salidas a nivel alto)
18
Inicio de escritura
Dato disponible
19
Cambia la entrada
20
21
22
23
Termmetro / Termostato
Registro de Configuracin
Comandos (1 byte):
Lectura de la temperatura [AAh]
Acceso a TH [A1h]
Acceso a TL [A2h]
24
25
26
27
Conclusiones
Conclusiones
Un bus serie permite reducir el tamao general del circuito
El protocolo del bus I2C contempla
Conexin de nivel fsico
Intercambio de datos
28
Bibliografa
El bus I2C. De la teora a la prctica
Dominique Paret Ed. Paraninfo. 1995. (ISBN: 84-283-2167-1)
29
Enlaces de Internet
The I2C FAQ
http://www.ping.be/~ping0751/i2cfaq/i2cindex.htm
30