Revista Digital Sexto semestre en electrónica 1 | Page 47

Programación

#define Rojo 2

#define Verde 3

#define Amarillo 4

#define Azul 5

#define Campana 6

#define In_Rojo 9

#define In_Verde 10

#define In_Amarillo 11

#define In_Azul 12

int i;

int nivelActual = 4;

int velocidad = 500;

const int MaximiNivel = 8;

int secuencia[MaximiNivel];

int SecuenciaLeida[MaximiNivel];

void setup(){

pinMode(Amarillo, OUTPUT);

pinMode(Azul, OUTPUT);

pinMode(Rojo, OUTPUT);

pinMode(Verde, OUTPUT);

pinMode(Campana, OUTPUT);

inicio();

}

void loop(){

if(nivelActual == 4){

generaSecuencia();

muestraSecuencia();

leeSecuencia();

}

if(nivelActual != 4){

muestraSecuencia();

leeSecuencia();

}

}

void inicio(){

for (i = 1; i <= 12; i++) {

digitalWrite(Verde , HIGH);

digitalWrite(Amarillo , HIGH);

digitalWrite(Azul , HIGH);

digitalWrite(Rojo , HIGH);

delay(100);

}

}

void imp_unidad(int n){

for(int x=1;x<=n;x++){

digitalWrite(Verde , 1);

digitalWrite(Amarillo, 1);

digitalWrite(Azul, 1);

digitalWrite(Rojo , 1);

delay(800);

apagados();

delay(300);

}

}

void imp_residuo(int n){

apagados();

if (n==1){

digitalWrite(Verde , 1);

}

if (n==2){

digitalWrite(Verde , 1);

digitalWrite(Amarillo, 1);

}

if (n==3){

digitalWrite(Verde , 1);

digitalWrite(Amarillo, 1);

digitalWrite(Azul, 1);

}

delay(800);

apagados();

delay(300);

}