Nivel: Básico. Construya un circuito donde una luz piloto pueda ser activada desde dos interruptores independientes utilizando lógica digital.
Objetivo y caso de uso
En este proyecto, construirá un circuito de control digital utilizando una compuerta OR 74HC32 para alimentar un indicador LED cuando se accione cualquiera de los dos pulsadores. Esto demuestra la función lógica fundamental donde una salida es verdadera si al menos una entrada es verdadera.
Por qué es útil:
* Domótica: Simula un sistema de luz de pasillo donde múltiples interruptores pueden encender una luz.
* Sistemas de seguridad: Representa una zona de disparo de alarma donde cualquier sensor individual (puerta o ventana) activa la sirena.
* Automotriz: Funciona como las luces interiores del techo que se encienden si la puerta del conductor O la del pasajero se abre.
* Seguridad industrial: Actúa como un sistema de parada de emergencia donde presionar cualquier botón en una línea de producción detiene la máquina.
Resultado esperado:
* Estado del LED: El LED permanece APAGADO (Lógica 0) solo cuando ambos botones están liberados.
* Pulsación única: Presionar el Botón A ENCIENDE el LED (Lógica 1).
* Pulsación única: Presionar el Botón B ENCIENDE el LED (Lógica 1).
* Pulsación simultánea: Presionar ambos botones mantiene el LED ENCENDIDO (Lógica 1).
* Público objetivo: Estudiantes y aficionados que aprenden compuertas lógicas digitales básicas.
Materiales
- V1: Fuente de alimentación de 5 V CC
- U1: 74HC32 (CI de cuádruple compuerta OR de 2 entradas)
- S1: Pulsador momentáneo (NO – Normalmente Abierto), función: Entrada A
- S2: Pulsador momentáneo (NO – Normalmente Abierto), función: Entrada B
- R1: Resistencia de 10 kΩ, función: Pull-down para Entrada A
- R2: Resistencia de 10 kΩ, función: Pull-down para Entrada B
- R3: Resistencia de 330 Ω, función: Limitación de corriente del LED
- D1: LED rojo, función: Indicador de salida lógica
Pin-out del CI utilizado
Chip: 74HC32 (Cuádruple compuerta OR de 2 entradas)
| Pin | Nombre | Función lógica | Conexión en este caso |
|---|---|---|---|
| 1 | 1A | Entrada A | Conectado a S1 y R1 |
| 2 | 1B | Entrada B | Conectado a S2 y R2 |
| 3 | 1Y | Salida | Conectado a R3 (driver del LED) |
| 7 | GND | Tierra (Masa) | Conectado a 0V |
| 14 | VCC | Fuente de alimentación | Conectado a +5V |
Guía de conexionado
Esta guía define las conexiones utilizando nombres de nodo específicos para asegurar un ensamblaje limpio del circuito.
-
Nodos de alimentación:
VCC: Conecte el terminal positivo de V1 al Pin 14 de U1.0(GND): Conecte el terminal negativo de V1 al Pin 7 de U1.
-
Lógica de entrada A (
NODE_A):- Conecte S1 entre
VCCyNODE_A. - Conecte R1 entre
NODE_Ay0(GND). - Conecte el Pin 1 de U1 a
NODE_A.
- Conecte S1 entre
-
Lógica de entrada B (
NODE_B):- Conecte S2 entre
VCCyNODE_B. - Conecte R2 entre
NODE_By0(GND). - Conecte el Pin 2 de U1 a
NODE_B.
- Conecte S2 entre
-
Lógica de salida (
NODE_Y):- Conecte el Pin 3 de U1 a un extremo de R3.
- Conecte el otro extremo de R3 al ánodo (patilla larga) de D1.
- Conecte el cátodo (patilla corta) de D1 a
0(GND).
Diagrama de bloques conceptual

