Los protocolos de comunicación entre procesadores pueden ser de diferentes tipos, debemos recordar que estos tres protocolos UART, SPI y I2C, definen el tipo de comunicación pero no por ejemplo algunos valores como el voltaje. Por ejemplo I2C en Arduino es con 5v y en Raspberry con 3.3v por ello si pretendemos comunicar ambos debemos usar un conversor de voltajes:
Conversor de 3.3v a 5V Necesario para comunicar Arduino y Raspberry.
UART | SPI | I2C | |
---|---|---|---|
Nombre Completo | Universal Asynchronous Receiver/Transmitter | Serial Peripheral Interface | Inter-Integrated Circuit |
Diagrama | |||
Designación de Pines | TxD: Transmisión de datos. RxD: Recepción de datos. |
SCLK: Reloj Serial MOSI: Salida de maestro, entrada de esclavo. MISO: Entrada del maestro y salida del esclavo. SS: Selector de esclavo. |
SDA: Datos SCL: Reloj Seria |
Velocidad de Datosº | LA comunicación máxima puede ser entre 230Kbbs a 460kbb | Normalmente soporta entre 10Mbbs a 20Mbbs | Hasta 3.4Mbbs algunas variantes pueden llegar a 1Mbbs |
Distancia | Menos de 15 metros | Esta pensada para comunicaciones dentro de la placa. | Igual que la anterior, comunicaciones dentro de la placa. |
Tipo comunicación | Asincrona | Sincrona | Sincrona |
Coplejidad del Hardare | poco. | media | bastante, según los maestros. |
Numero de Masters | No hay masteres. | Uno | Varios |
Reloj | Cada dispositivo usa el suyo interno. | Una señal de reloj entre master y esclavo. | Una señal de reloj común entre múltiples masters y esclavos. |
Protocolo | 8bits con un bit de start y un bit de stop. | Cada compañía usa su propio protocolo. | Usa un bit de start y otro de stop, un bit de acuse de recibo (ACK) cada 8 bits. |
Direccionamiento de Software | La comunicación es entre dos dispositivos, no es necesario. | Se usa el SS (SS1, SS2…) para seleccionar que dispositivo, cuantos más dispositivos más salidas SS necesitamos. | Todos los maestros pueden comunicarse con todos los esclavos, podemos colocar 27 esclavos y colocar la dirección en el protocolo I2C. |
Ventajas | Muy simple, permite conectar de forma rápida dos dispositivos, suele usarse con RS232 o RS485 por ejemplo. |
|
|
Desventajas |
|
|
|
Fuente: http://www.rfwireless-world.com/Terminology/UART-vs-SPI-vs-I2C.html (ingles)
Summary
Article Name
Comparación de protocolos para micros
Description
Comparación de los tres protocolos más importantes en microcontroladores, UART, SPI y I2C.
Author
Nuño Valencia
Publisher Name
Drouiz
Publisher Logo