• No se han encontrado resultados

Bus i2c

N/A
N/A
Protected

Academic year: 2020

Share "Bus i2c"

Copied!
15
0
0

Texto completo

(1)
(2)

}  I2C (Inter-Integrated Circuit Bus), es un bus de comunicación serial síncrona,

desarrollado por Phillips Semiconductores a principios de los años 80, con la principal intención de interconectar una cierta cantidad de dispositivos en sus equipos de radio y TV.

EL PROBLEMA A RESOLVER:

}  Los dispositivos periféricos en sistemas embebidos, se conectan al

microcontrolador como dispositivos de E/S mapeados en memoria, usando las líneas paralelas del bus de dirección y de datos. Esto produce una gran

cantidad de pistas en el PCB para enrutar las líneas de direcciones y de datos, sin mencionar un número de decodificadores de direcciones y lógica adicional para interconectar los componentes.

}  Muchas líneas de control implican que el sistema sea más susceptible a

perturbaciones por Interferencia Electromagnética (EMI) y Descarga Electrostática (ESD).

El bus I2C

(3)

} 

Memorias EEPROM y RAM.

} 

Sensores de temperatura.

} 

Multiplexores direccionales y switches.

} 

Relojes de tiempo real/calendarios.

} 

Conversores A/D y D/A.

} 

Pantallas LCD y manejadores de LED’s.

} 

Expansores de entradas y salidas

} 

Muchos otros

(4)

}  Se utilizan dos líneas de comunicación, una para los datos llamada SDA y otra para el reloj SCL.

}  Las líneas SDA (Serial Data) y SCL (Serial Clock) están conectadas a la fuente de alimentación

a través de resistencias de pull-up. Cuando el bus está libre, ambas líneas están en nivel alto.

}  Los dispositivos pueden ser considerados como Maestro (Master) o Esclavo (Slave).

}  El Maestro es el dispositivo que inicia la transferencia en el bus y genera la señal de Clock.

}  El Esclavo (Slave) es el dispositivo direccionado.

}  Cada dispositivo es reconocido por una única dirección (si es un microcontrolador, LCD, memoria

o teclado) y cualquiera puede operar como transmisor o receptor de datos, dependiendo de la función del dispositivo.

}  Un display es solo un receptor de datos mientras que una memoria recibe y transmite datos. El bus I2C

Características del bus I2C

Maestro

Esclavo1 Esclavo2 Esclavo3

(5)

Las líneas SDA y SCL son bidireccionales y se encuentran conectadas a una fuente de alimentación positiva por medio de resistencias pull-up.

Si ambas líneas SDA y SCL se encuentran en estado alto, se

considera que el bus esta libre. El cambio de estado de la línea de datos, solo es permitido durante el periodo bajo de la señal de reloj y esta deberá estar estable cuando SCL se encuentre en alto, pues en este momento será leído el dato colocado en el bus.

• Los bits de datos van por

SDA.

• Por cada bit de

información es necesario un pulso de SCL.

• Los datos sólo pueden

cambiar cuando SCL está a nivel bajo

(6)
(7)

Validez del bit:

El bit de datos transferido por la línea SDA debe mantenerse estable durante el periodo en que la señal de reloj esta a nivel 1. La

línea de datos SDA sólo puede cambiar de estado durante el periodo en que la señal de reloj este a 0.

(8)

Condiciones de inicio y paro:

Las condiciones de inicio y paro determinan el inicio y final de toda transferencia de datos entre el maestro y el esclavo.

}  Una transición de 1 a 0 en la línea SDA al tiempo que

SCL esta a nivel lógico 1 determina la condición de inicio.

}  Una transición de 0 a 1 sobre la línea SDA al tiempo que

SCL permanece a nivel 1 determina la condición de parada.

(9)

}  Todos los bytes colocados sobre la línea SDA deben constar de 8 bits. Cada byte va seguido de un bit de reconocimiento, ACK

(acknowledge), y comienza siempre por el bit de mas peso (MSB).

(10)

Bit de reconocimiento ACK:

El bit de reconocimiento ACK es obligatorio en la transferencia

de cada byte. El pulso de reloj asociado a este bit es el 9no y lo genera el

maestro.

}  El transmisor pone la línea SDA a 1

}  El receptor por su parte pone la línea SDA a 0

(11)

Byte de control

