domingo, 7 de agosto de 2022

Arduino 04 Semáforo

3 LEDs externos


Dr. Héctor Darío Aguirre Arvizu
22-08-08


     Aquí te presentamos cómo elaborar un simulador de semáforo con Arduino.
     Lo que en realidad hacemos es extender la aplicación Blink a tres canales.
Conexiones al Arduino de los tres LEDs del semáforo.


Aquí te muestro el video de cómo conectar y jugar con los valores de duración de los destellos de cada LED.

     Te mostramos a continuación el programa.

     Inicio del programa. Copia desde aquí a tu sketch del programa Arduino.
/*
  SEMÁFORO SENCILLO por Darío Aguirre 2022

  Este programa enciende el led durante 1 segundo y lo apaga otro tanto de modo repetido.

  Prácticamente todas las tarjetas Arduino tienen un LED integrado que podemos controlar.En el UNO, MEGA y ZERO
  el LED está amarrado al pin 13, en MKR1000 en el pin 6. LED_BUILTIN es la instrucción para activar el LED
  independientemente de qué tarjeta se esté usando.
  Si necesita saber qué pin corresponde al LED en una tarjeta en particular
  verifique los aspectos técnicos de la tarjeta aquí:
  https://www.arduino.cc/en/Main/Products

  modified 8 May 2014
  by Scott Fitzgerald
  modified 2 Sep 2016
  by Arturo Guadalupi
  modified 8 Sep 2016
  by Colby Newman6
  Modificado por Darío Aguirre 4 de julio 2022

  Este ejemplo de código es de dominio público.

  https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink
*/

// activa las funciones de activación (setup) una vez que presionas el botón de reset
void setup() {
  // inicializa el pin digital LED_BUILTIN como una salida. Equivale al pin 13 de la tarjeta.
  pinMode(LED_BUILTIN, OUTPUT);
  pinMode(12, OUTPUT);
  pinMode(11, OUTPUT);
  pinMode(10, OUTPUT);
}

// el ciclo de encendido-apagado del LED corre continuamente hasta que se desconecta la tarjeta y vuelve a activarse al encenderla.
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // Enciende el LED (HIGH indica que se activa el voltaje)
  delay(1000);                       // para el primer LED, verde
  digitalWrite(LED_BUILTIN, LOW);    // apaga el LED haciendo que el voltaje sea bajo (LOW).
  delay(1000);                       //   
                                     // 
  digitalWrite(12, HIGH);   // Enciende segundo LED, amarillo
  delay(1000);              // 
  digitalWrite(12, LOW);    // 
  delay(1000);  

  digitalWrite(11, HIGH);   // Enciende segundo LED, amarillo
  delay(1000);              // 
  digitalWrite(11, LOW);    // 
  delay(1000);                

  digitalWrite(10, HIGH);   // Enciende segundo LED, amarillo
  delay(1000);              // 
  digitalWrite(10, LOW);    // 
  delay(1000); 
}
Fin de programa

     Aquí te dejo un video que hice con el simulador de thinkercad. En esta plataforma se puede programar de diferente manera, pero el resultado es semejante.


Diviértete.

D. R. 2022 Darío Aguirre


No hay comentarios:

Publicar un comentario