Вы находитесь на странице: 1из 4

//==========================================================================

//PRACTICA N3_SEMAFORO DOS VIAS CONTADOR CON REINICIO MEDIANTE PULSANTE

//==========================================================================

/*

//SEMAFORO 1 VIA.

// T1 T2 T3 T4

//ROJO1 0 0 1 1

//AMAR1 0 1 0 0

//VERD1 1 1 0 0

//ROJO2 1 1 0 0

//AMAR2 0 0 0 1

//VERD2 0 0 1 1

//PROGRAMADOR: FABIAN MARTINEZ

//FECHA: 08 ABRIL 2019

//VERSION: 1.0

*/

//==========================================================================

//IDENTIFICACION Y ASIGNACION DE VARIABLES A LOS PINES SELECCIONADOS

//RUTINA DE CONFIGURACION DE PUERTOS_SE EJECUTA UNA VEZ AL PRESIONAR REINICIAR

# define VERD1 3 //DESIGNAMOS VERD1 AL PIN DE SALIDA 3

# define AMAR1 7 //DESIGNAMOS AMAR1 AL PIN DE SALIDA 7

# define ROJO1 10 //DESIGNAMOS ROJO1 AL PIN DE SALIDA 10

# define VERD2 32 //DESIGNAMOS VERD2 AL PIN DE SALIDA 32

# define AMAR2 36 //DESIGNAMOS AMAR2 AL PIN DE SALIDA 36

# define ROJO2 40 //DESIGNAMOS ROJO2 AL PIN DE SALIDA 40

# define BOTON 28 //DESIGNAMOS BOTON AL PIN DE ENTRADA 28


//==============================================================================

//ZONA DE HABILITACION DE LAS VARIABLES_ASIGNACION DE LOS PINES COMO SALIDAS

void setup() {

pinMode (VERD1, OUTPUT); // ASIGNAMOS EL PIN VERDE COMO SALIDA

pinMode (AMAR1, OUTPUT); // ASIGNAMOS EL PIN AMARILLO COMO SALIDA

pinMode (ROJO1, OUTPUT); // ASIGNAMOS EL PIN ROJO COMO SALIDA

pinMode (VERD2, OUTPUT); // ASIGNAMOS EL PIN VERDE COMO SALIDA

pinMode (AMAR2, OUTPUT); // ASIGNAMOS EL PIN AMARILLO COMO SALIDA

pinMode (ROJO2, OUTPUT); // ASIGNAMOS EL PIN ROJO COMO SALIDA

pinMode (BOTON, INPUT); // ASIGNAMOS EL PIN BOTON COMO ENTRADA

//==============================================================================

//ZONA DE INSTRUCCIONES (RUTINA PRINCIPAL)

//LA FUNCION DE BUCLE SE EJECUTA UNA Y OTRA VEZ PARA SIEMPRE

void loop() {

if(digitalRead(BOTON) == HIGH)

if (digitalRead (BOTON) == LOW)

for (int i=0; i<5; i=i+1)

digitalWrite(ROJO1, false);
digitalWrite(AMAR1, false);

digitalWrite(VERD1, true);

digitalWrite(ROJO2, true);

digitalWrite(AMAR2, false);

digitalWrite(VERD2, false);

delay (3000);

digitalWrite(ROJO1, false);

digitalWrite(AMAR1, true);

digitalWrite(VERD1, true);

digitalWrite(ROJO2, true);

digitalWrite(AMAR2, false);

digitalWrite(VERD2, false);

delay (3000);

digitalWrite(ROJO1, true);

digitalWrite(AMAR1, false);

digitalWrite(VERD1, false);

digitalWrite(ROJO2, false);

digitalWrite(AMAR2, false);

digitalWrite(VERD2, true);

delay (3000);

digitalWrite(ROJO1, true);

digitalWrite(AMAR1, false);

digitalWrite(VERD1, false);

digitalWrite(ROJO2, false);

digitalWrite(AMAR2, true);

digitalWrite(VERD2, true);
delay (3000);

digitalWrite(ROJO1, false);

digitalWrite(AMAR1, false);

digitalWrite(VERD1, false);

digitalWrite(ROJO2, false);

digitalWrite(AMAR2, false);

digitalWrite(VERD2, false);

// digitalWrite(ROJO1, false);

//digitalWrite(AMAR1, false);

// digitalWrite(VERD1, false);

// digitalWrite(ROJO2, false);

// digitalWrite(AMAR2, false);

// digitalWrite(VERD2, false);

// delay (50000);

//===============================================================================

Вам также может понравиться