Código (no hace falta escribir, sólo unos clicks) CIRC-07 File > Examples > 2.Digital > Button ejemplo de la genial página arduino.cc, échale un vistazo para otras ideas) /* * Botón * por DojoDave <http://www.0j0.org> * * Enciende y apaga un diodo emisor de luz (LED) conectado al pin digital * 13, cuando se aprieta el botón conectado al pin 7. * http://www.arduino.cc/en/Tutorial/Button */ int ledPin = 13; // pin al que está conectado al LED int inputPin = 2; // pin de entrada (para el botón) int val = 0; // variable para leer el estado del pin void setup() { pinMode(ledPin, OUTPUT); pinMode(inputPin, INPUT); } // declarar el LED como salida // declarar el botón como entrada void loop(){ val = digitalRead(inputPin); if (val == HIGH) { digitalWrite(ledPin, LOW); } else { digitalWrite(ledPin, HIGH); } } // leer el valor de entrada // comprobar si es ALTO // apagar el LED // encender el LED ¿No Funciona? (3 cosas para intentar) La Luz No Se Enciende La Luz No Desvanece ¿Decepcionado? El botón es cuadrado, por lo que es fácil conectarlo incorrectamente. Gíralo 90º y mira si ahora funciona. Es un fallo tonto que cometemos constantemente, cuando cambias del simple on/ off al desvanecimiento recuerda cambiar el LED del pin 13 al 9. No te preocupes, estos circuitos están muy simplificados para que sea fácil usar los componentes, pero a partir de ahí el cielo es el límite. Mejorándolo On button off button: El ejemplo inicial puede ser un poco decepcionante (p.e. No necesito un Arduino para hacer esto), hagámoslo un poco más complicado . Un botón encenderá el LED y otro lo apagará. Cambia el código a: int ledPin = 13; // pin al que está conectado el LED int inputPin1 = 3; // botón 1 int inputPin2 = 2; // botón 2 void setup() { pinMode(ledPin, OUTPUT); // declarar LED como salida pinMode(inputPin1, INPUT); // declarar botón 1 como entrada pinMode(inputPin2, INPUT); // declarar botón 2 como entrada } void loop(){ if (digitalRead(inputPin1) == LOW) { digitalWrite(ledPin, LOW); // apagar LED } else if (digitalRead(inputPin2) == LOW) { digitalWrite(ledPin, HIGH); // encender LED } } Sube el programa a tu placa y empieza a encender y apagar el LED. Fading up and down: Usemos los botones para controlar una señal analógica. Para esto necesitarás cambiar el cable al que está conectado el LED del pin 13 al 9, también cámbialo en el código. int ledPin = 13; ----> int ledPin = 9; Luego cambia el código del loop(). Más, Más, Más: Más detalles, dónde comprar más componentes, dónde hacer más preguntas: http://ardx.org/CIRC07 21