Paso 14: El código
Código:
variable controles
int BenOn = 0;
int lightOnED = 0;
int lightOnEL = 0;
int lightOnPA = 0;
int lightOnPA2 = 0;
int buttonStateED = 0;
int lastButtonStateED = 0;
int buttonStateEL = 0;
int lastButtonStateEL = 0;
int pressurePA = 0;
int lastPressurePA = 0;
pines de salida
lightningBolt int = 3;
int lightBulbEddison = 4;
int bridgeLights = 5;
int buildingLights = 6;
int ferrisWheelLights = 7;
int benFrankHair = 8;
pines de entrada
int eddisonScene = 12;
int benScene = 11;
int parisScene = 1;
void setup() {}
Inicializa el pin digital como salida.
configurar todas las salidas
Serial.Begin(9600);
pinMode(lightningBolt,OUTPUT);
pinMode(lightBulbEddison,OUTPUT);
pinMode(bridgeLights,OUTPUT);
pinMode(buildingLights,OUTPUT);
pinMode(ferrisWheelLights,OUTPUT);
pinMode(benFrankHair,OUTPUT);
pinMode(eddisonScene,INPUT);
pinMode(benScene,INPUT);
}
void loop() {}
leer todas las entradas
buttonStateED = digitalRead(eddisonScene);
buttonStateEL = digitalRead(benScene);
pressurePA = analogRead(parisScene);
Compruebe si la escena de ben activada
Si (buttonStateEL! = lastButtonStateEL) {}
if(buttonStateEL == Low) {}
Serial.Print ("buttonStateEL pressed\n");
{if(BenOn==1)}
BenOn = 0;
}
else {} if(lightOnEL==0)
lightOnEL = 1;
}
}
}
lastButtonStateEL = buttonStateEL;
Verifica si presiona el botón de eddison
Si (buttonStateED! = lastButtonStateED) {}
Si (buttonStateED == LOW) {}
Serial.Print ("buttonStateED pressed\n");
lightOnED =! lightOnED;
}
}
lastButtonStateED = buttonStateED;
/*Serial.Print ("última presión:");
Serial.Print(lastPressurePA);
Serial.Print("\n");
Serial.Print ("presión:");
Serial.Print(pressurePA);
Serial.Print("\n"); * /
verificación de presión por resistencia de sensor de fuerza de París
{if(lastPressurePA==0)}
Si (pressurePA > 1) {}
if(lightOnPA2 ==1) {}
lightOnPA2 = 0;
}
otra cosa if(lightOnPA ==0) {}
lightOnPA = 1;
}
Serial.Print("pressed\n");
}
}
lastPressurePA = pressurePA;
{if(lightOnPA==1)}
encender las luces de cada zona de París secuencialmente
digitalWrite(bridgeLights,LOW);
Delay(2000);
digitalWrite(buildingLights,HIGH);
Delay(2000);
digitalWrite(ferrisWheelLights,LOW);
lightOnPA = 0;
lightOnPA2 = 1;
}
if(lightOnPA2==1) más
{
mantener luces encendidas después de forma secuencial
digitalWrite(bridgeLights,LOW);
digitalWrite(buildingLights,HIGH);
digitalWrite(ferrisWheelLights,LOW);
}
otra cosa
{
otra cosa los apaga
digitalWrite(bridgeLights,HIGH);
digitalWrite(buildingLights,HIGH);
digitalWrite(ferrisWheelLights,HIGH);
}
if(lightOnED == 1) {}
encender bombilla de eddison
digitalWrite(lightBulbEddison,HIGH);
}
Else {}
Apague la bombilla de eddison
digitalWrite(lightBulbEddison,LOW);
}
¿Compruebe si rayo bolt es en?
if(lightOnEL == 1) {}
Si está activado el rayo
digitalWrite(lightningBolt,HIGH);
Delay(300);
digitalWrite(lightningBolt,LOW);
Delay(400);
digitalWrite(lightningBolt,HIGH);
Delay(300);
digitalWrite(lightningBolt,LOW);
Delay(300);
digitalWrite(lightningBolt,HIGH);
Delay(300);
digitalWrite(lightningBolt,LOW);
lightOnEL = 0;
BenOn = 1;
}
else {} if(BenOn==1)
subir el pelo de ben después de la huelga de relámpago
digitalWrite(benFrankHair,LOW);
}
Else {}
nothings otra cosas sucediendo tanto Apagar
digitalWrite(benFrankHair,HIGH);
digitalWrite(lightningBolt,LOW);
}
}