En esta lección vas a aprender a usar pulsadores con entradas digitales para prender y apagar un LED. Vas a ver cómo configurar los pines de tu placa para detectar pulsaciones y ejecutar acciones simples de control.
Vista general
Al apretar un botón vas a prender el LED y al apretar el otro lo vas a apagar. Es un ejercicio fundamental para entender cómo interactuar con el mundo físico usando entradas digitales y lógica de programación básica.
Componentes requeridos
(1) x Elegoo Mega 2560 R3
(1) x Protoboard de 830 puntos
(1) x LED rojo de 5mm
(1) x Resistencia de 220 ohm
(2) x Pulsadores (switches)
(7) x Cables M-M (puentes macho a macho)
Introducción a los componentes
Pulsadores: Son componentes muy simples. Cuando apretás el botón, conectás dos contactos para que la electricidad fluya entre ellos. Estos pequeños interruptores táctiles tienen cuatro conexiones, lo que puede confundir un poco al principio. En realidad, solo hay dos conexiones eléctricas: adentro de la pieza, los pines B y C están conectados entre sí, igual que el A y el D.
Esquema de conexión y diagrama de cableado
Seguí el esquema para conectar los componentes en el protoboard, asegurándote de que los pulsadores estén orientados correctamente y las resistencias protejan el circuito.
Código
Podés hacer clic en el enlace azul para descargar el programa a tu dispositivo y después abrirlo con un doble clic. Acordate: antes de abrir el archivo, asegurate de tener instalado el Arduino IDE y los paquetes de soporte para la placa. Si tenés dudas, fijate en el capítulo "Parte 1" de la guía para ver el paso a paso.
📥 DESCARGAR digital_inputs.ino
Cargá el código en tu placa MEGA 2560. El botón de la izquierda va a prender el LED, mientras que el de la derecha lo va a apagar. La primera parte del código define las variables para los pines: usamos el pin 5 para el LED, y los pines 9 y 8 para los botones A y B.
Configuración (setup)
En la función setup definimos el ledPin como salida (OUTPUT). Para los botones, usamos el modo INPUT_PULLUP. Esto significa que el pin se usa como entrada, pero si no hay nada conectado, se mantiene en un estado ALTO (HIGH) gracias a una resistencia interna. Cuando apretás el botón, el pin se conecta a tierra (GND) y pasa a estado BAJO (LOW).
Bucle principal (loop)
En el loop usamos dos sentencias "if", una para cada botón. Cada una hace un digitalRead() del pin correspondiente. Como la lógica funciona "al revés" por el pull-up, si el pin está en LOW significa que el botón está apretado, entonces el programa ejecuta el digitalWrite() para cambiar el estado del LED.
Referencia de funciones
if{}: Evalúa una condición y ejecuta el bloque de código si es verdadera.
digitalRead(): Lee el valor de un pin digital específico (HIGH o LOW).
Operadores de comparación (==): Comparan la variable de la izquierda con el valor de la derecha. Devuelven verdadero si son iguales. Se recomienda comparar siempre datos del mismo tipo para evitar resultados inesperados.
Fuente: Adaptado al español desde el wiki oficial Elegoo (licencia CC BY-SA). Revisión técnica por equipo Breva.