#2Iniciante

Dois LEDs piscando alternadamente

4.6(104)
338 concluído
Dois LEDs piscando alternadamente
Dois LEDs piscam rapidamente, um de cada vez: quando um acende, o outro apaga, como se estivessem jogando uma bola de um para o outro. O Arduino mantém cada luz acesa por um quinto de segundo e passa para a outra. Depois de um único LED, este é o passo mais fácil para controlar várias luzes juntas.

Vídeo

Esquema do circuito

Dois LEDs piscando alternadamente - Circuit

Código-fonte

Arduino (C++)
1// ─────────────────────────────────────────
2//   BlueGrays · bluegrays.com
3//   Two LEDs Blinking Alternately
4// ─────────────────────────────────────────
5// Lights two LEDs in turn every 200 ms (flip-flop effect). Shows how to
6// control more than one output pin.
7//
8// Pins:
9//   D8 -> LED 1 (with a 220 ohm resistor)
10//   D9 -> LED 2 (with a 220 ohm resistor)
11
12void setup() {
13  pinMode(8,OUTPUT);     // LED 1 output
14  pinMode(9,OUTPUT);     // LED 2 output
15}
16
17void loop() {
18  // LED 1 on, LED 2 off
19  digitalWrite(8,HIGH);
20  digitalWrite(9,LOW);
21  delay(200);
22  // Swap: LED 1 off, LED 2 on
23  digitalWrite(8,LOW);
24  digitalWrite(9,HIGH);
25  delay(200);
26}
27

Perguntas frequentes

Dois LEDs podem ser ligados ao mesmo resistor?▾

Não, cada LED deve ter seu próprio resistor. Se usarem um único resistor, os LEDs não dividirão a corrente igualmente; um poderá brilhar mais ou nem acender. Neste projeto, cada LED tem um resistor de 220 Ω separado.

Como funciona o efeito flip-flop?▾

Quando um LED é definido como HIGH, o outro é definido como LOW; após uma breve pausa, os estados se invertem. Assim, os dois LEDs acendem alternadamente. A base desse efeito é escrever valores opostos nos dois pinos ao mesmo tempo.

Quais pinos posso usar?▾

No Uno, todos os pinos digitais de 2 a 13 podem ser usados para acionar LEDs. Como os pinos 0 e 1 são usados na comunicação serial USB, é recomendável deixá-los livres. Se você trocar o pino, atualize também o número dele no código.

Os LEDs estão com pouco brilho. Por quê?▾

Geralmente, a linha `pinMode(pin, OUTPUT)` foi esquecida; um pino que não está configurado como saída faz o LED acender com pouco brilho. O mesmo acontece se o valor do resistor for muito alto (por exemplo, 10 kΩ); use 220–330 Ω.