Está en la página 1de 6

Universidad de Guanajuato. Balderas Corrales Jos Alberto.

Divisin de Ingenieras Campus Irapuato-Salamanca.



1
Taller De Macatrnica II
Enero-Abril 2014

Protocolos I2C, RS-232, RS-485, UART, CAN
Balderas Corrales Jos Alberto
DICIS
Divisin De Ingenieras Campus Irapuato-Salamanca
Correo-e: balderas_cama7@hotmail.com

Resumen-El presente trabajo trata de explicar varios puntos, entre los cuales se encuentran los protocolos I2C, RS-
232, RS-485, UART y CAN, adems de su uso y aplicaciones en el mbito cotidiano e industrial, los cuales tienen un
conjunto de normas usadas por las computadoras y algunas reglas usadas para las redes inalmbricas.
Palabras claveProtocolo, conexiones, Puerto, I2C, Master, Esclavo, RS-232, comunicacin, RS-485, UART, CAN
I. INTRODUCCIN
En informtica y telecomunicacin, un protocolo de
comunicaciones es un conjunto de reglas y normas que
permiten que dos o ms entidades de un sistema de
comunicacin se comuniquen entre ellos para transmitir
informacin por medio de cualquier tipo de variacin de
una magnitud fsica. Se trata de las reglas o el estndar que
define la sintaxis, semntica y sincronizacin de la
comunicacin, as como posibles mtodos de recuperacin
de errores. Los protocolos pueden ser implementados por
hardware, software, o una combinacin de ambos.
En el caso concreto de las computadoras, un protocolo de
comunicacin, tambin llamado en este caso protocolo de
red, define la forma en la que los distintos mensajes o
tramas de bit circulan en una red de computadoras.
Los elementos bsicos de un protocolo de comunicaciones
son: un conjunto de smbolos llamados conjunto de
caracteres, un conjunto de reglas para la secuencia y
sincronizacin de los mensajes construidos a partir del
conjunto de caracteres y los procedimientos para
determinar cundo ha ocurrido un error en la transmisin y
como corregir el error. El conjunto de caracteres se formar
de un subconjunto con significado para las personas
(usualmente denominado como caracteres Optimizacin de
ancho de banda para sistemas GSM. imprimibles) y otro
subconjunto que transmite informacin de control
(usualmente denominado caracteres de control). Hay una
correspondencia entre cada carcter y los grupos de
smbolos usados en el canal de transmisin, que es
determinado por el cdigo. Muchos cdigos estndar con
sus respectivas equivalencias de grupos de unos y ceros
(bits) han sido definidos con el paso de los aos. El
conjunto de reglas a seguir por el emisor y el receptor
propicia: que haya un significado con secuencias permitidas
y a tiempo, entre los caracteres de control y los mensajes
formados a partir de los smbolos. La deteccin de error y
los procedimientos de correccin errores causados por
factores fuera del control de la terminal en cada extremo.
El protocolo de bajo nivel es bsicamente la forma en que
las seales se transmiten, transportando tanto datos como
informacin y los procedimientos de control de uso del
medio por los diferentes nodos.
El protocolo de red determina el modo y organizacin de la
informacin (tanto los datos como los controles) para su
transmisin por el medio fsico con el protocolo de bajo
nivel.
II. DESARROLLO DE CONTENIDOS
II.1. Protocolo I2C

I2C es un protocolo de comunicacin serie diseado por
Philips que se utiliza esencialmente entre dispositivos que
pertenecen al mismo circuito, por ejemplo, sensores con un
microcontrolador. EL Bus I2C (Inter- Integrated Circuits)
fue desarrollado al principio de los 80s. Su propsito
original fue el de proporcionar una manera fcil de conectar
un CPU a los chips perifricos en un equipo de TV.

Aunque las patentes de I2C ya han expirado, algunos
vendedores utilizan los nombres TWI y TWSI para
referirse a I2C. Es exactamente lo mismo.

