Imágenes
Códigos
Encendido de un led mediante un pulsador
//Declaramos las variables led y pulsador asociadas //a las patillas 7 y 8 int led=7; int pulsador=8; //Función setup void setup() { //Indicamos que la patilla 7 será una salida y la 8 una entrada pinMode(led,OUTPUT); pinMode(pulsador,INPUT); } //Función loop void loop() { //Comprobamos si hay un '1' en la patilla 8 if (digitalRead(pulsador)==HIGH){ //Si se cumple dicha condición, encendemos el led digitalWrite(led,HIGH); } //Si no se cumple, apagamos el led else{digitalWrite(led,LOW); } }
Encendido prolongado de un led mediante pulsador
int led=7; int pulsador=8; //Declaramos las dos nuevas variables, asumiendo que de momento son falsas bool pulsado=false; bool encendido=false; void setup() { pinMode(led,OUTPUT); pinMode(pulsador,INPUT); //empezamos el código con el led apagado digitalWrite(led,LOW); } void loop() { //Si estamos pulsando if (digitalRead(pulsador)==HIGH){ //Sabemos que estamos pulsando; comprobamos el estado anterior if (pulsado==false){ //Estamos pulsando y anteriormente no estábamos pulsando… //¡Cambio de estado del pulsador! pulsado=true; //Ya sabemos que el pulsador ha sido oprimido por primera vez. //Pasamos a cambiar el estado de la variable encendido if(encendido==false){ encendido=true; }else{ encendido=false; } } } //No estamos pulsando. El estado de pulsado es false else{ pulsado=false; } //Escribimos en led el estado (true corresponde a 1 y viceversa). digitalWrite(led,encendido); }
Pulsador con memoria (recuerda si se había encendido o apagado)
int led=7; int pulsador=8; void setup() { pinMode(led,OUTPUT); pinMode(pulsador,INPUT); } void loop() { if (digitalRead(pulsador)==HIGH){ digitalWrite(led,HIGH); //Establecemos un retraso de 5000 ms delay(5000); } else{ digitalWrite(led,LOW); } }