
Video
Diagrama del circuito

Código fuente
1int delayTime = 60;
2void setup() {
3 pinMode(2,OUTPUT);
4 pinMode(3,OUTPUT);
5}
6void loop() {
7 for(int i=0;i<3;i++){
8 digitalWrite(2,HIGH);
9 delay(delayTime);
10 digitalWrite(2,LOW);
11 delay(delayTime);
12 }
13
14 for(int i=0;i<3;i++){
15 digitalWrite(3,HIGH);
16 delay(delayTime);
17 digitalWrite(3,LOW);
18 delay(delayTime);
19 }
20}Preguntas frecuentes
¿Cómo puedo conseguir que el efecto de destello sea más realista?▾
Las luces de emergencia auténticas emiten unos cuantos destellos cortos de todos los colores. Si utilizas un bucle «for» para encender un LED rápidamente tres veces (por ejemplo, 50 ms encendido, 50 ms apagado) y luego pasas al siguiente, conseguirás un efecto muy parecido al de las luces de emergencia de la policía.
¿Pueden los LED rojos y azules utilizar la misma resistencia?▾
Funcionan, pero su intensidad luminosa es diferente: la tensión directa del LED azul (aproximadamente 3,2 V) es mayor que la del rojo (aproximadamente 1,9 V), por lo que con la misma resistencia pasa menos corriente. Para obtener el mismo brillo, puedes elegir una resistencia más pequeña para el azul; la herramienta de cálculo de resistencia para LED realiza este cálculo.
¿Para qué sirve aquí el bucle «for»?▾
Se utiliza para repetir el mismo movimiento de parpadeo un número determinado de veces. En lugar de copiar y pegar el código varias veces, escribe «for (int i = 0; i < 3; i++)» para controlar las repeticiones desde un solo lugar.
¿Qué puedo usar para que el destello sea más brillante?▾
Un pin de Arduino suministra como máximo unos 20 mA. Para LED más potentes o tiras de LED, es necesario alimentarlos mediante un transistor (por ejemplo, un BC547 o un MOSFET) conectado a una fuente de alimentación independiente; no conectes cargas de alta intensidad directamente al pin.
