ESP8266 - RS-485
En este tutorial, exploraremos la implementación de la comunicación RS485 con ESP8266. Específicamente, cubriremos los siguientes aspectos en detalle:
- Estableciendo la conexión entre ESP8266 y el módulo TTL a RS-485.
- Programando el ESP8266 para obtener datos del módulo TTL a RS-485.
- Programando el ESP8266 para transmitir datos al módulo TTL a RS-485.
- Enviando datos desde tu PC al ESP8266 a través de RS-485, y viceversa.
El tutorial también proporciona las instrucciones para tanto Hardware Serial como SoftwareSerial.
Hardware Requerido
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Acerca del módulo TTL a RS485
Al utilizar la comunicación serie en el ESP8266 a través de funciones como Serial.print(), Serial.read() y Serial.write(), el ESP8266 transmite datos a través del pin TX y recibe datos a través del pin RX. Estos pines funcionan a nivel TTL, lo que significa que las señales que manejan tienen alcance limitado. Por lo tanto, para la comunicación serial a distancias mayores, es necesario convertir la señal TTL a los estándares de señal RS232, RS485 o RS422.
En este tutorial, profundizaremos en la utilización de RS485 (también conocido como RS-485) con ESP8266 empleando un módulo TTL a RS485. Este módulo facilita la conversión de señales TTL a señales RS485 y viceversa.
Diagrama de pines
El módulo RS485 a TTL tiene dos interfaces:
- La interfaz TTL (conectada al ESP8266) incluye 4 pines
- Pin VCC: pin de alimentación, debe conectarse a VCC (5V o 3.3V)
- Pin GND: pin de alimentación, debe conectarse a GND (0V)
- Pin RXD: pin de datos, debe conectarse al pin TX del ESP8266
- Pin TXD: pin de datos, debe conectarse al pin RX del ESP8266
- La interfaz RS485 comprende los siguientes pines:
- D+ (A o TR+) pin: Este pin facilita la comunicación de datos.
- D- (B o TR-) pin: Este pin sirve para la transmisión de datos.
- Pin GND: Aunque es opcional, se recomienda encarecidamente incluir este pin para mitigar interferencias de ruido, asegurando un rendimiento óptimo.

Diagrama de Cableado
- Diagrama de cableado si se utiliza el puerto serie de hardware

This image is created using Fritzing. Click to enlarge image
Para obtener m\u00e1s informaci\u00f3n, consulte Pines del ESP8266 y c\u00f3mo alimentar ESP8266 y otros componentes.
- Diagrama de cableado si se usa software serial

This image is created using Fritzing. Click to enlarge image
Cómo programar ESP8266 para usar el módulo RS-485
Para empezar con ESP8266 en el IDE de Arduino, siga estos pasos:
- Consulta el tutorial cómo configurar el entorno para ESP8266 en Arduino IDE si es la primera vez que usas ESP8266.
- Inicializa la interfaz Serial:
- Si usas SoftwareSerial, necesitas incluir la biblioteca y declarar un objeto SoftwareSerial:
- Para leer datos que provienen de RS485, puede usar las siguientes funciones:
- Para escribir datos en RS485, puede usar las siguientes funciones:
- Y más funciones para usar con RS485 en Referencia Serial
Código ESP8266 para Serial de Hardware
Código ESP8266 para Serial por software
Pruebas
Puede realizar una prueba enviando datos desde su PC al ESP8266 a través de RS-485 y viceversa. Para hacerlo, siga los siguientes pasos:
- Conecta el ESP8266 a tu PC mediante un cable RS-485 a USB como se muestra a continuación:

- Abre el programa de terminal serie y configura los parámetros de la comunicación serie (puerto COM, baudios...)
- Escribe algunos datos desde el terminal serie para enviarlos al ESP8266.
- Si tiene éxito, verás los datos de eco en el terminal serie.
Video Tutorial
Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.