#1Iniciante

LED piscante

4.6(188)
1123 concluído
LED piscante
O primeiro contato com a eletrônica: acender e apagar um único LED. O Arduino acende e apaga o LED em intervalos curtos, fazendo a luz piscar rapidamente. Você vê da forma mais simples como a placa controla uma luz e aprende a base para todos os próximos projetos.

Vídeo

Esquema do circuito

LED piscante - Circuit

Código-fonte

C++ (Arduino IDE)
1// ─────────────────────────────────────────
2//   BlueGrays · bluegrays.com
3//   LED piscante
4// ─────────────────────────────────────────
5// Pisca um único LED, ligando e desligando a cada 100 ms. Mostra o uso
6// básico das funções digitalWrite e delay.
7//
8// Pinos:
9//   D9 -> LED (com resistor de 220 ohm)
10
11void setup() {
12  pinMode(9,OUTPUT);     // Pino do LED como saída
13}
14
15void loop() {
16  digitalWrite(9,HIGH);  // Liga o LED
17  delay(100);            // Espera 100 ms (1000 ms = 1 s)
18  digitalWrite(9,LOW);   // Desliga o LED
19  delay(100);
20}
21

Perguntas frequentes

Por que não se deve ligar um LED sem resistor?

Um LED não limita a própria corrente; se for ligado diretamente a 5 V, consumirá corrente demais, o que pode danificar tanto o LED quanto o pino do Arduino. Um resistor de 220 Ω limita a corrente a aproximadamente 13–15 mA, um valor seguro para o LED e o pino.

Qual terminal do LED é o positivo (+)?

O terminal mais longo é o ânodo (+), e o mais curto é o cátodo (−). O lado achatado do corpo do LED também indica o cátodo. Ligue o ânodo ao pino do Arduino (por meio de um resistor) e o cátodo ao GND; se a ligação estiver invertida, o LED não acenderá, mas não será danificado.

Carreguei o código, mas o LED não acende. O que devo verificar?

Verifique cada ponto: o LED está invertido? O número do pino no código corresponde ao do circuito? Há uma conexão com o GND? O LED e o resistor estão na mesma linha da protoboard? O LED "L" da placa também está ligado ao pino 13; você pode testá-lo primeiro usando LED_BUILTIN.

Como altero a velocidade com que o LED pisca?

O valor dentro de `delay()` é dado em milissegundos: `delay(1000)` espera um segundo. Se você diminuir o valor, o LED piscará mais rápido; se aumentar, piscará mais devagar. Você também pode definir separadamente o tempo que ele fica aceso e apagado.