La lógica combinacional es la electrónica digital sin memoria. La salida depende únicamente del estado actual de las entradas: no hay pasado, no hay historial, solo importa lo que está ocurriendo ahora mismo.
Hasta ahora hemos visto puertas lógicas sueltas (AND, OR, NOT…). Pero cuando empezamos a combinar muchas de estas puertas para realizar tareas más útiles, entramos en este terreno.
La característica principal de estos circuitos es que no tienen memoria. La salida depende exclusivamente del estado actual de las entradas. Si quitas las entradas, la salida desaparece o cambia instantáneamente.
Hoy vamos a conocer a los dos agentes de tráfico más importantes de la electrónica digital: el multiplexor (que selecciona caminos) y el decodificador (que identifica direcciones).
| Componente | Función | Analogía | Uso principal |
|---|---|---|---|
| Multiplexor (MUX) | Muchos | Selector de entrada de TV | Expandir entradas (leer muchos sensores). |
| Decodificador | Binario | Repartidor de correo | Seleccionar chips (chip select), barrido de displays. |
| Demultiplexor | Uno | Desvío de trenes | Repartir una señal a varios destinos. |
El multiplexor (MUX): el selector
Imagina que tienes una sola entrada analógica en tu microcontrolador, pero quieres leer 8 sensores diferentes. ¿Cómo lo haces?
Necesitas un “interruptor rotatorio” digital. Eso es un multiplexor.
Un MUX es un dispositivo que tiene múltiples entradas de datos y una sola salida. Mediante unos pines de control (selectores), decidimos cuál de las entradas se conecta a la salida.
Funcionamiento
La relación es muy simple: con n pines de control podemos seleccionar entre
- Entradas de datos:
(8 entradas). - Selectores:
(3 pines, porque ). - Salida:
.
Si en los selectores ponemos el binario 000 (0 decimal), la salida 101 (5 decimal), la salida
El rey del MUX: 74HC4051 / CD4051 es el chip más famoso en el mundo de los microcontroladores para expandir entradas.
Es un multiplexor analógico/digital de 8 canales. Con solo 3 pines digitales y 1 pin analógico, ¡podemos leer 8 potenciómetros!
El decodificador (decoder)
El decodificador hace el trabajo inverso al de un codificador. Su función principal es traducir un código binario a una salida activa única.
Imagina que tu procesador quiere hablar con uno de sus 8 chips de memoria. El procesador envía la dirección “5” en binario (101). El decodificador recibe ese código y enciende únicamente la salida número 5, manteniendo las demás apagadas.
En la mayoría de decodificadores comerciales (como la serie 74HC), las salidas son active low (se ponen a 0V cuando se activan y a 5V cuando están en reposo). Esto es porque la mayoría de pines de selección (chip select) funcionan así.
Funcionamiento (one-hot encoding)
- Entradas: Código binario (ej. 3 bits).
- Salidas:
líneas (ej. 8 líneas). - Comportamiento: Solo UNA salida está activa a la vez.
El rey del decoder: 74HC138, un decodificador de 3 a 8 líneas.
- Le metes un número del 0 al 7 en binario por sus pines A, B, C.
- Pone a LOW la salida correspondiente (Y0 a Y7).
Demultiplexor (DEMUX): el distribuidor
A menudo verás el término demultiplexor. En realidad, es el mismo hardware que el decodificador, pero usado de manera diferente.
Mientras el MUX es “muchos a uno”, el DEMUX es “uno a muchos”.
- Tiene una entrada de datos común.
- Tiene varias salidas.
- Tiene selectores.
Según el número que pongamos en los selectores, el dato de la entrada se envía a la salida elegida. Es como un desviador de trenes.
La mayoría de chips decodificadores pueden actuar como demultiplexores si usamos su pin de enable como entrada de datos.
Aplicación práctica: control de una matriz LED
El ejemplo clásico donde MUX y decodificadores trabajan juntos es una pantalla de LEDs (como las de los letreros de autobuses).
Imagina una matriz de 8x8 LEDs (64 LEDs).
- No conectamos 64 cables.
- Conectamos las 8 filas a un decodificador.
- Conectamos las 8 columnas a un controlador (o registros de desplazamiento).
Para encender un píxel, el decodificador activa la fila 1, y nosotros metemos corriente por la columna 1. Luego pasamos a la fila 2 muy rápido. Esto nos permite controlar 64 puntos usando muy pocos pines.