II.1.1. Las caractersticas del bus I2C
Velocidad standard de 100Kbit/s (100kbaudios).
Se puede cambiar al modo de alta velocidad
(400Kbit/s)
Configuracin maestro/esclavo. La direccin del
esclavo se configura con software
Se necesitan solamente dos lneas, la de datos
(SDA) y la de reloj (SCL).
Cada dispositivo conectado al bus tiene un cdigo
de direccin seleccionable mediante software.
Habiendo permanentemente una relacin Master/
Slave entre el micro y los dispositivos conectados
Universidad de Guanajuato. Balderas Corrales Jos Alberto.



Divisin de Ingenieras Campus Irapuato-Salamanca.

2
El bus permite la conexin de varios Masters, ya
que incluye un detector de colisiones.
El protocolo de transferencia de datos y
direcciones posibilita disear sistemas
completamente definidos por software.
Los comunicacin siempre tiene la estructura
siguiente:
o Transmisor: Byte de datos (8 Bits)
o Receptor: Bit llamado ACK de
confirmacin.
SDA y SCL van a su pin correspondiente en cada
dispositivo, de manera que todos quedan en
paralelo.
Las lineas SDA y SCL estan independientemente
conectadas a dos resistores Pull-Up que se
encargaran de que el valor lgico siempre sea alto
a no ser que un dispositivo lo ponga a valor lgico
bajo.
Es una comunicacin de tipo half duplex.
Comunicacin bidireccional por la misma linea
pero no simultneamente bidireccional.
II.1.2. Funcionamiento I2C:
Como dijimos, las lneas SDA y SCL transportan
informacin entre los dispositivos conectados al bus (ver:
Figura 1). Cada dispositivo es reconocido por su cdigo
(direccin) y puede operar como transmisor o receptor de
datos. Adems, cada dispositivo puede ser considerado
como Master o Slave.
El Master es el dispositivo que inicia la transferencia en el
bus y genera la seal de Clock. El Slave (esclavo) es el
dispositivo direccionado. Las lneas SDA (serial Data) y
SCL (serial Clock) son bidireccionales, conectadas al
positivo de la alimentacin a travs de las resistencias de
pull-up. Cuando el bus est libre, ambas lneas estn en
nivel alto.

La cantidad de dispositivos que se pueden conectar al bus
est limitada, solamente, por la mxima capacidad
permitida: 400 pF

II.1.3. Condiciones de START y STOP
Antes de que se establezca un intercambio de datos entre el
circuito Master y los Esclavos, el Master debe informar el
comienzo de la comunicacin (condicin de Start): la lnea
SDA cae a cero mientras SCL permanece en nivel alto. A
partir de este momento comienza la transferencia de datos.
Una vez finalizada la comunicacin se debe informar de
esta situacin (condicin de Stop). La lnea SDA pasa a
nivel alto mientras SCL permanece en estado alto. Ver
Figura 2.
II.1.4 Transferencia De Datos
Cada palabra puesta en el bus SDA debe tener 8 bits, la
primera palabra transferida contiene la direccin del
Esclavo seleccionado.
Luego el Master lee el estado de la lnea SDA, si vale 0
(impuesto por el esclavo), el proceso de transferencia
contina. Si vale 1, indica que el circuito direccionado no
valida la comunicacin, entonces, el Maestro genera un bit
de stop para liberar el bus I2C.
Este acuse de recibo se denomina ACK (acknowledge) y es
una parte importante del protocolo I2C.
Al final de la transmisin, el Maestro genera la condicin
de Stop y libera el bus I2C, las lneas SDA y SCL pasan a
estado alto.
II.1.5. Fallas En El Bus
Ante un falla en el funcionamiento de alguno de los
integrados conectados al bus y antes de probar cambiando
CIs, tenemos que hacer algunas verificaciones.
Como primera medida comprobamos el estado de las
resistencias de pull up. Luego con una punta lgica
verificamos que cuando el bus est inactivo, las dos lneas
se encuentren en estado alto.
A continuacin, chequeamos que el Mster direccione
alguno de los integrados, esta verificacin tambin
podemos hacerla con la punta lgica, pero tengamos en
cuenta dos cosas: con la punta lgica solamente estamos
detectando actividad en el bus, pero no podemos saber si se
lleva a cabo satisfactoriamente.
En segundo lugar, si hay ms de un integrado conectado al
bus, no podremos determinar cul de ellos est siendo
solicitado.
II.2 Protocolo RS-232
Historia
Universidad de Guanajuato. Balderas Corrales Jos Alberto.



