Documentos de Académico
Documentos de Profesional
Documentos de Cultura
// C++ code
//
int ledDerechaVerde = 2;
int ledDerechaAmarillo = 3;
int ledDerechaRojo = 4;
int ledFlechaVerde = 5;
int ledFlechaAmarillo = 6;
int ledFlechaRojo = 7;
int ledNorteVerde = 8;
int ledNorteAmarillo = 9;
int step = 1;
float tiempoPas = 0;
float tiempoLuz = 0;
float antSegundos = 0;
void setup()
pinMode(ledDerechaVerde, OUTPUT);
pinMode(ledDerechaAmarillo, OUTPUT);
pinMode(ledDerechaRojo, OUTPUT);
pinMode(ledFlechaVerde, OUTPUT);
pinMode(ledFlechaAmarillo, OUTPUT);
pinMode(ledFlechaRojo, OUTPUT);
pinMode(ledNorteVerde, OUTPUT);
pinMode(ledNorteAmarillo, OUTPUT);
pinMode(ledNorteRojo, OUTPUT);
pinMode(ledIzquierdaVerde, OUTPUT);
pinMode(ledIzquierdaAmarillo, OUTPUT);
pinMode(ledIzquierdaRojo, OUTPUT);
Serial.begin(9600);
void loop()
if(segundos!=antSegundos){
Serial.println("Reinicio!!");
tiempoPas = 0;
tiempoPas = tiempoPas + 1;
digitalWrite(ledDerechaVerde, LOW);
digitalWrite(ledDerechaAmarillo, LOW);
digitalWrite(ledDerechaRojo, LOW);
digitalWrite(ledFlechaVerde, LOW);
digitalWrite(ledFlechaAmarillo, LOW);
digitalWrite(ledFlechaRojo, LOW);
digitalWrite(ledNorteVerde, LOW);
digitalWrite(ledNorteAmarillo, LOW);
digitalWrite(ledNorteRojo, LOW);
digitalWrite(ledIzquierdaVerde, LOW);
digitalWrite(ledIzquierdaAmarillo, LOW);
digitalWrite(ledIzquierdaRojo, LOW);
switch(step){
case 1:
//Verde
if(tiempoPas==1){
tiempoLuz = segundos*10;
digitalWrite(ledDerechaVerde, HIGH);
digitalWrite(ledFlechaVerde, HIGH);
digitalWrite(ledNorteRojo, HIGH);
digitalWrite(ledIzquierdaRojo, HIGH);
Serial.println("Paso 1");
break;
case 2:
//Amarillo
tiempoLuz = segundos;
digitalWrite(ledDerechaVerde, HIGH);
digitalWrite(ledFlechaAmarillo, HIGH);
digitalWrite(ledNorteRojo, HIGH);
digitalWrite(ledIzquierdaRojo, HIGH);
Serial.println("Paso 2");
break;
case 3:
//verde
if(tiempoPas==1){
tiempoLuz = segundos*10;
digitalWrite(ledDerechaVerde, HIGH);
digitalWrite(ledFlechaRojo, HIGH);
digitalWrite(ledNorteRojo, HIGH);
digitalWrite(ledIzquierdaVerde, HIGH);
Serial.println("Paso 3");
break;
case 4:
//Amarillo
tiempoLuz = segundos;
digitalWrite(ledDerechaAmarillo, HIGH);
digitalWrite(ledFlechaRojo, HIGH);
digitalWrite(ledNorteRojo, HIGH);
digitalWrite(ledIzquierdaAmarillo, HIGH);
Serial.println("Paso 4");
break;
case 5:
//Verde
if(tiempoPas==1){
tiempoLuz = segundos*10;
digitalWrite(ledDerechaRojo, HIGH);
digitalWrite(ledFlechaRojo, HIGH);
digitalWrite(ledNorteVerde, HIGH);
digitalWrite(ledIzquierdaRojo, HIGH);
Serial.println("Paso 5");
break;
case 6:
//Amarillo
tiempoLuz = segundos;
digitalWrite(ledDerechaRojo, HIGH);
digitalWrite(ledFlechaRojo, HIGH);
digitalWrite(ledNorteAmarillo, HIGH);
digitalWrite(ledIzquierdaRojo, HIGH);
Serial.println("Paso 6");
break;
delay(1000);
tiempoPas = 0;
Serial.print("Hola!!");
step++;
if(step>6){
step=1;
antSegundos = segundos;
}
Otro código
int LED_POVerde = 2;
int LED_POAmarillo = 3;
int LED_PORojo = 4;
int LED_FVerde = 5;
int LED_FAmarillo = 6;
int LED_FRojo = 7;
int LED_PECVerde = 8;
int LED_PECAmarillo = 9;
int PMax = 7;
int PMin = 1;
// the setup function runs once when you press reset or power the board
void setup() {
//pinMode(LED_BUILTIN, OUTPUT);
pinMode(LED_POVerde, OUTPUT);
pinMode(LED_POAmarillo, OUTPUT);
pinMode(LED_PORojo, OUTPUT);
pinMode(LED_FVerde, OUTPUT);
pinMode(LED_FAmarillo, OUTPUT);
pinMode(LED_FRojo, OUTPUT);
pinMode(LED_PECVerde, OUTPUT);
pinMode(LED_PECAmarillo, OUTPUT);
pinMode(LED_PECRojo, OUTPUT);
pinMode(LED_OPVerde, OUTPUT);
pinMode(LED_OPAmarillo, OUTPUT);
pinMode(LED_OPRojo, OUTPUT);
Serial.begin(9600);
void loop() {
float P = ((valAnag*(rango))/1023)+PMin;
digitalWrite(LED_PECRojo, HIGH);
digitalWrite(LED_PORojo, HIGH);
digitalWrite(LED_OPRojo, HIGH);
digitalWrite(LED_FRojo, HIGH);
delay(3000/P);
digitalWrite(LED_FRojo, LOW);
digitalWrite(LED_PORojo, LOW);
digitalWrite(LED_FVerde, HIGH);
digitalWrite(LED_POVerde, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(31500/P);
digitalWrite(LED_FVerde, LOW);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_FVerde, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_FVerde, LOW);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_FVerde, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_FVerde, LOW);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_FAmarillo, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(3000/P);
digitalWrite(LED_FAmarillo, LOW);
digitalWrite(LED_FRojo, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(3000/P);
digitalWrite(LED_OPRojo, LOW);
digitalWrite(LED_OPVerde, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(51500/P);
digitalWrite(LED_OPVerde, LOW);
digitalWrite(LED_POVerde, LOW);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_OPVerde, HIGH);
digitalWrite(LED_POVerde, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_OPVerde, LOW);
digitalWrite(LED_POVerde, LOW);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_OPVerde, HIGH);
digitalWrite(LED_POVerde, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_OPVerde, LOW);
digitalWrite(LED_POVerde, LOW);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_OPAmarillo, HIGH);
digitalWrite(LED_POAmarillo, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(3000/P);
digitalWrite(LED_OPAmarillo, LOW);
digitalWrite(LED_POAmarillo, LOW);
digitalWrite(LED_OPRojo, HIGH);
digitalWrite(LED_PORojo, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(3000/P);
digitalWrite(LED_PECRojo, LOW);
digitalWrite(LED_PECVerde, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(91500/P);
digitalWrite(LED_PECVerde, LOW);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_PECVerde, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_PECVerde, LOW);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_PECVerde, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_PECVerde, LOW);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(500/P);
digitalWrite(LED_PECAmarillo, HIGH);
P = (((analogRead(poten))*(rango))/1023)+PMin;
delay(3000/P);
digitalWrite(LED_PECAmarillo, LOW);
digitalWrite(LED_PECRojo, HIGH);