Nivel: Básico – Construye un indicador de alarma activo en alto usando puertas NAND 74HC00 para comprender la lógica universal y la inversión de señales.
Objetivo y caso de uso
Construirás un circuito lógico digital donde tanto un sensor de alarma como un interruptor de habilitación (enable) deben activarse para encender un LED de advertencia, implementado en su totalidad con un único chip de puertas NAND 74HC00.
Este circuito es muy útil para demostrar conceptos digitales fundamentales:
* Demuestra el concepto de «puertas universales», mostrando cómo una puerta NAND puede cablearse como una puerta NOT (inversor) para lograr una función lógica AND.
* Ilustra cómo funciona una señal de habilitación («enable»), que es un método estándar en la industria para autorizar o bloquear de forma segura las operaciones de un sistema.
* Proporciona práctica directa en el manejo de niveles lógicos CMOS y en la configuración de redes pull-down para un funcionamiento fiable de los interruptores.
Resultado esperado:
* La señal intermedia (la salida de la primera puerta NAND) emitirá un nivel lógico BAJO (0 V) solo cuando ambas entradas estén en ALTO (5 V).
* La salida final será un nivel lógico ALTO (5 V) y encenderá el LED estrictamente cuando ambas entradas, Alarma (Alarm) y Habilitación (Enable), estén en ALTO.
* Verificarás en la práctica la tabla de verdad combinada de una puerta NAND y una puerta NOT.
Público objetivo: Principiantes en electrónica digital que están aprendiendo a manipular puertas lógicas.
Materiales
- V1: Fuente de alimentación de 5 V CC
- SW1: Interruptor SPST, función: Disparador de alarma
- SW2: Interruptor SPST, función: Señal de habilitación
- R1: Resistencia de 10 kΩ, función: pull-down para el nodo ALARM
- R2: Resistencia de 10 kΩ, función: pull-down para el nodo ENABLE
- R3: Resistencia de 330 Ω, función: limitador de corriente para el LED
- U1: Cuádruple puerta NAND de 2 entradas 74HC00, función: evaluación lógica e inversión
- D1: LED rojo, función: Indicador de alarma
Pin-out del CI utilizado
74HC00 (Cuádruple puerta NAND de 2 entradas)
| Pin | Nombre | Función lógica | Conexión en este caso |
|---|---|---|---|
| 1 | 1 A | Entrada 1 de NAND A | Nodo ALARM (desde SW1) |
| 2 | 1B | Entrada 2 de NAND A | Nodo ENABLE (desde SW2) |
| 3 | 1Y | Salida de NAND A | Nodo INTERMEDIATE |
| 4 | 2 A | Entrada 1 de NAND B | Nodo INTERMEDIATE |
| 5 | 2B | Entrada 2 de NAND B | Nodo INTERMEDIATE |
| 6 | 2Y | Salida de NAND B | Nodo VOUT |
| 7 | GND | Tierra (Ground) | Nodo 0 |
| 14 | VCC | Voltaje de alimentación | Nodo VCC |
(Nota: El 74HC00 contiene cuatro puertas NAND independientes. En este circuito, utilizamos las puertas A y B. Las entradas no utilizadas de las puertas C y D deben conectarse a tierra).
Guía de conexionado
- V1: se conecta entre VCC y 0.
- SW1: se conecta entre VCC y ALARM.
- R1: se conecta entre ALARM y 0.
- SW2: se conecta entre VCC y ENABLE.
- R2: se conecta entre ENABLE y 0.
- U1 Pin 14 (VCC): se conecta a VCC.
- U1 Pin 7 (GND): se conecta a 0.
- U1 Pin 1 (1 A): se conecta a ALARM.
- U1 Pin 2 (1B): se conecta a ENABLE.
- U1 Pin 3 (1Y): se conecta a INTERMEDIATE.
- U1 Pin 4 (2 A): se conecta a INTERMEDIATE.
- U1 Pin 5 (2B): se conecta a INTERMEDIATE.
- U1 Pin 6 (2Y): se conecta a VOUT.
- D1: El ánodo se conecta a VOUT, el cátodo se conecta a NODE_LED.
- R3: se conecta entre NODE_LED y 0.
- Conexión de seguridad: Conecta los pines 9, 10, 12 y 13 de U1 a 0 (GND) para evitar que las puertas no utilizadas queden flotantes.
Diagrama de bloques conceptual

