Arduino & IoT Academy · Aula

INPUT versus INPUT_PULLUP

Entenda por que um pino flutuante engana e como os pull-ups corrigem isso.

Aula 1 de 413 etapas

INPUT versus INPUT_PULLUP é uma aula grátis de Arduino & IoT Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Arduino & IoT Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Arduino & IoT Academy inclui 4 aulas no total.

Os pinos também podem escutar

Até agora, seus pinos enviavam sinais. Agora você fará um pino escutar, para que sua placa possa detectar um botão e reagir a ele.

Configure um pino como INPUT

Para ler um botão, primeiro informe a um pino que ele deve receber um sinal. Você faz isso definindo o modo como INPUT dentro de setup().

void setup() {
  pinMode(2, INPUT);
}

Um pino flutuante engana

Um pino INPUT sem nada que o mantenha em uma tensão definida é chamado de flutuante. Ele capta ruídos externos e alterna sozinho entre HIGH e LOW.

Por que o estado flutuante é um problema

Um pino flutuante fornece leituras aleatórias e falsas do botão. Seu código pensa que o botão foi pressionado quando ninguém o tocou. ⚡

Resistores de polarização resolvem o problema

Um resistor de polarização conecta suavemente o pino a uma tensão conhecida. Assim, ele mantém uma leitura padrão estável até que o botão a altere.

Pull-up ou pull-down

Um pull-up mantém o pino em HIGH por padrão; um pull-down mantém o pino em LOW. O Arduino já possui pull-ups práticos integrados ao chip.

Use INPUT_PULLUP

Dispense o resistor extra: defina o modo como INPUT_PULLUP, e a placa ativará automaticamente o pull-up interno para você.

void setup() {
  pinMode(2, INPUT_PULLUP);
}

A lógica se inverte

Com INPUT_PULLUP, o pino lê HIGH quando o botão está solto e LOW quando está pressionado. A lógica é invertida de propósito.

Conecte ao terra

Como o pull-up interno mantém o pino em HIGH, conecte o botão entre o pino e GND. Ao pressioná-lo, o pino é levado para LOW.

Menos fiação, menos erros

INPUT_PULLUP significa um resistor a menos na sua protoboard e nenhum pino flutuante. Para a maioria dos botões de iniciantes, é simplesmente a opção mais fácil.

Escolha o modo correto

Use o INPUT comum somente quando seu circuito já fornecer o próprio resistor de polarização. Caso contrário, INPUT_PULLUP mantém tudo seguro e simples.

Verificação rápida

Pense em como INPUT_PULLUP se comporta quando o botão está em repouso.

Recapitulação

Você aprendeu que um pino INPUT pode flutuar e enganar, e que INPUT_PULLUP resolve isso: HIGH quando solto e LOW quando pressionado. Em seguida, você realmente lerá esse valor. 👍

Grátis para começar

Aprenda C++ com um tutor de IA — grátis

Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.

Cursos
30
Aulas
120

Perguntas Frequentes

A aula “INPUT versus INPUT_PULLUP” é grátis?

Sim — o texto completo de “INPUT versus INPUT_PULLUP” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Arduino & IoT Academy, atualize para CoddyKit PRO. O curso de Arduino & IoT Academy inclui 4 aulas no total.

O que vou aprender em “INPUT versus INPUT_PULLUP”?

Entenda por que um pino flutuante engana e como os pull-ups corrigem isso. Você pratica Arduino & IoT Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Arduino & IoT Academy?

Nenhuma experiência prévia é necessária. Arduino & IoT Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.

Quanto tempo leva a aula “INPUT versus INPUT_PULLUP”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Arduino & IoT Academy?

Sim. Cada aula de Arduino & IoT Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. INPUT versus INPUT_PULLUP
  2. Lendo o Estado de um Botão
  3. if/else: o LED Segue o Botão
  4. Conecte um Botão em uma Protoboard
← Voltar para Arduino & IoT Academy