Esquemático
[ INPUTS ] [ LOGIC ] [ OUTPUT ]
[ VCC ]--> [ S1 (NO) ] --+--(NODE_A)----------->+-------------+
| (Pin 1) | |
[ R1 (10k) ] | U1: 74HC32 |
v | (OR Gate) |--(NODE_Y)--> [ R3 (330) ] --> [ D1 (LED) ] --> [ GND ]
[ GND ] | (Pin 3) |
| |
[ VCC ]--> [ S2 (NO) ] --+--(NODE_B)----------->+-------------+
| (Pin 2)
[ R2 (10k) ]
v
[ GND ]
Tabla de verdad
El 74HC32 sigue la tabla lógica OR estándar:
| Entrada A (S1) | Entrada B (S2) | Salida Y (LED) | Descripción del estado |
|---|---|---|---|
| 0 (Liberado) | 0 (Liberado) | 0 (OFF) | Sin señal activa |
| 0 (Liberado) | 1 (Pulsado) | 1 (ON) | Activado por B |
| 1 (Pulsado) | 0 (Liberado) | 1 (ON) | Activado por A |
| 1 (Pulsado) | 1 (Pulsado) | 1 (ON) | Activado por ambos |
Mediciones y pruebas
- Comprobación en reposo: Antes de presionar nada, mida el voltaje en
NODE_AyNODE_Bcon respecto a GND. Debería ser cercano a 0V (Lógica 0) debido a las resistencias pull-down. El LED debería estar apagado. - Prueba de entrada A: Presione S1. Mida el voltaje en
NODE_A; debería subir a 5V. Verifique que D1 se enciende. - Prueba de entrada B: Presione S2. Mida el voltaje en
NODE_B; debería subir a 5V. Verifique que D1 se enciende. - Prueba combinada: Presione ambos botones simultáneamente. El LED debería permanecer encendido sin parpadear.
Netlist SPICE y simulación
Netlist SPICE de referencia (ngspice) — extractoNetlist SPICE completo (ngspice)
* Practical case: Lighting control from two points
* --- Power Supply ---
* V1: 5V DC Supply connected to VCC and GND (0)
V1 VCC 0 DC 5
* --- Input A ---
* S1: Momentary Push Button (NO)
* Modeled as a voltage-controlled switch (S1) driven by a pulse source (V_ACT_A)
* to simulate the physical user action of pressing the button.
V_ACT_A ACT_A 0 PULSE(0 5 50u 1u 1u 100u 200u)
S1 VCC NODE_A ACT_A 0 SW_BTN
* R1: 10k Pull-down resistor for Input A
R1 NODE_A 0 10k
* --- Input B ---
* S2: Momentary Push Button (NO)
* Modeled as a voltage-controlled switch (S2) driven by a pulse source (V_ACT_B)
V_ACT_B ACT_B 0 PULSE(0 5 50u 1u 1u 200u 400u)
S2 VCC NODE_B ACT_B 0 SW_BTN
* R2: 10k Pull-down resistor for Input B
R2 NODE_B 0 10k
* --- Logic IC U1: 74HC32 (Quad 2-Input OR Gate) ---
* Wiring Guide: Pin 1 to NODE_A, Pin 2 to NODE_B, Pin 3 to NODE_Y
* Pin 7 to GND (0), Pin 14 to VCC
XU1 NODE_A NODE_B NODE_Y 0 VCC 74HC32
* ... (truncated in public view) ...
Copia este contenido en un archivo .cir y ejecútalo con ngspice.
* Practical case: Lighting control from two points
* --- Power Supply ---
* V1: 5V DC Supply connected to VCC and GND (0)
V1 VCC 0 DC 5
* --- Input A ---
* S1: Momentary Push Button (NO)
* Modeled as a voltage-controlled switch (S1) driven by a pulse source (V_ACT_A)
* to simulate the physical user action of pressing the button.
V_ACT_A ACT_A 0 PULSE(0 5 50u 1u 1u 100u 200u)
S1 VCC NODE_A ACT_A 0 SW_BTN
* R1: 10k Pull-down resistor for Input A
R1 NODE_A 0 10k
* --- Input B ---
* S2: Momentary Push Button (NO)
* Modeled as a voltage-controlled switch (S2) driven by a pulse source (V_ACT_B)
V_ACT_B ACT_B 0 PULSE(0 5 50u 1u 1u 200u 400u)
S2 VCC NODE_B ACT_B 0 SW_BTN
* R2: 10k Pull-down resistor for Input B
R2 NODE_B 0 10k
* --- Logic IC U1: 74HC32 (Quad 2-Input OR Gate) ---
* Wiring Guide: Pin 1 to NODE_A, Pin 2 to NODE_B, Pin 3 to NODE_Y
* Pin 7 to GND (0), Pin 14 to VCC
XU1 NODE_A NODE_B NODE_Y 0 VCC 74HC32
* --- Output Stage ---
* R3: 330 Ohm LED current limiting resistor
R3 NODE_Y NODE_LED 330
* D1: Red LED Logic output indicator
D1 NODE_LED 0 LED_RED
* --- Models and Subcircuits ---
* Switch Model (Normally Open)
* Vt=2.5V: Threshold voltage for switching
* Ron=0.1: Low resistance when closed
* Roff=10Meg: High resistance when open
.model SW_BTN SW(Vt=2.5 Ron=0.1 Roff=10Meg)
* LED Model (Generic Red LED)
.model LED_RED D(IS=1e-22 N=1.5 RS=5 BV=5 IBV=10u CJO=10p)
* 74HC32 Behavioral Subcircuit
* Implements robust continuous logic to avoid convergence issues
.subckt 74HC32 1 2 3 7 14
* Pin Definitions: 1=InputA, 2=InputB, 3=OutputY, 7=GND, 14=VCC
* Logic: Y = A OR B
* Implemented using Sigmoid function S(x) = 1 / (1 + exp(-k*(x-threshold)))
* OR(A,B) is equivalent to 1 - (NOT_A * NOT_B)
* V(14) scales the output to the supply rail
B_OR 3 7 V = V(14) * (1 - ( (1/(1+exp(-20*(V(1)-2.5)))) * (1/(1+exp(-20*(V(2)-2.5)))) ))
.ends
* --- Simulation Directives ---
* Transient analysis for 600us to capture all logic states of the pulses
.tran 1u 600u
* Print required voltages for analysis
.print tran V(NODE_A) V(NODE_B) V(NODE_Y) V(NODE_LED)
* Calculate DC operating point
.op
.end
Resultados de Simulación (Transitorio)
Show raw data table (1562 rows)
Index time v(node_a) v(node_b) v(node_y) 0 0.000000e+00 4.995005e-03 4.995005e-03 5.000000e+00 1 1.000000e-08 4.995005e-03 4.995005e-03 5.000000e+00 2 2.000000e-08 4.995005e-03 4.995005e-03 5.000000e+00 3 4.000000e-08 4.995005e-03 4.995005e-03 5.000000e+00 4 8.000000e-08 4.995005e-03 4.995005e-03 5.000000e+00 5 1.600000e-07 4.995005e-03 4.995005e-03 5.000000e+00 6 3.200000e-07 4.995005e-03 4.995005e-03 5.000000e+00 7 6.400000e-07 4.995005e-03 4.995005e-03 5.000000e+00 8 1.280000e-06 4.995005e-03 4.995005e-03 5.000000e+00 9 2.280000e-06 4.995005e-03 4.995005e-03 5.000000e+00 10 3.280000e-06 4.995005e-03 4.995005e-03 5.000000e+00 11 4.280000e-06 4.995005e-03 4.995005e-03 5.000000e+00 12 5.280000e-06 4.995005e-03 4.995005e-03 5.000000e+00 13 6.280000e-06 4.995005e-03 4.995005e-03 5.000000e+00 14 7.280000e-06 4.995005e-03 4.995005e-03 5.000000e+00 15 8.280000e-06 4.995005e-03 4.995005e-03 5.000000e+00 16 9.280000e-06 4.995005e-03 4.995005e-03 5.000000e+00 17 1.028000e-05 4.995005e-03 4.995005e-03 5.000000e+00 18 1.128000e-05 4.995005e-03 4.995005e-03 5.000000e+00 19 1.228000e-05 4.995005e-03 4.995005e-03 5.000000e+00 20 1.328000e-05 4.995005e-03 4.995005e-03 5.000000e+00 21 1.428000e-05 4.995005e-03 4.995005e-03 5.000000e+00 22 1.528000e-05 4.995005e-03 4.995005e-03 5.000000e+00 23 1.628000e-05 4.995005e-03 4.995005e-03 5.000000e+00 ... (1538 more rows) ...
Errores comunes y cómo evitarlos
- Dejar entradas flotantes: No instalar las resistencias pull-down (R1, R2) hace que las entradas «floten», lo que a menudo lleva a que el LED parpadee o se quede encendido permanentemente debido al ruido estático. Siempre conecte las entradas no utilizadas a GND o VCC.
- Falta de alimentación al chip: Olvidar conectar el Pin 14 a +5V y el Pin 7 a GND. Las compuertas lógicas dentro del chip no pueden funcionar sin energía.
- Orientación del LED: Insertar el LED al revés (ánodo a tierra). El LED actuará como un circuito abierto y nunca se encenderá.
Solución de problemas
- El LED está siempre ENCENDIDO:
- Verifique si falta R1 o R2 o si están desconectadas.
- Verifique que está usando un botón Normalmente Abierto (NO/NA), no uno Normalmente Cerrado (NC).
- El LED no se ENCIENDE cuando se presionan los botones:
- Verifique las conexiones de alimentación de U1 (Pines 7 y 14).
- Asegúrese de que el LED esté orientado correctamente (Lado plano/patilla corta a GND).
- El LED es muy tenue:
- El valor de R3 podría ser demasiado alto (por ejemplo, usar 10 kΩ en lugar de 330 Ω).
- El voltaje de alimentación V1 podría ser demasiado bajo.
Posibles mejoras y extensiones
- Control de tres puntos: Conecte en cascada una segunda compuerta OR (usando las compuertas restantes en el chip 74HC32) para agregar un tercer interruptor, permitiendo el control desde tres ubicaciones.
- Circuito de enclavamiento (Latch): Agregue un bucle de retroalimentación o use un latch SR para que presionar un botón una vez encienda la luz y la mantenga encendida hasta que se presione un botón de «Reset» (simulando una memoria de alarma).
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.




