É possível conectar um Arduino ao computador pelo cabo USB e utilizar um programa em Python para receber informações da placa. Essa comunicação permite acompanhar sensores, registrar medições e criar aplicações que interagem com o mundo físico.
Neste tutorial, vamos começar com uma experiência simples: uma chave ligada ao Arduino Uno e um programa em Python que mostra se ela está ligada ou desligada.
O Arduino identifica a posição da chave e envia uma mensagem pela comunicação serial. O Python recebe essa mensagem e apresenta o resultado no terminal do computador.
O que você precisa
Para realizar a experiência, você vai precisar de:
- Arduino Uno;
- Cabo USB com transmissão de dados;
- Chave de dois terminais e fios de ligação;
- IDE do Arduino;
- Python instalado no computador;
- Biblioteca Python
pyserial.
Se não tiver uma chave, pode fazer o teste com um fio: conectar e desconectar o fio entre o pino 2 e o GND simula os dois estados.
Como funciona a comunicação
O cabo USB permite que o computador se comunique com o Arduino por uma porta serial. No Windows, essa porta recebe um nome como COM3, COM5 ou COM6.
O Arduino envia os textos LIGADA e DESLIGADA. O programa em Python fica à espera dessas mensagens e mostra cada estado recebido.
Nesta experiência, usamos a velocidade de 9600 baud, configurada tanto no Arduino quanto no Python. Os dois lados devem utilizar a mesma velocidade para que a comunicação funcione corretamente.
Ligando a chave ao Arduino
A ligação é simples:
- Um terminal da chave vai ao pino digital 2.
- O outro terminal vai ao GND.
O código configura o pino 2 como INPUT_PULLUP. Isso ativa o resistor interno do Arduino e dispensa um resistor externo nesta montagem.
Com essa configuração, quando a chave está aberta, o pino é lido como HIGH. Quando a chave fecha o contato com o GND, o pino é lido como LOW.
No nosso programa, interpretamos esses estados assim:
| Condição da chave | Leitura do pino | Mensagem enviada |
|---|---|---|
| Contato aberto | HIGH | DESLIGADA |
| Contato fechado | LOW | LIGADA |
Carregando e testando o código do Arduino
Na IDE do Arduino, selecione Arduino Uno em Ferramentas → Placa e escolha a porta correspondente em Ferramentas → Porta.
Carregue na placa o código apresentado neste artigo.
O programa envia o estado inicial da chave e, depois, uma nova mensagem apenas quando identifica uma mudança. Assim, o terminal não fica repetindo continuamente o mesmo texto.
const int pinoChave = 2;
int estadoAnterior = -1;
void setup() {
pinMode(pinoChave, INPUT_PULLUP);
Serial.begin(9600);
}
void loop() {
int estado = digitalRead(pinoChave);
// Envia o estado inicial e depois apenas quando mudar.
if (estado != estadoAnterior) {
if (estado == LOW) {
Serial.println(“LIGADA”);
} else {
Serial.println(“DESLIGADA”);
}
estadoAnterior = estado;
}
delay(50);
}
Antes de passar ao Python, abra o Monitor Serial da IDE e selecione 9600 baud. Ao ligar e desligar a chave, devem aparecer as mensagens LIGADA e DESLIGADA.

Esse teste confirma que a ligação e o código do Arduino estão funcionando.
Preparando o Python
Com o Python instalado, abra o Prompt de Comando do Windows e verifique a instalação com o comando py --version.
Depois, instale a biblioteca de comunicação serial com py -m pip install pyserial.


A biblioteca pyserial permite que o programa abra a porta do Arduino e leia os dados enviados pelo USB.
Criando o programa no computador
Salve o código Python apresentado neste artigo em um arquivo chamado chave.py.
Se utilizar o Bloco de Notas, escolha Todos os arquivos no campo de tipo ao salvar. Isso evita que o arquivo receba o nome chave.py.txt.
No código, ajuste a porta serial para a mesma que aparece na IDE do Arduino. Neste teste, utilizamos COM6, mas no seu computador ela pode ser diferente.

O programa lê uma linha de cada vez, transforma os dados recebidos em texto e verifica se a mensagem corresponde a LIGADA ou DESLIGADA.
Executando a experiência
Mantenha o Arduino conectado ao USB e feche o Monitor Serial da IDE, para liberar a porta para o Python.
Abra a pasta onde salvou chave.py. Na barra de endereço do Explorador de Arquivos, digite cmd e pressione Enter.
Na janela que abrir, execute py chave.py.
Agora, altere a posição da chave. O terminal mostrará Chave: LIGADA ou Chave: DESLIGADA, conforme o estado recebido.

Para encerrar o programa, pressione Ctrl+C.
Se não funcionar
Se o computador não reconhecer o Arduino, teste outro cabo USB e outra porta do computador. O LED de alimentação aceso confirma que a placa recebe energia, mas não garante que o cabo transmita dados.
Se o Python apresentar um erro ao abrir a porta, confira o número da COM e verifique se o Monitor Serial ou outro programa está utilizando essa conexão.
Se as mensagens não aparecerem corretamente, confirme que Arduino e Python estão configurados para 9600 baud.
O que podemos fazer a partir daqui?
Essa experiência demonstra a base da integração entre Arduino e uma aplicação no computador. Podemos substituir a chave por sensores de temperatura, luminosidade ou distância e utilizar o Python para apresentar gráficos, guardar medições ou gerar alertas.
Também podemos criar uma interface com um indicador verde para a chave ligada e vermelho para a chave desligada.
A comunicação pode funcionar nos dois sentidos: além de receber informações, o Python pode enviar comandos para o Arduino controlar LEDs, buzzers e outros componentes.