/* * Ejemplo de uso de botones y zumbador para la placa Neofan de FANIOT. * Este programa detecta la pulsación de tres botones y activa el zumbador * en diferentes patrones según el botón presionado. */ #define B_IZQ 0 // Definimos el pin del botón izquierdo, en este caso es el 0. #define B_ENTER 15 // Definimos el pin del botón central, en este caso es el 15. #define B_DER 13 // Definimos el pin del botón derecho, en este caso es el 13. #define ZUM 12 // Definimos el pin del zumbador, en este caso es el 12. int B_IZQ_EST = 0; // Variable para leer el estado del botón izquierdo int B_ENTER_EST = 0; // Variable para leer el estado del botón central int B_DER_EST = 0; // Variable para leer el estado del botón derecho /* * La función setup() se ejecuta una vez al encender o resetear la placa. */ void setup() { // Configuramos los pines de los botones como entradas pinMode(B_IZQ, INPUT); pinMode(B_ENTER, INPUT); pinMode(B_DER, INPUT); // Configuramos el pin del zumbador como salida pinMode(ZUM, OUTPUT); } /* * La función loop() se ejecuta continuamente en un ciclo. */ void loop() { // Leemos el estado de los botones B_IZQ_EST = digitalRead(B_IZQ); // Leemos el estado del botón izquierdo B_ENTER_EST = digitalRead(B_ENTER); // Leemos el estado del botón central B_DER_EST = digitalRead(B_DER); // Leemos el estado del botón derecho // Comprobamos si se pulsa el botón izquierdo. De ser así, el estado es "LOW" if (B_IZQ_EST == LOW) { tone(ZUM, 1000); // Activamos el zumbador con una frecuencia de 1000 Hz delay(500); // Esperamos 500 milisegundos noTone(ZUM); // Detenemos el zumbador delay(100); // Esperamos 100 milisegundos } // Comprobamos si se pulsa el botón central. De ser así, el estado es "LOW" if (B_ENTER_EST == LOW) { tone(ZUM, 1000); // Activamos el zumbador con una frecuencia de 1000 Hz delay(500); // Esperamos 500 milisegundos noTone(ZUM); // Detenemos el zumbador delay(100); // Esperamos 100 milisegundos tone(ZUM, 1000); // Activamos nuevamente el zumbador delay(500); // Esperamos 500 milisegundos noTone(ZUM); // Detenemos el zumbador delay(100); // Esperamos 100 milisegundos } // Comprobamos si se pulsa el botón derecho. De ser así, el estado es "LOW" if (B_DER_EST == LOW) { tone(ZUM, 1000); // Activamos el zumbador con una frecuencia de 1000 Hz delay(500); // Esperamos 500 milisegundos noTone(ZUM); // Detenemos el zumbador delay(100); // Esperamos 100 milisegundos tone(ZUM, 1000); // Activamos nuevamente el zumbador delay(500); // Esperamos 500 milisegundos noTone(ZUM); // Detenemos el zumbador delay(100); // Esperamos 100 milisegundos tone(ZUM, 1000); // Activamos nuevamente el zumbador delay(500); // Esperamos 500 milisegundos noTone(ZUM); // Detenemos el zumbador delay(100); // Esperamos 100 milisegundos } }