Cuando comenzamos a pensar en ahorro de pines, buscamos la forma de hacer nuestras conexiones más simples y con menos cables. Es aquí cuando escuchamos el término comunicación serial.
La comunicación serial es la solución a ese problema, ya que busca trasmitir y recibir información con la mínima cantidad de conexiones posible. En la comunicación serial debe existir al menos dos elementos importantes: un pin para mandar la información y otra para recibir; habitualmente se le conocen como Tx (transmisión) y Rx (recepción). Las tarjetas Arduino cuentan con esta comunicación, lo que permite realizar proyectos interesantes con varios elementos y pocos cables.
Varias de las tarjetas Arduino utilizan esta comunicación para ser programadas desde el software, así como para intercambiar datos con el Monitor Serial o con algún otro software (MATLAB, LabVIEW o Processing); además, módulos como los ya conocidos HC-05 y HC-06 utilizan esta comunicación para transmitir y recibir información.
Baudios, o Bits por segundo.
La velocidad de transmisión de datos generalmente la definen como Baudios (BAUD RATE o BAUDS). Esto es básicamente cuántos bíts puede transmitir en un segundo, por lo que no es nada raro encontrar esta velocidad expresada en bits por segundo (bps). Existen varias velocidades ya establecidas, sin embargo, es muy común que dispositivos que funcionan a base de comunicación serial trabajen una velocidad de 9600 baudios.
Algunas velocidades que también son utilizadas son:
- 38400 baudios
- 57600 baudios
- 115200 baudios
Trama de bits
El mensaje transmitido en esta comunicación generalmente se compone de 10 bits:
- 8 bits de información
- 1 bit de inicio
- 1 bit de paro
El bit de inicio, como su nombre lo indica, es el encargado de indicar al receptor que debe captar un nuevo dato. La información se compone de 8 bits y una vez que se hayan enviado los 8 bits, sigue el bit de paro, encargado de indicar al receptor que la transmisión ha finalizado. Mientras no haya información, las líneas de transmisión se mantienen en reposo, representado como activo alto constante (3.3V o 5V)
Estos elementos son los más comunes, sin embargo, existen otros dispositivos que, además de los anteriores, requiere de un bit extra llamado “bit de paridad”. Este bit es utilizado para control de errores de transmisión.
Estándares Recomendados (RS, Recommended Standard)
Podemos encontrar varios estándares recomendados con los que se puede trabajar la comunicación serial. Entre ellos destacan el RS-232 y RS-485. Los estándares recomendados son requisitos en las cuales se debe transmitir y recibir la información, como son tipo de cable, voltajes y conectores.
Dentro de la industria, varios elementos se comunican por medio de comunicación serial RS-232, donde un ejemplo de aplicación es controlar una impresora de etiquetas con un PLC (Controlador Lógico Programable); en este caso, el PLC utiliza un módulo de expansión para poder enviar los datos de impresión a la impresora por medio de un cable con conectores tipo DB-9.
Otros tipos de comunicación serial
Existen diferentes tipos de comunicación serial, las cuales llevan otra denominación de pines y por supuesto, otra forma de transmisión de datos. Entre ellas podemos mencionar como ejemplos:
- CAN
- SPI
- USB
- I2C (ya hemos hablado de este protocolo, puedes revisarlo aquí).
Cada uno de estos funciona de forma diferente, incorporando nuevos conceptos, sin embargo, la idea es la misma: transmitir información con menos cables.
Puede parecer algo complicado al principio, pero a medida que lo vayamos incorporando a nuestros proyectos nos daremos cuenta de que en realidad es algo sencillo. Si tienes la oportunidad de incorporar la comunicación serial en tus proyectos, no dudes en hacerlo.