Arduino Nano - RS232

Neste tutorial, vamos nos aprofundar na comunicação RS232 com o ESP8266. Os pontos principais incluem:

O tutorial cobre tanto o Serial de hardware quanto o SoftwareSerial, oferecendo um guia completo da interação entre o ESP8266 e o RS232.

Arduino Nano - RS232

Hardware Necessário

1×Official Arduino Nano
1×Alternatively, DIYables Nano V3.0 Development Board
1×Cabo USB A para Mini-B
1×Módulo TTL para RS232
1×(Alternativa) MAX3232 RS232 to TTL Module
1×Fios Jumper
1×(Opcional) USB to RS232 Cable
1×(Opcional) USB to RS232 Converter
1×(Recomendado) Placa de Expansão com Bornes de Parafuso para Arduino Nano
1×(Recomendado) Placa de Expansão Breakout para Arduino Nano
1×(Recomendado) Divisor de Alimentação para Arduino Nano

Or you can buy the following kits:

1×DIYables Sensor Kit (18 sensors/displays)
Divulgação: Alguns dos links desta seção são links de afiliado da Amazon. Podemos receber uma comissão pelas compras feitas por meio desses links, sem custo adicional para você. Agradecemos o seu apoio.

Sobre o Módulo TTL para RS232

Quando você faz comunicação serial com o ESP8266 usando Serial.print(), Serial.read(), Serial.write() etc., o ESP8266 envia dados pelo pino TX e recebe dados no pino RX. Esses sinais em TX e RX são de nível TTL, que não viaja muito longe. Então, se você quer fazer comunicação serial a longa distância, precisa converter esse sinal TTL para RS232, RS485 ou RS422.

Aí entra o módulo TTL para RS232. Ele pega o sinal TTL e o transforma em RS232, e também faz o caminho inverso. Fácil, fácil.

Pinagem

O módulo RS232 para TTL tem duas interfaces:

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

Diagrama de Ligação

  • Diagrama de ligação se usar a serial de hardware
The wiring diagram between Arduino Nano and TTL to RS232

This image is created using Fritzing. Click to enlarge image

  • Diagrama de ligação se usar a serial por software
The wiring diagram between Arduino Nano and RS232 to TTL

This image is created using Fritzing. Click to enlarge image

Veja A melhor forma de alimentar o Arduino Nano e outros componentes.

Como Programar o Arduino Nano para Usar o Módulo RS232

  • Inicializa a interface Serial:
Serial.begin(9600);
  • Se você usar SoftwareSerial, precisa incluir a biblioteca e declarar um objeto SoftwareSerial:
#include <SoftwareSerial.h> // Define the SoftwareSerial objects and their pins SoftwareSerial SoftSerial(7, 6); // RX: 7, TX: 6

Código Arduino Nano para Serial de Hardware

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

Código Arduino Nano para Serial por Software

/* * Este código de Arduino Nano foi desenvolvido por pt.newbiely.com * Este código de Arduino Nano é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino-nano/arduino-nano-rs232 */ #include <SoftwareSerial.h> // define the SoftwareSerial object and their pins SoftwareSerial SoftSerial(3, 2); // RX: 3, TX: 2 void setup() { // start communication with baud rate 9600 SoftSerial.begin(9600); // wait a moment to allow serial ports to initialize delay(100); } void loop() { // Check if there's data available on SoftSerial if (SoftSerial.available()) { char data = SoftSerial.read(); // read the received character SoftSerial.print(data); // echo back to data to the sender } }

Testando

Você pode fazer um teste enviando dados do seu PC para o Arduino Nano via RS232 e vice-versa. Para isso, siga os passos abaixo:

  • Conecte o Arduino Nano ao seu PC por meio de um cabo RS232 para USB, como abaixo:
Arduino Nano 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 da Serial (porta COM, baurate...)
  • Digite alguns dados no terminal serial para enviá-los ao Arduino Nano.
  • Se tudo der certo, 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!