Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade

Comunicação Serial com Arduino: Um Guia Completo

A comunicação serial é uma técnica fundamental em sistemas embarcados e eletrônica, permitindo a troca de dados entre dispositivos como microcontroladores, sensores, computadores e outros periféricos. No contexto do Arduino, a comunicação serial é frequentemente usada para depuração, controle de dispositivos externos e integração com outros sistemas. Este artigo explora a comunicação serial com Arduino, abordando sua importância, conceitos básicos e exemplos práticos para ajudar o leitor a dominar essa técnica essencial.

Projeto: Neste projeto, vamos criar um sistema de comunicação serial entre um Arduino e um computador. O objetivo é enviar dados do Arduino para o computador e vice-versa, permitindo o controle de um LED conectado ao Arduino através de comandos enviados pelo computador. Este projeto demonstrará como configurar a comunicação serial, enviar e receber dados, e interpretar comandos para controlar dispositivos.

Lista de componentes:

  • 1 x Arduino Uno
  • 1 x LED
  • 1 x Resistor de 220 ohms
  • 1 x Protoboard
  • 1 x Cabo USB para conexão do Arduino ao computador
  • Fios de conexão

Exemplos:

Código no Arduino:

// Configuração inicial
void setup() {
  // Inicializa a comunicação serial com baud rate de 9600
  Serial.begin(9600);
  // Define o pino digital 13 como saída (onde o LED está conectado)
  pinMode(13, OUTPUT);
}

// Loop principal
void loop() {
  // Verifica se há dados disponíveis para leitura na porta serial
  if (Serial.available() > 0) {
    // Lê o byte recebido
    char receivedChar = Serial.read();

    // Verifica o comando recebido e executa a ação correspondente
    if (receivedChar == '1') {
      digitalWrite(13, HIGH); // Liga o LED
      Serial.println("LED Ligado");
    } else if (receivedChar == '0') {
      digitalWrite(13, LOW); // Desliga o LED
      Serial.println("LED Desligado");
    } else {
      Serial.println("Comando inválido");
    }
  }
}

Explicação do código:

  1. void setup(): Configura a comunicação serial com um baud rate de 9600 e define o pino 13 como saída.
  2. void loop(): Verifica se há dados disponíveis na porta serial. Se houver, lê o byte recebido e executa uma ação com base no comando ('1' para ligar o LED, '0' para desligar o LED). Responde com uma mensagem de confirmação ou erro.

Código no computador (Python):

import serial
import time

# Configura a porta serial (ajuste o nome da porta conforme necessário)
ser = serial.Serial('COM3', 9600)
time.sleep(2)  # Aguarda a inicialização da comunicação

# Envia comandos para o Arduino
while True:
    command = input("Digite '1' para ligar o LED, '0' para desligar: ")
    ser.write(command.encode())  # Envia o comando para o Arduino
    time.sleep(1)  # Aguarda um segundo para a resposta
    response = ser.readline().decode('utf-8').strip()  # Lê a resposta do Arduino
    print("Resposta do Arduino: " + response)

Explicação do código:

  1. import serial, import time: Importa as bibliotecas necessárias para a comunicação serial e manipulação de tempo.
  2. ser = serial.Serial('COM3', 9600): Configura a porta serial (ajuste conforme necessário) e define o baud rate.
  3. command = input(): Solicita ao usuário um comando para enviar ao Arduino.
  4. ser.write(command.encode()): Envia o comando para o Arduino.
  5. response = ser.readline().decode('utf-8').strip(): Lê e imprime a resposta do Arduino.

To share Download PDF

Gostou do artigo? Deixe sua avaliação!
Sua opinião é muito importante para nós. Clique em um dos botões abaixo para nos dizer o que achou deste conteúdo.