El LED lleva su resistencia para que no se queme y el botón lleva también una resistencia pero es para hacer una derivación a masa (tierra o GND).
Usamos dos pines digitales, el 8 para leer el botón y el 2 para actuar sobre el LED.
Necesitamos:
- Placa Arduino
- LED
- Botón pulsador de 4 patillas
- una resistencia de 100 Ohm para el LED
- una resistencia de 10KOhm para la derivación a tierra del botón
Al pulsar el botón el LED se enciende y permanece encendido hasta que se vuelve a presionar el botón.
const int pinLed = 2; //El pin del LED const int pinBtn = 8; // El pin del botón int encender = 0; // Si está encendido el LED int anterior = 0; // Pulsación anterior int estado = 0; //El estado actual del botón void setup() { pinMode(pinLed, OUTPUT); // Ponemos el pin del LED como salida pinMode(pinBtn, INPUT); // Ponemos el pin del botón como entrada } void loop() { estado = digitalRead(pinBtn); //Comprobamos el estado if (estado && anterior == 0) // Comprobamos si el anterior era sin pulsar y el estado actual es pulsado { encender = 1 - encender; // Asignamos el estado contrario delay(30); // Anti-rebote } anterior = estado; // Guardamos el estado actual para posteriores comprobaciones if(encender) // Si encender es 1 digitalWrite(pinLed, HIGH); // Endendemos el LED else // Si no digitalWrite(pinLed, LOW); // Apagamos el LED }
No hay comentarios:
Publicar un comentario