Tabla de contenido
/***************************************************
* Titulo: *
* Descripción: *
* *
* *
* Dispositivo: Arduino UNO *
* *
* Fecha: 02/11/21 *
* by: JDGC REV:1.0 *
***************************************************/
//Etiquetas
//--Inputs
//--Outputs
#define led_verde 2//Led esta en el pin 2
#define led_ambar 3
#define led_rojo 4
//--Constantes
#define TIME_VERDE 4000
#define TIME_BLINK 2000
#define TIME_AMBAR 2000
#define TIME_ROJO 4000
//Variables
byte value = 0;
//Estados
enum estados{
estado0, //0
estado1, //1
estado2, //2
estado3 //3
} estado;
//Init
void setup()
{
//--Inputs
// pinMode (motor, INPUT);
// digitalWrite(motor, HIGH);// PULL - UP activada
//--Outputs
pinMode (led_verde, OUTPUT); // es una salida
pinMode (led_ambar, OUTPUT); // es una salida
pinMode (led_rojo , OUTPUT); // es una salida
estado = estado0;
}
//Ejecuccion
void loop()
{
switch (estado)
{
case estado0:
digitalWrite(led_verde, HIGH);
digitalWrite(led_ambar, LOW);
digitalWrite(led_rojo, LOW);
delay(TIME_VERDE);
estado = estado1;
break;
case estado1:
digitalWrite(led_ambar, LOW);
digitalWrite(led_rojo, LOW);
digitalWrite(led_verde, HIGH);
delay(500);
digitalWrite(led_verde, LOW);
delay(500);
digitalWrite(led_verde, HIGH);
delay(500);
digitalWrite(led_verde, LOW);
delay(500);
estado = estado2;
break;
case estado2:
digitalWrite(led_verde, LOW);
digitalWrite(led_ambar, HIGH);
digitalWrite(led_rojo, LOW);
delay(TIME_AMBAR);
estado = estado3;
break;
case estado3:
digitalWrite(led_verde, LOW);
digitalWrite(led_ambar, LOW);
digitalWrite(led_rojo, HIGH);
delay(TIME_ROJO);
estado = estado0;
break;
default:
// if nothing else matches, do the default
// default is optional
break;
}
}//FIN LOOP