Divisin de Ingenieras Campus Irapuato-Salamanca.

3
RS-232 fue definido en 1962 por la Asociacin de la
Industria Electrnica (conocida hoy como la Alianza de la
Industria Electrnica). El control de la definicin de
estndares fue entregado a la Asociacin de la Industria de
Telecomunicaciones en 1988. Desde entonces, los
documentos de normas relativas a la RS-232 se hace
referencia por el cdigo "TIA." El estndar actualmente se
conoce como TIA-232-F. RS-432 es una versin ms
rpida de RS-232, pero no fue adoptado ampliamente.
Funcin
Los estndares especifican el tipo de cable, el formato de
conector y la frecuencia del pulso y los niveles de tensin
para las comunicaciones entre las computadoras y los
perifricos. Los mdems e impresoras son ejemplos tpicos
de implementacin de conexiones RS-232.
El puerto serie RS-232C, presente en todos los ordenadores
actuales, es la forma ms comnmente usada para realizar
transmisiones de datos entre ordenadores. El RS-232C es
un estndar que constituye la tercera revisin de la antigua
norma RS-232, propuesta por la EIA (Asociacin de
Industrias Electrnicas), realizndose posteriormente un
versin internacional por el CCITT, conocida como V.24.
Las diferencias entre ambas son mnimas, por lo que a
veces se habla indistintamente de V.24 y de RS-232C
(incluso sin el sufijo "C"), refirindose siempre al mismo
estndar.
El RS-232C consiste en un conector tipo DB-25 de 25
pines, aunque es normal encontrar la versin de 9 pines
DB-9, ms barato e incluso ms extendido para cierto tipo
de perifricos (como el ratn serie del PC). En cualquier
caso, los PCs no suelen emplear ms de 9 pines en el
conector DB-25. Las seales con las que trabaja este puerto
serie son digitales, de +12V (0 lgico) y -12V (1 lgico),
para la entrada y salida de datos, y a la inversa en las
seales de control. El estado de reposo en la entrada y
salida de datos es -12V. Dependiendo de la velocidad de
transmisin empleada, es posible tener cables de hasta 15
metros.
Cada pin puede ser de entrada o de salida, teniendo una
funcin especfica cada uno de ellos. Las ms importantes
son:
Pin Funcin
TXD (Transmitir Datos)
RXD (Recibir Datos)
DTR (Terminal de Datos Listo)
DSR (Equipo de Datos Listo)
RTS (Solicitud de Envo)
CTS (Libre para Envo)
DCD (Deteccin de Portadora)
Las seales TXD, DTR y RTS son de salida, mientras que
RXD, DSR, CTS y DCD son de entrada. La masa de
referencia para todas las seales es SG (Tierra de Seal).
Finalmente, existen otras seales como RI (Indicador de
Llamada), y otras poco comunes que no se explican en este
artculo por rebasar el alcance del mismo.
Numero de Pin Seal Descripcin E/S
En DB-25 En DB-9
1 1 - Masa chasis -
2 3 TxD Transmit Data S
3 2 RxD Receive Data E
4 7 RTS Request To Send S
5 8 CTS Clear To Send E
6 6 DSR Data Set Ready E
7 5 SG Signal Ground -
8 1 CD/DCD (Data) Carrier Detect E
15 - TxC(*) Transmit Clock S
17 - RxC(*) Receive Clock E
20 4 DTR Data Terminal Ready S
22 9 RI Ring Indicator E
24 - RTxC(*) Transmit/Receive
Clock
S
(*) = Normalmente no conectados en el DB-25
Conector DB 25


Conector DB 9

Figura 3. Tipos de conectores de 25 y 9

II.3. Protocolo RS-485
RS-485 o tambin conocido como EIA-485, que lleva el
nombre del comit que lo convirti en estndar en 1983. Es
un estndar de comunicaciones en bus de la capa fsica del
Modelo OSI.
La interfaz RS485 ha sido desarrollada, de un modo
anlogo a la interfaz RS422, para la transmisin serial de
datos a altas velocidades y a distancias grandes. En el
sector de la automatizacin industrial la interfaz RS485 an
est muy extendida, pero est siendo desplazada lentamente
por interfaces basadas en Ethernet.
Mientras la RS422 slo permite la conexin unidireccional
de hasta 10 receptores en un emisor, la RS485 ha sido
Universidad de Guanajuato. Balderas Corrales Jos Alberto.