El maestro (microcontrolador) es quien ordena con cual esclavo se va a comunicar o si los siguientes datos se van a transmitir o recibir. Dicha orden viaja en el primer byte de cada transferencia y es conocido como byte de control.

}  Los 7 bits del byte de control contienen la dirección del esclavo con

el cual se desea entablar comunicación y el bit menos significativo conocido como R/W establece si los siguientes bytes serán de

lectura o de escritura

(12)

Modo Estándar (S-mode) aproximadamente a 100 kBits/S

Modo Rápido (F-mode) aproximadamente a 400kbits/S

Modo Rápido Plus (F-mode plus) aproximadamente 1 Mbit/

S

Modo Alta velocidad (Hs-mode) mas de 3,4 Mbits/S

Como cada bit de dato transferido sobre la línea SDA debe ser validado por la señal de reloj SCL, podemos deducir que la

velocidad de transferencia esta determinada por la frecuencia de la señal de SCL. Por ejemplo una velocidad de 100 Kbits/S implica que

cada bit se transmite en

​1  𝑠⁄100𝑘 =10  µμ𝑠

. .

Lo que nos dice que cada semiperiodo de la señal de reloj vale en

promedio 5 µs.

El bus I2C

(13)

}  Los datos y direcciones que se transmiten por SDA son de 8 bits.

}

Tras cada bloque debe recibirse una señal de reconocimiento.

}

La cantidad de dispositivos que se pueden conectar al bus está

limitada, solamente, por la máxima capacidad permitida de 400 pF.

}

El bus permite la conexión de varios Maestros, ya que incluye un

detector de colisiones.

}

El protocolo de transferencia de datos y direcciones posibilita

diseñar sistemas completamente definidos por software.

}  La especificación original, o modo de estandar, fue para

transferencia de datos hasta 100 Kbps.

}  El bus serial I2C ha sido extendido para soportar velocidades de

hasta 3.4 Mbits/s. Combinado con una función de desplazamiento del nivel de voltaje, en modo High-speed (Hs-mode) ofrece una solución ideal para los sistemas de tecnología mezclada, donde las altas velocidades y la variedad de voltajes (5 V, 3 V o menor) son comúnmente usados.

}  El reloj determina la velocidad de transmisión de los datos.

(14)

}  Es una tarjeta que contiene en un solo modulo 5 sensores

◦  Presión barométrica y temperatura

◦  Giroscopio

◦  Brújula o compas

◦  Acelerómetro

}  Todos estos sensores son de tipo I2C, de forma individual, se

pueden consultar sus características técnicas en sus hojas de datos:

◦  Sensor de presión barométrica y temperatura: BMP085

◦  Sensor giroscopio: L3G4200D

◦  Sensor compas: HMC5883L

◦  Sensor acelerómetro: ADXL345

El bus I2C

(15)

Referencias

Documento similar

Cedulario se inicia a mediados del siglo XVIL, por sus propias cédulas puede advertirse que no estaba totalmente conquistada la Nueva Gali- cia, ya que a fines del siglo xvn y en

Para ello, trabajaremos con una colección de cartas redactadas desde allí, impresa en Évora en 1598 y otros documentos jesuitas: el Sumario de las cosas de Japón (1583),

En junio de 1980, el Departamento de Literatura Española de la Universi- dad de Sevilla, tras consultar con diversos estudiosos del poeta, decidió propo- ner al Claustro de la

Sanz (Universidad Carlos III-IUNE): "El papel de las fuentes de datos en los ranking nacionales de universidades".. Reuniones científicas 75 Los días 12 y 13 de noviembre

(Banco de España) Mancebo, Pascual (U. de Alicante) Marco, Mariluz (U. de València) Marhuenda, Francisco (U. de Alicante) Marhuenda, Joaquín (U. de Alicante) Marquerie,

Habiendo organizado un movimiento revolucionario en Valencia a principios de 1929 y persistido en las reuniones conspirativo-constitucionalistas desde entonces —cierto que a aquellas

De hecho, este sometimiento periódico al voto, esta decisión periódica de los electores sobre la gestión ha sido uno de los componentes teóricos más interesantes de la

Ciaurriz quien, durante su primer arlo de estancia en Loyola 40 , catalogó sus fondos siguiendo la división previa a la que nos hemos referido; y si esta labor fue de