Clase#1 Pulsador como interruptor con resistencia interna
🧠 SABER CONOCER
1. ¿Qué es un pulsador?
Un pulsador (push button) es un componente que funciona como un interruptor momentáneo:
- Si lo presionas → cierra el circuito
- Si lo sueltas → abre el circuito
👉 El Arduino puede “leer” si está presionado (LOW) o no presionado (HIGH).
2. ¿Qué es una resistencia pull-up?
Una resistencia pull-up mantiene el pin en un estado estable (HIGH) cuando el pulsador está suelto, evitando lecturas falsas.
Sin pull-up:
- El pin queda “flotando”
- Puede leer HIGH o LOW aleatoriamente
Con pull-up:
- Pin sin presionar = HIGH estable
- Presionado = conexión a GND → LOW
3. ¿Qué significa INPUT_PULLUP en Arduino?
Arduino tiene resistencias internas de aproximadamente 20k–50k ohm.
Cuando configuras un pin así:
pinMode(2, INPUT_PULLUP);
Entonces:
- El pin se mantiene HIGH automáticamente.
- El pulsador debe conectarse a GND.
👉 Esto elimina la necesidad de resistencias externas.
4. ¿Cómo funciona la lógica invertida?
Con INPUT_PULLUP la lógica se invierte:
| Estado del pulsador | Lectura electrónica |
|---|---|
| Suelto | HIGH |
| Presionado | LOW |
Esto es completamente normal y es la forma profesional de trabajar entradas digitales.
5. Conexión correcta del pulsador usando INPUT_PULLUP
Conexión mínima:
- Un lado del pulsador → Pin 2 del Arduino
- El otro lado → GND
¡Nada más! No usas resistencias externas.
Funcionamiento:
- Pin 2 sin presionar → HIGH (por pull-up interno)
- Pin 2 presionado → LOW (porque haces puente a GND)
6. ¿Por qué esta técnica es mejor que usar resistencias externas?
Ventajas:
- Ahorra componentes
- Evita errores de conexiones
- Garantiza estabilidad en la lectura
- Es la forma recomendada por Arduino y por la electrónica profesional
- Menos ruido eléctrico
7. ¿Qué es un contador de modos?
Cuando usamos un pulsador no solo para encender/apagar, sino para cambiar entre varios estados, necesitamos una variable que lleve registro del “modo actual”.
Ejemplo de un contador cíclico:
int contador;
void setup()
{
pinMode(2,INPUT_PULLUP);
}
void loop()
{
if(digitalRead(2)==0){
contador=contador+1;
if(contador>3){
contador=0;
}
}
}
Este sistema permite:
- Modo 0
- Modo 1
- Modo 2
- Modo 3
- Y regresa a 0
👉 Es una base poderosa para menús, secuencias de LED, cambios de velocidad, patrones, funciones del robot, etc.
8. ¿Cómo funciona el contador paso a paso?
- Si el pulsador está presionado (lectura = 0)…
- Se suma 1 a la variable
contador - Si pasa del número máximo… vuelve a 0
Es una técnica fundamental para proyectos con interfaz mínima, donde un solo botón controla varios comportamientos.
🔧 SABER HACER
Actividad práctica: Cambiar entre 4 modos con un solo pulsador
Objetivo:
Construir un sistema de multimodos, donde cada presión del pulsador cambie el valor de la variable contador.
Indicaciones del montaje:
- LED en pin 8 (con resistencia a GND)
- Pulsador:
- Un lado → pin 2
- Otro lado → GND
- Sin resistencias externas (usamos INPUT_PULLUP)
Explicación técnica
- Cada vez que presionas el pulsador, avanza al siguiente modo.
- Si llegas al modo 3 y presionas otra vez, regresa al modo 0.
- El LED cambia de comportamiento según el número de modo:
- 0 → apagado
- 1 → encendido
- 2 → parpadeo lento
- 3 → parpadeo rápido
Este sistema es la base para crear interfaces avanzadas con un solo botón.
💬 SABER SER
- Mantén orden y precisión en tus conexiones.
- Sé paciente para entender la lógica invertida.
- Valora la importancia de escribir código limpio y bien organizado.
- Reconoce tus errores como parte del aprendizaje.
🤝 SABER CONVIVIR
- Comparte tus descubrimientos sobre los modos con tus compañeros.
- Ayuda a quienes confundan HIGH/LOW por la lógica invertida.
- Respeta los materiales y las conexiones del laboratorio.
- Colabora para comparar diferentes ideas de modos.
Comentarios
Publicar un comentario