Arduino Nano ESP32 - RS232

Neste tutorial, vamos aprender como usar a comunicação RS232 com o Arduino Nano ESP32. Em detalhes, vamos aprender:

Arduino Nano ESP32 - RS232

Sobre o Módulo TTL para RS232

Quando você usa a comunicação serial com as funções Serial.print(), Serial.read(), Serial.write() ... no ESP32, o Arduino Nano ESP32 envia dados para o pino TX ou lê os dados que chegam do pino RX. Os sinais nos pinos TX e RX são de nível TTL. Esse sinal não consegue ir longe. Portanto, quando você quer usar a comunicação serial a longas distâncias, precisa converter o sinal TTL em sinal RS232, RS485 ou RS422.

O módulo TTL para RS232 converte o sinal TTL em sinal RS232 e vice-versa.

Pinagem

O módulo RS232 para TTL tem duas interfaces:

  • A interface TTL (conectada ao ESP32) inclui 4 pinos
    • Pino VCC: pino de alimentação, precisa ser conectado ao VCC (5V/3.3V)
    • Pino GND: pino de alimentação, precisa ser conectado ao GND (0V)
    • Pino RXD: pino de dados, precisa ser conectado a um pino RX do Arduino Nano ESP32
    • Pino TXD: pino de dados, precisa ser conectado a um pino TX do Arduino Nano ESP32
  • A interface RS232: conector D-Sub DB9 fêmea, conecte-o ao dispositivo serial
RS232 Pinout

Diagrama de Ligação

The wiring diagram between Arduino Nano ESP32 and TTL to RS232

This image is created using Fritzing. Click to enlarge image

Como Programar o Arduino Nano ESP32 para usar o módulo RS232

#define RX1PIN D3 #define TX1PIN D2
  • Inicialize a interface Serial:
Serial1.begin(9600, SERIAL_8N1, RX1PIN, TX1PIN); // RS232

Código Arduino Nano ESP32 para RS232

/* * Este código de Arduino Nano ESP32 foi desenvolvido por pt.newbiely.com * Este código de Arduino Nano ESP32 é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino-nano-esp32/arduino-nano-esp32-rs232 */ #define RX1PIN D3 #define TX1PIN D2 void setup() { // start communication with baud rate 9600 Serial.begin(9600); // Serial Monitor Serial1.begin(9600, SERIAL_8N1, RX1PIN, TX1PIN); // RS232 // wait a moment to allow serial ports to initialize delay(100); } void loop() { // Check if there's data available on Serial1 if (Serial1.available()) { char data = Serial1.read(); // read the received character Serial1.print(data); // echo back to data to the sender Serial.print(data); // print the recived data to Serial Monitor } }

Testando

Você pode fazer um teste transmitindo dados entre o seu PC e o Arduino Nano ESP32 via RS232 nos dois sentidos. Siga os passos descritos abaixo:

  • Conecte o Arduino Nano ESP32 ao seu PC usando um cabo RS232 para USB, como mostrado na imagem abaixo:
Arduino Nano ESP32 RS232 to PC communication
  • Instale um programa de Terminal Serial, como o Tera Term ou o PuTTY.
  • Abra o programa de Terminal Serial e configure os parâmetros Serial (porta COM, baud rate, etc.).
  • Digite alguns dados no Terminal Serial para transmiti-los ao Arduino Nano ESP32.
  • Se o teste for bem-sucedido, você verá os dados de eco no Terminal Serial.

Vídeo

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!