Esquemático
VCC --> [ SW1 ] --(ALARM)--> [ U1: Pin 1 (1 A) ]
| |
[ R1 ] |
| [ U1: Gate 1 (NAND) ] --(INTERMEDIATE)--> [ U1: Pins 4,5 (2 A,2B) ]
GND | |
| [ U1: Gate 2 (NAND) ] --(VOUT)--> [ D1: LED ] --(NODE_LED)--> [ R3 ] --> GND
VCC --> [ SW2 ] --(ENABLE)-> [ U1: Pin 2 (1B) ]
|
[ R2 ]
|
GND
* Power & Safety Connections:
VCC --> [ U1: Pin 14 (VCC) ]
GND <-- [ U1: Pin 7 (GND) ]
GND <-- [ U1: Pins 9, 10, 12, 13 (Unused) ]
Tabla de verdad
| Alarma (SW1) | Habilitación (SW2) | Nodo intermedio (1Y) | Nodo de salida (2Y) | Estado del LED |
|---|---|---|---|---|
| 0 | 0 | 1 | 0 | APAGADO |
| 0 | 1 | 1 | 0 | APAGADO |
| 1 | 0 | 1 | 0 | APAGADO |
| 1 | 1 | 0 | 1 | ENCENDIDO |
Mediciones y pruebas
- Usa un multímetro para verificar que la fuente de alimentación sea exactamente de 5 V entre los nodos VCC y 0.
- Mide los nodos ALARM y ENABLE con respecto a 0. Verifica que marquen exactamente 0 V cuando sus respectivos interruptores estén abiertos, y 5 V cuando estén cerrados.
- Mide el nodo INTERMEDIATE. Debería marcar ~5 V cuando uno o ambos interruptores estén abiertos, y caer a ~0 V estrictamente cuando ambos interruptores estén cerrados.
- Mide el nodo VOUT. Siempre debería mostrar exactamente el nivel lógico opuesto al del nodo INTERMEDIATE.
- Confirma visualmente que el LED se enciende si y solo si ambos interruptores se cambian a la posición cerrada (activa).
Netlist SPICE y simulación
Netlist SPICE de referencia (ngspice) — extractoNetlist SPICE completo (ngspice)
* Alarm Lockout Logic with NAND
* Main DC Supply
V1 VCC 0 DC 5
* Control signals to simulate user pressing the switches (Testing Truth Table)
V_ctrl1 ctrl1 0 PULSE(0 5 0 1u 1u 50u 100u)
V_ctrl2 ctrl2 0 PULSE(0 5 0 1u 1u 100u 200u)
* SW1: SPST switch (Alarm trigger)
S1 VCC ALARM ctrl1 0 SW_MODEL
* SW2: SPST switch (Enable signal)
S2 VCC ENABLE ctrl2 0 SW_MODEL
.model SW_MODEL SW(VT=2.5 VH=0.5 RON=0.1 ROFF=100MEG)
* Pull-down resistors for logic inputs
R1 ALARM 0 10k
R2 ENABLE 0 10k
* ... (truncated in public view) ...
Copia este contenido en un archivo .cir y ejecútalo con ngspice.
* Alarm Lockout Logic with NAND
* Main DC Supply
V1 VCC 0 DC 5
* Control signals to simulate user pressing the switches (Testing Truth Table)
V_ctrl1 ctrl1 0 PULSE(0 5 0 1u 1u 50u 100u)
V_ctrl2 ctrl2 0 PULSE(0 5 0 1u 1u 100u 200u)
* SW1: SPST switch (Alarm trigger)
S1 VCC ALARM ctrl1 0 SW_MODEL
* SW2: SPST switch (Enable signal)
S2 VCC ENABLE ctrl2 0 SW_MODEL
.model SW_MODEL SW(VT=2.5 VH=0.5 RON=0.1 ROFF=100MEG)
* Pull-down resistors for logic inputs
R1 ALARM 0 10k
R2 ENABLE 0 10k
* U1: 74HC00 Quad 2-Input NAND Gate
* Pinout: 1:1A, 2:1B, 3:1Y, 4:2A, 5:2B, 6:2Y, 7:GND, 8:3Y, 9:3A, 10:3B, 11:4Y, 12:4A, 13:4B, 14:VCC
XU1 ALARM ENABLE INTERMEDIATE INTERMEDIATE INTERMEDIATE VOUT 0 NC8 0 0 NC11 0 0 VCC HC00_DIP14
* D1: Red LED (Alarm indicator)
D1 VOUT NODE_LED DLED
.model DLED D(IS=1e-20 N=2.2 RS=15)
* R3: LED current limiting resistor
R3 NODE_LED 0 330
* Subcircuit for 74HC00 (Quad 2-Input NAND Gate)
.subckt HC00_DIP14 1 2 3 4 5 6 7 8 9 10 11 12 13 14
* Gate 1
B1 3_int 7 V=V(14)*(1-(1/(1+exp(-50*(V(1)-2.5))))*(1/(1+exp(-50*(V(2)-2.5)))))
R1 3_int 3 50
* Gate 2
B2 6_int 7 V=V(14)*(1-(1/(1+exp(-50*(V(4)-2.5))))*(1/(1+exp(-50*(V(5)-2.5)))))
R2 6_int 6 50
* Gate 3
B3 8_int 7 V=V(14)*(1-(1/(1+exp(-50*(V(9)-2.5))))*(1/(1+exp(-50*(V(10)-2.5)))))
R3 8_int 8 50
* Gate 4
B4 11_int 7 V=V(14)*(1-(1/(1+exp(-50*(V(12)-2.5))))*(1/(1+exp(-50*(V(13)-2.5)))))
R4 11_int 11 50
.ends
* Analysis directives
.tran 1u 500u
.print tran V(ALARM) V(ENABLE) V(VOUT) V(NODE_LED)
.op
.end
Resultados de Simulación (Transitorio)
Show raw data table (691 rows)
Index time v(alarm) v(enable) v(vout) v(node_led) 0 0.000000e+00 4.999500e-04 4.999500e-04 1.047185e-47 -6.91142e-47 1 1.000000e-08 4.999500e-04 4.999500e-04 7.268458e-64 -4.79767e-63 2 2.000000e-08 4.999500e-04 4.999500e-04 -7.26994e-64 4.797672e-63 3 4.000000e-08 4.999500e-04 4.999500e-04 -7.41841e-68 -2.28156e-77 4 8.000000e-08 4.999500e-04 4.999500e-04 -7.41841e-68 -2.51468e-77 5 1.600000e-07 4.999500e-04 4.999500e-04 -7.41841e-68 -2.44808e-77 6 3.200000e-07 4.999500e-04 4.999500e-04 -7.41841e-68 -2.44808e-77 7 3.750000e-07 4.999500e-04 4.999500e-04 -7.41841e-68 -2.44808e-77 8 4.712500e-07 4.999500e-04 4.999500e-04 -7.41841e-68 -2.44808e-77 9 4.978906e-07 4.999500e-04 4.999500e-04 -7.41841e-68 -2.44808e-77 10 5.445117e-07 4.999500e-04 4.999500e-04 -7.41841e-68 -2.44808e-77 11 5.574158e-07 4.999500e-04 4.999500e-04 -7.41841e-68 -2.44808e-77 12 5.799979e-07 4.999500e-04 4.999500e-04 -7.41841e-68 -2.44808e-77 13 6.049995e-07 4.999950e+00 4.999950e+00 4.662865e+00 2.225088e+00 14 6.550027e-07 4.999950e+00 4.999950e+00 4.662939e+00 2.224602e+00 15 7.550091e-07 4.999950e+00 4.999950e+00 4.662792e+00 2.225571e+00 16 9.550219e-07 4.999950e+00 4.999950e+00 4.662792e+00 2.225574e+00 17 1.000000e-06 4.999950e+00 4.999950e+00 4.662786e+00 2.225611e+00 18 1.040003e-06 4.999950e+00 4.999950e+00 4.662786e+00 2.225611e+00 19 1.120008e-06 4.999950e+00 4.999950e+00 4.662786e+00 2.225611e+00 20 1.280018e-06 4.999950e+00 4.999950e+00 4.662786e+00 2.225611e+00 21 1.600038e-06 4.999950e+00 4.999950e+00 4.662786e+00 2.225611e+00 22 2.240079e-06 4.999950e+00 4.999950e+00 4.662786e+00 2.225611e+00 23 3.240079e-06 4.999950e+00 4.999950e+00 4.662786e+00 2.225611e+00 ... (667 more rows) ...
Netlist SPICE de referencia (ngspice)
* Alarm Lockout Logic with NAND
* Main DC Supply
V1 VCC 0 DC 5
* Control signals to simulate user pressing the switches (Testing Truth Table)
V_ctrl1 ctrl1 0 PULSE(0 5 0 1u 1u 50u 100u)
V_ctrl2 ctrl2 0 PULSE(0 5 0 1u 1u 100u 200u)
* SW1: SPST switch (Alarm trigger)
S1 VCC ALARM ctrl1 0 SW_MODEL
* SW2: SPST switch (Enable signal)
S2 VCC ENABLE ctrl2 0 SW_MODEL
.model SW_MODEL SW(VT=2.5 VH=0.5 RON=0.1 ROFF=100MEG)
* Pull-down resistors for logic inputs
R1 ALARM 0 10k
R2 ENABLE 0 10k
* U1: 74HC00 Quad 2-Input NAND Gate
* Pinout: 1:1A, 2:1B, 3:1Y, 4:2A, 5:2B, 6:2Y, 7:GND, 8:3Y, 9:3A, 10:3B, 11:4Y, 12:4A, 13:4B, 14:VCC
XU1 ALARM ENABLE INTERMEDIATE INTERMEDIATE INTERMEDIATE VOUT 0 NC8 0 0 NC11 0 0 VCC HC00_DIP14
* D1: Red LED (Alarm indicator)
D1 VOUT NODE_LED DLED
.model DLED D(IS=1e-20 N=2.2 RS=15)
* R3: LED current limiting resistor
R3 NODE_LED 0 330
* Subcircuit for 74HC00 (Quad 2-Input NAND Gate)
.subckt HC00_DIP14 1 2 3 4 5 6 7 8 9 10 11 12 13 14
* Gate 1
B1 3_int 7 V=V(14)*(1-(1/(1+exp(-50*(V(1)-2.5))))*(1/(1+exp(-50*(V(2)-2.5)))))
R1 3_int 3 50
* Gate 2
B2 6_int 7 V=V(14)*(1-(1/(1+exp(-50*(V(4)-2.5))))*(1/(1+exp(-50*(V(5)-2.5)))))
R2 6_int 6 50
* Gate 3
B3 8_int 7 V=V(14)*(1-(1/(1+exp(-50*(V(9)-2.5))))*(1/(1+exp(-50*(V(10)-2.5)))))
R3 8_int 8 50
* Gate 4
B4 11_int 7 V=V(14)*(1-(1/(1+exp(-50*(V(12)-2.5))))*(1/(1+exp(-50*(V(13)-2.5)))))
R4 11_int 11 50
.ends
* Analysis directives
.tran 1u 500u
.print tran V(ALARM) V(ENABLE) V(VOUT) V(NODE_LED)
.op
.end
Resultados de Simulación (Transitorio)
Errores comunes y cómo evitarlos
- Dejar entradas no utilizadas flotantes: Los chips CMOS como el 74HC00 son muy sensibles a la estática y al ruido ambiental. Las entradas de puertas no utilizadas (pines 9, 10, 12, 13) deben conectarse explícitamente a tierra (0) o a VCC.
- Omitir las resistencias pull-down: Sin R1 y R2, los pines de entrada quedarán flotantes cuando los interruptores estén abiertos, lo que provocará un comportamiento impredecible y parpadeos en el LED. Asegúrate siempre de que las resistencias pull-down de 10 kΩ estén firmemente conectadas a tierra.
- Conectar el LED sin una resistencia en serie: Conectar D1 directamente entre VOUT y 0 consumirá una corriente excesiva, lo que podría destruir el LED y quemar la etapa de salida del chip 74HC00. R3 es obligatoria.
Solución de problemas
- Síntoma: El LED nunca se apaga, sin importar las posiciones de los interruptores.
- Causa: Una de las resistencias pull-down de entrada está suelta, lo que hace que el chip lea un ALTO falso, o el nodo intermedio no está cableado correctamente a ambas entradas de la segunda puerta.
- Solución: Verifica las conexiones de R1 y R2 a tierra. Asegúrate de que el Pin 3 de U1 se dirija con precisión tanto al Pin 4 como al Pin 5.
- Síntoma: El brillo del LED parpadea cuando se mueve una mano cerca del circuito.
- Causa: Una entrada flotante está actuando como antena y captando ruido ambiental.
- Solución: Comprueba que todas las entradas no utilizadas en el CI estén conectadas a tierra y asegúrate de que R1 y R2 estén asentadas firmemente en la protoboard.
- Síntoma: El CI se calienta al tacto.
- Causa: La fuente de alimentación está conectada al revés, o el nodo de salida está cortocircuitado directamente a tierra o a VCC.
- Solución: Desconecta la alimentación inmediatamente. Verifica que el Pin 14 de U1 vaya estrictamente a +5 V y el Pin 7 vaya estrictamente a tierra.
Posibles mejoras y extensiones
- Interruptor de anulación maestra (Master Override): Introduce un tercer interruptor y utiliza una de las puertas NAND libres (por ejemplo, la Puerta C) para crear una «Anulación maestra» que fuerce el apagado del LED independientemente de las señales de Alarma y Habilitación.
- Añadir un circuito de retardo: Incorpora una red RC (una resistencia y un condensador) entre uno de los interruptores y su pin de entrada. Esto requiere que el interruptor se mantenga cerrado durante una duración específica antes de que la puerta lógica registre una señal en ALTO, evitando falsas alarmas.
Más Casos Prácticos en Prometeo.blog
Encuentra este producto y/o libros sobre este tema en Amazon
Como afiliado de Amazon, gano con las compras que cumplan los requisitos. Si compras a través de este enlace, ayudas a mantener este proyecto.