Divisin de Ingenieras Campus Irapuato-Salamanca.

4
concebida como sistema de bus bidireccional con hasta 32
usuarios. Con los modernos Transceiver-ICs es posible
conectar hasta 128 usuarios a un sistema de bus mediante la
reduccin de la carga que generan los nodos de bus.
Fsicamente las interfaces RS422 y RS485 varan poco, de
modo que se puede utilizar los mismos mdulos
Transceiver para las dos interfaces. Dado que varios
transmisores trabajan en una lnea comn, tiene que
garantizarse con un protocolo que en todo momento est
activo como mximo un transmisor de datos. Los otros
transmisores tienen que encontrarse en ese momento en
estado ultraohmio.
Alambre
RS-485 est diseado para ser un sistema equilibrado. En
pocas palabras, esto significa que hay dos cables, que no
sean de tierra, que se utilizan para transmitir la seal.

Figura 4. Un sistema de equilibrado utiliza dos cables, distintos de
suelo, para transmitir datos.

El sistema se llama equilibrio, debido a que la seal en un
cable es ideal exactamente lo contrario de la seal en el
segundo alambre. En otras palabras, si un cable est
transmitiendo un alto, el otro cable se transmite un bajo, y
viceversa. Ver Figura 5.


Figura 5. Las seales de los dos cables de un sistema equilibrado son
idealmente opuestas.
Aunque RS-485 se puede transmitir con xito el uso de
varios tipos de medios de comunicacin, que debe ser
usado con el cableado comnmente llamado "par trenzado".
Qu es el par trenzado, y por qu se usa?
Como su nombre lo indica, un par trenzado es ms que un
par de hilos de igual longitud y trenzados entre s. El uso de
un transmisor RS-485 compatible con el alambre de par
trenzado reduce dos principales fuentes de problemas para
los diseadores de alta velocidad de redes de larga
distancia: radiado EMI y recibi EMI.
II.3. 1. Caractersticas
Interfaz diferencial
Conexin multipunto
Alimentacin nica de +5V
Hasta 32 estaciones (ya existen interfaces que
permiten conectar 256 estaciones)
Velocidad mxima de 10 Mbit/s (a 12 metros)
Longitud mxima de alcance de 1200 metros (a 100
kbit/s)
Rango de bus de -7V a +12V

II.3. 2. Aplicaciones
SCSI -2 y SCSI-3 usan esta especificacin para
ejecutar la capa fsica.
RS-485 se usa con frecuencia en las UARTs para
comunicaciones de datos de poca velocidad en las
cabinas de los aviones. Por ejemplo, algunas unidades
de control del pasajero lo utilizan, equipos de
monitoreo de sistemas fotovoltaicos. Requiere el
cableado mnimo, y puede compartir el cableado entre
varios asientos. Por lo tanto reduce el peso del sistema.
RS-485 se utiliza en sistemas grandes de sonido, como
los conciertos de msica y las producciones de teatro,
se usa software especial para controlar remotamente el
equipo de sonido de una computadora, es utilizado
ms generalmente para los micrfonos.
RS-485 tambin se utiliza en la automatizacin de los
edificios pues el cableado simple del bus y la longitud
de cable es larga por lo que son ideales para ensamblar
los dispositivos que se encuentran alejados.
RS-485 Tiene la mayor parte de su aplicacin en las
plantas de produccin automatizadas.


Universidad de Guanajuato. Balderas Corrales Jos Alberto.



Divisin de Ingenieras Campus Irapuato-Salamanca.

