Estrutura de Repetição While no Arduino

Tutorial: Utilizando Estrutura de Repetição while no Arduino com Tinkercad

Neste tutorial, vamos criar um circuito simples no Tinkercad que utiliza um LED e um botão. O objetivo é fazer com que o LED pisque repetidamente enquanto o botão estiver pressionado. Para isso, vamos utilizar a estrutura de repetição while no código do Arduino.

Materiais Necessários:

  1. Arduino Uno

  2. LED

  3. Resistor (220Ω)

  4. Botão

  5. Fios de conexão

  6. Protoboard

Passo 1: Montando o Circuito no Tinkercad

  1. Conecte o LED:

    • Conecte o ânodo (perna positiva) do LED ao pino digital 13 do Arduino.

    • Conecte o cátodo (perna negativa) do LED a um resistor de 220Ω.

    • Conecte o outro lado do resistor ao GND do Arduino.

  2. Conecte o Botão:

    • Conecte um lado do botão ao pino digital 2 do Arduino.

    • Conecte o outro lado do botão ao GND do Arduino.

    • Conecte um resistor de 10kΩ entre o pino digital 2 e o GND (pull-down resistor).

    • Conecte um fio do lado do botão que está conectado ao pino digital 2 ao 5V do Arduino.

Passo 2: Escrevendo o Código no Arduino

Agora que o circuito está montado, vamos escrever o código que fará o LED piscar enquanto o botão estiver pressionado.

// Definindo os pinos
const int ledPin = 13;  // Pino do LED
const int buttonPin = 2; // Pino do botão

void setup() {
  // Configurando os pinos
  pinMode(ledPin, OUTPUT);  // Define o pino do LED como saída
  pinMode(buttonPin, INPUT); // Define o pino do botão como entrada
}

void loop() {
  // Lê o estado do botão
  int buttonState = digitalRead(buttonPin);

  // Enquanto o botão estiver pressionado (HIGH), o LED pisca
  while (buttonState == HIGH) {
    digitalWrite(ledPin, HIGH); // Acende o LED
    delay(500);                 // Espera 500ms
    digitalWrite(ledPin, LOW);  // Apaga o LED
    delay(500);                 // Espera 500ms

    // Atualiza o estado do botão dentro do loop
    buttonState = digitalRead(buttonPin);
  }

  // Se o botão não estiver pressionado, o LED permanece apagado
  digitalWrite(ledPin, LOW);
}

Passo 3: Explicação do Código

  • Definição dos pinos: Definimos os pinos do LED e do botão.

  • Setup: Configuramos os pinos como entrada (botão) e saída (LED).

  • Loop principal:

    • O estado do botão é lido continuamente.

    • Se o botão estiver pressionado (buttonState == HIGH), o código entra no loop while.

    • Dentro do loop while, o LED pisca (liga e desliga) com um intervalo de 500ms.

    • O estado do botão é verificado novamente dentro do loop while para garantir que o loop só continue enquanto o botão estiver pressionado.

    • Se o botão não estiver pressionado, o LED permanece apagado.

Passo 4: Simulando no Tinkercad

  1. Abra o Tinkercad e crie um novo circuito.

  2. Monte o circuito conforme descrito no Passo 1.

  3. Copie e cole o código fornecido no editor de código do Arduino no Tinkercad.

  4. Clique em "Iniciar Simulação" para testar o circuito.

  5. Pressione o botão e observe o LED piscar enquanto o botão estiver pressionado.

Conclusão

Neste tutorial, você aprendeu a utilizar a estrutura de repetição while no Arduino para controlar um LED com base no estado de um botão. Esse conceito é fundamental para criar projetos mais complexos onde você precisa repetir uma ação enquanto uma condição específica for verdadeira.

Experimente modificar o código e o circuito para explorar outras possibilidades, como alterar a velocidade do piscar do LED ou adicionar mais LEDs e botões!


Questões

Comentários...

Não há comentários ainda... Seja o primeiro!