Comparacion SPI Vs I2C Vs UART
Comparacion SPI Vs I2C Vs UART
Comparacion SPI Vs I2C Vs UART
Abstract—En el siguiente informe se establecerá una tabla I. E STABLECER UNA TABLA COMPARATIVA DE LOS
comparativa de los protocolos de comunicación revisados PROTOCOLOS DE COMUNICACI ÓN SERIAL (SPI,
UART,
durante la realización de las dos últimas prácticas y se I2C) QUE MANEJA A RDUINO U NO .
diferenciarán ventajas y desventajas del uso de protocolos de
comunicación UART frente a I2C. Protocolo Ventajas Desventajas
1. El tamaño de la trama de
Index Terms—UART, I2C, SPI, LCD. 1. Fácil de operar, bien datos está limitado a solo
documentado, ya que es 9 bits.
un método ampliamente 2. No se pueden utilizar
utilizado con muchos varios sistemas maestros y
recursos en lı́nea. esclavos.
UART 2. No se necesita señal 3. Las velocidades en baudios
de reloj. de cada UART deben estar
3. Usa un bit de paridad dentro del 10% entre
O BJETIVOS para sı́ para evitar la
poder permitir la pérdida de datos.
verificación de errores 4. Maneja velocidades de
transmisión bajas.
• Relacionar al estudiante con el uso y manejo de comu- 1. Velocidad más lenta ya
1. Tiene un recuento bajo de
que requiere resistencias
nicación serial I2C en Arduino Uno. pines señales incluso con
pull-up en lugar de
numerosos dispositivos en
• Establecer comparaciones entre los diferentes tipos de el bus.
resistencias push-pull
comunicación serial en Arduino Uno.[2] utilizadas por SPI.
2. Flexible, ya que admite
También tiene
comunicación multimaestro
un diseño de drenaje
y multiesclavo.
abierto lo que se traduce
I2C 3. Simple, ya que solo usa 2
en velocidad
cables bidireccionales para
limitada.
establecer comunicación
2. Requiere más espacio
entre múltiples dispositivos.
fı́sico
4. Adaptable ya que puede
I NTRODUCCI ÓN adaptarse a las necesidades
3. Puede volverse complejo
a medida que aumenta el
de varios dispositivos esclavos.
número
5. Soporta múltiples maestros.
de dispositivos.
1. El protocolo es simple,
Actualmente, UART, SPI e I2C son las interfaces de ya que no existe un sistema
1. Más pines están ocupados,
hardware más comúnmente usados en el desarrollo de micro- de direccionamiento esclavo
lo que significarı́a un
complicado como I2C.
controladores. Hablando de I2C especı́ficamente, se trata de lı́mite práctico
2. Es el protocolo más
para el número de dispositivos.
un protocolo de comunicación serial similar a UART, pero rápido en comparación
2. No se especifica ningún
que no se usa para la comunicación entre dispositivos y PC, con UART e I2C.
control de flujo y ningún
3. Sin bits de inicio y parada
sino se usa entre módulos y sensores. Es un bus en serie mecanismo de reconocimiento.
a diferencia de UART, lo
SPI 3. Utiliza cuatro lı́neas:
sı́ncrono de dos cables bidireccional simple y solo requiere que significa que los datos
MOSI, MISO, NCLK, NSS
dos cables para transmitir información entre los dispositivos se pueden transmitir
4. No hay forma de
continuamente
conectados al bus. Este protocolo es útil para proyectos que verificación de errores
sin interrupciones
a diferencia de UART
requieren muchas partes diferentes (por ejemplo, sensores, 4. Lı́neas MISO y MOSI
(usando bit de paridad)
pines, expansiones y controladores) trabajando juntos, ya separadas, lo que significa
5. Solo se puede tener
que los datos
que pueden conectar hasta 128 dispositivos a la placa un maestro a la vez.
se pueden transmitir y recibir
principal mientras mantienen una vı́a de comunicación clara. al mismo tiempo.
Tabla I
TABLA COMPARATIVA ENTRE EL PROTOCOLO UART, SPI E I2C[1]
2
126 lcd.write(byte(6));
127 delay(65);
128 lcd.clear();
129 }
130 }
B. Recomendaciones
• Si se desea realizar una comunicación a través de
una distancia relativamente larga, se recomienda usar
UART.
• Si se desea que un dispositivo maestro se comunique
con varios dispositivos (por ejemplo sensores), es re-
comendable usar I2C o SPÌ.
V. R EFERENCIAS
[1]”UART vs SPI vs I2C | Difference between
UART,SPI and I2C”. https://www.rfwireless-
world.com/Terminology/UART-vs-SPI-vs-I2C.html
(accedido ago. 29, 2020).
[2] E. Tatayo, ”MANEJO DE COMUNICACIÓN SERIAL
I2C EN ARDUINO”. C.P. SISTEMAS EMBEBIDOS,
Accedido: agos. 29, 2020. [En lı́nea].