5
II.4. Protocolo UART
UART son las siglas de "Universal Asynchronous
Receiver-Transmitter" (en espaol, Transmisor-Receptor
Asncrono Universal). ste controla los puertos y
dispositivos serie. Se encuentra integrado en la placa base o
en la tarjeta adaptadora del dispositivo. Un UART dual, o
DUART, combina dos UARTs en un solo chip. Existe un
dispositivo electrnico encargado de generar la UART en
cada puerto serie. La mayora de los ordenadores modernos
utilizan el chip UART 16550, que soporta velocidades de
transmisin de hasta 921,6 Kbps (Kilobits por segundo).
Las funciones principales de chip UART son de manejar
las interrupciones de los dispositivos conectados al puerto
serie y de convertir los datos en formato paralelo,
transmitidos al bus de sistema, a datos en formato serie,
para que puedan ser transmitidos a travs de los puertos y
viceversa.
Transmisin y recepcin de datos serie
El controlador del UART es el componente clave del
subsistema de comunicaciones series de una computadora.
El UART toma bytes de datos y transmite los bits
individuales de forma secuencial. En el destino, un segundo
UART reensambla los bits en bytes completos. La
transmisin serie de la informacin digital (bits) a travs de
un cable nico u otros medios es mucho ms efectiva en
cuanto a costo que la transmisin en paralelo a travs de
mltiples cables. Se utiliza un UART para convertir la
informacin transmitida entre su forma secuencial y
paralela en cada terminal de enlace. Cada UART contiene
un registro de desplazamiento que es el mtodo
fundamental de conversin entre las forma serie y paralelo.
El UART normalmente no genera directamente o recibe las
seales externas entre los diferentes mdulos del equipo.
Usualmente se usan dispositivos de interfaz separados para
convertir las seales de nivel lgico del UART hacia y
desde los niveles de sealizacin externos.

II.4.1. Caractersticas De La UART

Datos de 7 u 8 bits con paridad par impar o sin
paridad
Registros de desplazamiento (Shift register) de
recepcin y transmisin independientes
Buffer de transmisin y recepcin separados
El bit menos significativo es el primero en
transmitirse y recibirse
Protocolos de comunicacin definidos para
sistemas multiprocesadores (address bit, built in,
idle line)
Capacidad para salir del modo de bajo consumo
(dormido) a travs de la recepcin de un cambio
de estado (deteccin de canto de partida)
Tasa de transmisin de bits(baudios) programable

Sealiza deteccin y supresin de errores (flags) y
deteccin de direcciones
Capacidad independiente de interrupciones para
transmisin y recepcin

II.4.2. Inicializacin y Reinicio
La inicializacin o el reinicio ocurre cuando el bit
SWRT=1 o cuando se produce PUC (Power Up Clear) que
viene a ser al aplicarle energa a la tarjeta de desarrollo
Ocurre luego que se setean los bits UTXIFGX, TXEFT
Es importante destacar que los flags de transmisin y
recepcin URXEX y UTXEX no son alterados con
SWRST=0, y liberan la USART de la operacin

II.4.3. Formato de caracteres
Los caracteres estn agrupados de acuerdo al siguiente
esquema



ST representa al bit de partida
D0 a D6 son losbit de informacin
D7 es 8vo bit de informacin que se habilita al
setear CHAR=1
AD es el bit de direccion que se utiliza en el
formato adress bit seteando MM=1
PA es el bit de paridad, se ocupa seteando
PENA=1
SP es el 1er bit de stop
SP es el 2do bit de stop se usa para SP=1

II.5. Protocolo CAN
II.5.1. Cmo Trabaja la Comunicacin CAN
CAN es una red uno a uno. Esto significa que no hay un
maestro que controle el acceso de lectura o escritura de
datos en el bus por parte de los nodos individuales. Cuando
un nodo CAN est listo para transmitir datos, verifica si el
bus se encuentra ocupado, y despus simplemente escribe
un marco de CAN en la red. Los marcos de CAN
transmitidos no contienen direcciones del nodo transmisor
o de ninguno de los probables nodos receptores. Slo se
cuenta con un nmero de identificacin nico. Todos los
nodos en la red reciben el marco, y dependiendo del
nmero de ID cada nodo decide si aceptar o no el marco.
Si varios nodos intentan transmitir un mensaje al bus al
mismo tiempo, el nodo con la mayor prioridad (nmero de
ID menor) automticamente tendr acceso al bus. Los
nodos con menor prioridad deben esperar hasta que el bus
vuelva a estar disponible antes de iniciar nuevamente su
transmisin. De esta manera, es posible implementar redes
CAN con comunicacin determinstica.
Universidad de Guanajuato. Balderas Corrales Jos Alberto.



