
Vídeo
Esquema do circuito

Código-fonte
1// ─────────────────────────────────────────
2// BlueGrays · bluegrays.com
3// Dois LEDs piscando alternadamente
4// ─────────────────────────────────────────
5// Acende dois LEDs alternadamente a cada 200 ms (efeito flip-flop). Mostra
6// como controlar mais de um pino de saída.
7//
8// Pinos:
9// D8 -> LED 1 (com resistor de 220 ohm)
10// D9 -> LED 2 (com resistor de 220 ohm)
11
12void setup() {
13 pinMode(8,OUTPUT); // Saída do LED 1
14 pinMode(9,OUTPUT); // Saída do LED 2
15}
16
17void loop() {
18 // LED 1 ligado, LED 2 desligado
19 digitalWrite(8,HIGH);
20 digitalWrite(9,LOW);
21 delay(200);
22 // Troca: LED 1 desligado, LED 2 ligado
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 Ω.
