3.9. Interruptores y resistencias de polarización

La salida GPIO controla hardware externo. La entrada GPIO es lo contrario: la cámara lee la tensión en un pin y la informa como 0 o 1. El dispositivo de entrada más sencillo es un interruptor – y hacer que sea legible de forma fiable requiere una pieza de electrónica además del propio interruptor.

3.9.1. Interruptores y entradas flotantes

Un interruptor es un contacto mecánico: dos piezas de metal que se tocan cuando el interruptor está cerrado y se separan cuando está abierto. Eléctricamente, eso es todo el dispositivo. No hay ninguna fuente de tensión en su interior; un interruptor por sí solo solo proporciona «conectado» o «desconectado».

Conectar un interruptor directamente entre un pin GPIO y tierra significa que el pin queda:

  • A 0 V cuando el interruptor está cerrado (ahora conectado a tierra).

  • Flotante cuando el interruptor está abierto (conectado a nada).

Un pin flotante no tiene una tensión definida. La entrada lee lo que haya cerca – diafonía de señales próximas, ruido de la alimentación, incluso la electricidad estática de un dedo cercano al cable. value() devuelve mezclas impredecibles de 0 y 1 muchas veces por segundo.

3.9.2. Resistencias pull-up y pull-down

La solución es una resistencia de polarización: una resistencia de valor alto (lo típico es de 10 kΩ a 100 kΩ) que conecta la entrada a una línea conocida cuando el interruptor está abierto.

Dos diagramas de circuito uno al lado del otro. Izquierda: un circuito pull-up con una resistencia desde el pin de entrada hacia la alimentación y un interruptor desde el pin de entrada hacia GND. Derecha: un circuito pull-down con una resistencia desde el pin de entrada hacia GND y un interruptor desde el pin de entrada hacia la alimentación.

Configuraciones pull-up (izquierda) y pull-down (derecha) para una entrada de interruptor.

  • Pull-up. La resistencia conecta la entrada a la línea de alimentación. Cuando el interruptor está abierto, solo una pequeña corriente circula por la resistencia y el pin lee alto. Cuando el interruptor está cerrado, cortocircuita el pin a tierra; el pin lee bajo. La resistencia limita la corriente que, de lo contrario, fluiría de la alimentación a tierra a través del interruptor cerrado.

  • Pull-down. La imagen especular: la resistencia conecta la entrada a tierra, y el interruptor se conecta a la alimentación. Abierto lee bajo, cerrado lee alto.

El pull-up es la convención más común – botones «activos en bajo». El propio MCU proporciona resistencias pull-up y pull-down integradas que pueden habilitarse con Pin.PULL_UP o Pin.PULL_DOWN, eliminando por completo la resistencia externa.