Divisin de Ingenieras Campus Irapuato-Salamanca.

6
CAN es un protocolo de comunicaciones serie que soporta
control distribuido en tiempo real con un alto nivel de
seguridad y multiplexacin.
El establecimiento de una red CAN para interconectar los
dispositivos electrnicos internos de un vehculo tiene la
finalidad de sustituir o eliminar el cableado. Las ECU,
sensores, sistemas antideslizantes, etc. se conectan
mediante una red CAN a velocidades de transferencia de
datos de hasta 1 Mbps.
De acuerdo al modelo de referencia OSI (Open Systems
Interconnection, Modelo de interconexin de sistemas
abiertos), la arquitectura de protocolos CAN incluye tres
capas: fsica, de enlace de datos y aplicacin, adems de
una capa especial para gestin y control del nodo llamada
capa de supervisor.
Capa fsica: define los aspectos del medio fsico
para la transmisin de datos entre nodos de una
red CAN, los ms importantes son niveles de
seal, representacin, sincronizacin y tiempos en
los que los bits se transfieren al bus. La
especificacin del protocolo CAN no define una
capa fsica, sin embargo, los estndares ISO 11898
establecen las caractersticas que deben cumplir
las aplicaciones para la transferencia en alta y baja
velocidad.

Capa de enlace de datos: define las tareas
independientes del mtodo de acceso al medio,
adems debido a que una red CAN brinda soporte
para procesamiento en tiempo real a todos los
sistemas que la integran, el intercambio de
mensajes que demanda dicho procesamiento
requiere de un sistema de transmisin a
frecuencias altas y retrasos mnimos. En redes
multimaestro, la tcnica de acceso al medio es
muy importante ya que todo nodo activo tiene los
derechos para controlar la red y acaparar los
recursos. Por lo tanto la capa de enlace de datos
define el mtodo de acceso al medio as como los
tipos de tramas para el envo de mensajes
Cuando un nodo necesita enviar informacin a travs de
una red CAN, puede ocurrir que varios nodos intenten
transmitir simultneamente. CAN resuelve lo anterior al
asignar prioridades mediante el identificador de cada
mensaje, donde dicha asignacin se realiza durante el
diseo del sistema en forma de nmeros binarios y no
puede modificarse dinmicamente. El identificador con el
menor nmero binario es el que tiene mayor prioridad.

II.5.1. Aplicaciones de CAN
Es un bus de comunicaciones serial para aplicaciones de
control en tiempo real, con una velocidad de comunicacin
de hasta 1 Mbit por segundo, y tiene excelente capacidad de
deteccin y aislamiento de errores. Es decir, esta es la
mejor y ms nueva tecnologa actual en los vehculos. De
hecho, varios fabricantes de vehculos desde el 2003,
incluidos Toyota, Ford, Mazda, Mercedes Benz, BMW y
otros ya tienen instalado este sistema. Del mismo modo que
OBD 2 fue obligatorio para todos los vehculos desde 1996,
el CAN Bus ser de instalacin obligatoria en todos los
vehculos a partir de 2008
Este sistema emplea dos cables en los cuales viajan dos
seales exactamente iguales en amplitud y frecuencia pero
completamente inversas en voltaje los mdulos con estos
dos pulsos identifica el mensaje, pero tambin tiene
opciones de mantener la red activa aunque falle uno de los
cables de comunicacin.

REFERENCIAS
[0]http://www.ptolomeo.unam.mx:8080/xmlui/bitstream/handle/1
32.248.52.100/734/A6.pdf?sequence=6
[1] http://www.comunidadelectronicos.com/articulos/i2c.htm
[2] http://www.quadruino.com/guia-2/sensores/protocolo-i2c-twi
[3] http://www.euskalnet.net/shizuka/rs232.htm
[4] http://es.wikipedia.org/wiki/RS-485
[5]http://www.maximintegrated.com/app-notes/index.mvp/id/763
[6]http://es.wikipedia.org/wiki/Universal_Asynchronous_Receive
r-Transmitter
[7]http://www.ni.com/white-paper/2732/es/

También podría gustarte