Caso práctico: Conmutación de luz desde dos puntos

Prototipo de Conmutación de luz desde dos puntos (Maker Style)

Nivel: Medio. Implemente una función lógica XOR utilizando puertas NAND universales para controlar una fuente de luz desde dos ubicaciones independientes.

Objetivo y caso de uso

En este caso, construirá un circuito lógico digital que replica un sistema de conmutación residencial de 2 vías (luz de pasillo) utilizando un solo CI 74HC00 de cuádruple puerta NAND. Al combinar cuatro puertas NAND, sintetizará la función O-Exclusiva (XOR), demostrando que las puertas NAND son bloques de construcción «universales».

Por qué es útil:
* Simulación de cableado residencial: Demuestra cómo dos interruptores pueden alternar independientemente una sola carga (lógica de pasillo/escalera).
* Síntesis de lógica digital: Enseña cómo construir lógica compleja (XOR) a partir de puertas universales básicas (NAND).
* Circuitos aritméticos: Esta topología XOR específica es el componente fundamental de un «Semisumador» digital utilizado en las ALU de las CPU.
* Detección de errores: La lógica XOR se utiliza para calcular bits de paridad para la transmisión de datos.

Resultado esperado:
* Estado 00: Cuando ambos interruptores están OFF, el LED está OFF.
* Estado 01/10: Cuando solo un interruptor está ON, el LED está ON (Nivel lógico alto > 3.5 V).
* Estado 11: Cuando ambos interruptores están ON, el LED está OFF.
* Universalidad: Demostración exitosa de que 4 puertas NAND = 1 puerta XOR.

Público objetivo: Estudiantes de electrónica y aficionados familiarizados con las puertas lógicas básicas.

Materiales

  • V1: Fuente de alimentación de 5 V CC, función: Alimentación del circuito principal.
  • U1: 74HC00, función: CI de cuádruple puerta NAND de 2 entradas.
  • S1: Interruptor SPST, función: Entrada A (Interruptor 1).
  • S2: Interruptor SPST, función: Entrada B (Interruptor 2).
  • 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 (Luz).

Pin-out del CI utilizado

Chip seleccionado: 74HC00 (Cuádruple puerta NAND de 2 entradas)

Pin Nombre Función lógica Conexión en este caso
1 1 A Entrada Puerta 1 Conectar al nodo INPUT_A
2 1B Entrada Puerta 1 Conectar al nodo INPUT_B
3 1Y Salida Puerta 1 Nodo interno NAND_1_OUT
4 2 A Entrada Puerta 2 Conectar al nodo INPUT_A
5 2B Entrada Puerta 2 Conectar al nodo NAND_1_OUT
6 2Y Salida Puerta 2 Nodo interno NAND_2_OUT
7 GND Tierra Conectar al nodo 0 (GND)
8 3Y Salida Puerta 3 Nodo interno NAND_3_OUT
9 3 A Entrada Puerta 3 Conectar al nodo NAND_1_OUT
10 3B Entrada Puerta 3 Conectar al nodo INPUT_B
11 4Y Salida Puerta 4 Conectar al nodo FINAL_OUT
12 4 A Entrada Puerta 4 Conectar al nodo NAND_2_OUT
13 4B Entrada Puerta 4 Conectar al nodo NAND_3_OUT
14 VCC Alimentación Conectar al nodo VCC (+5 V)

Guía de conexionado

  • V1: Conectar el terminal positivo al nodo VCC y el terminal negativo al nodo 0.
  • U1 (Alimentación): Conectar el Pin 14 a VCC y el Pin 7 a 0.
  • S1: Conectar un lado a VCC y el otro al nodo INPUT_A.
  • R1: Conectar entre el nodo INPUT_A y el nodo 0.
  • S2: Conectar un lado a VCC y el otro al nodo INPUT_B.
  • R2: Conectar entre el nodo INPUT_B y el nodo 0.
  • U1 (Puerta 1): Conectar el Pin 1 a INPUT_A, el Pin 2 a INPUT_B. El Pin 3 es el nodo NAND_1_OUT.
  • U1 (Puerta 2): Conectar el Pin 4 a INPUT_A, el Pin 5 a NAND_1_OUT. El Pin 6 es el nodo NAND_2_OUT.
  • U1 (Puerta 3): Conectar el Pin 10 a INPUT_B, el Pin 9 a NAND_1_OUT. El Pin 8 es el nodo NAND_3_OUT.
  • U1 (Puerta 4): Conectar el Pin 12 a NAND_2_OUT, el Pin 13 a NAND_3_OUT. El Pin 11 es el nodo FINAL_OUT.
  • R3: Conectar entre el nodo FINAL_OUT y el Ánodo de D1.
  • D1: Conectar el Cátodo al nodo 0.

Diagrama de bloques conceptual

Conceptual block diagram — 74HC00 NAND gate
Lectura rápida: entradas → bloque principal → salida (actuador o medida). Resume el esquemático ASCII de la siguiente sección.

Esquemático

Title: Practical case: Light switching from two points (XOR Logic)

INPUT STAGE                  LOGIC PROCESSING (74HC00)                  OUTPUT STAGE
(User Controls)              (NAND-based XOR Circuit)                   (Indicator)

                                     (Pin 4)
VCC --> [ S1 ] --(Node A)----------> [ U1:Gate 2 ] --(NAND_2)--\
          |                          (Pin 5,6)                  \
       [ R1 ]                            ^                       \
          v                              |                        \
         GND                        (NAND_1_OUT)                   \
                                         |                          \
                                         |                           \
(Node A) & (Node B) -----------> [ U1:Gate 1 ]                        --> [ U1:Gate 4 ] --(FINAL)--> [ R3 ] --> [ D1: LED ] --> GND
                                 (Pin 1,2->3)                        /    (Pin 12,13->11)
                                         |                          /
                                         |                         /
                                    (NAND_1_OUT)                  /
          ^                              |                       /
       [ R2 ]                            v                      /
          |                          (Pin 9)                   /
VCC --> [ S2 ] --(Node B)----------> [ U1:Gate 3 ] --(NAND_3)-/
                                     (Pin 10,8)
Esquema Eléctrico

Tabla de verdad

Interruptor A (S1) Interruptor B (S2) Estado del LED (D1) Función lógica
0 (OFF) 0 (OFF) OFF (0) Sin entrada activa
0 (OFF) 1 (ON) ON (1) Entradas diferentes
1 (ON) 0 (OFF) ON (1) Entradas diferentes
1 (ON) 1 (ON) OFF (0) Entradas coinciden

Mediciones y pruebas

  1. Comprobación del estado inicial: Asegúrese de que ambos S1 y S2 estén abiertos. Mida el voltaje en el Pin 11 (FINAL_OUT). Debería ser < 0.5 V (Lógica 0). D1 debería estar apagado.
  2. Conmutación del primer interruptor: Cierre solo S1. Mida el voltaje en el Pin 11. Debería estar cerca de 5 V (Lógica 1). D1 debería encenderse.
  3. Conmutación del segundo interruptor: Abra S1 y cierre S2. Observe D1. Debería encenderse de nuevo (Lógica 1).
  4. Comprobación de colisión: Cierre S1 y S2 simultáneamente. Mida el voltaje en el Pin 3 (NAND_1_OUT). Dado que ambas entradas están en Alto (High), el Pin 3 debe estar en Bajo (Low). En consecuencia, el Pin 11 (FINAL_OUT) debería pasar a Bajo (Low), apagando D1.

Netlist SPICE y simulación

Netlist SPICE de referencia (ngspice) — extractoNetlist SPICE completo (ngspice)

* Practical case: Light switching from two points
* Title: Light switching from two points

* ==============================================================================
* COMPONENT MODELS
* ==============================================================================

* Simple LED Model
.model DLED D(IS=1e-22 RS=10 N=1.5 CJO=10p BV=5 IBV=10u)

* Voltage Controlled Switch Model for Buttons
* Vt=2.5V threshold, Ron=1 ohm, Roff=10Meg ohm
.model SW_PUSH SW(Vt=2.5 Ron=1 Roff=10Meg)

* ==============================================================================
* MAIN CIRCUIT
* ==============================================================================

* --- Power Supply ---
* V1: 5 V DC power supply
* ... (truncated in public view) ...

Copia este contenido en un archivo .cir y ejecútalo con ngspice.

🔒 Parte del contenido de esta sección es premium. Con el pase de 7 días o la suscripción mensual tendrás acceso al contenido completo (materiales, conexionado, compilación detallada, validación paso a paso, troubleshooting, mejoras/variantes y checklist) y podrás descargar el pack PDF listo para imprimir.

* Practical case: Light switching from two points
* Title: Light switching from two points

* ==============================================================================
* COMPONENT MODELS
* ==============================================================================

* Simple LED Model
.model DLED D(IS=1e-22 RS=10 N=1.5 CJO=10p BV=5 IBV=10u)

* Voltage Controlled Switch Model for Buttons
* Vt=2.5V threshold, Ron=1 ohm, Roff=10Meg ohm
.model SW_PUSH SW(Vt=2.5 Ron=1 Roff=10Meg)

* ==============================================================================
* MAIN CIRCUIT
* ==============================================================================

* --- Power Supply ---
* V1: 5 V DC power supply
V1 VCC 0 DC 5

* --- Input A (Switch 1) ---
* Simulating physical switch S1 connecting VCC to INPUT_A
* Controlled by V_ACT_S1 (User pressing the button)
* Timing: Period 100us, Width 50us (Toggles faster)
V_ACT_S1 S1_CTRL 0 PULSE(0 5 0 1u 1u 50u 100u)
S1 VCC INPUT_A S1_CTRL 0 SW_PUSH

* R1: 10 kΩ pull-down for Input A
R1 INPUT_A 0 10k

* --- Input B (Switch 2) ---
* Simulating physical switch S2 connecting VCC to INPUT_B
* Controlled by V_ACT_S2 (User pressing the button)
* Timing: Period 200us, Width 100us (Toggles slower)
V_ACT_S2 S2_CTRL 0 PULSE(0 5 0 1u 1u 100u 200u)
S2 VCC INPUT_B S2_CTRL 0 SW_PUSH

* R2: 10 kΩ pull-down for Input B
R2 INPUT_B 0 10k

* --- Logic IC U1: 74HC00 ---
* Quad 2-input NAND gate IC
* Pin connections per Wiring Guide:
* P1=INPUT_A, P2=INPUT_B, P3=NAND_1_OUT
* P4=INPUT_A, P5=NAND_1_OUT, P6=NAND_2_OUT
* P7=0 (GND)
* P8=NAND_3_OUT, P9=NAND_1_OUT, P10=INPUT_B
* P11=FINAL_OUT, P12=NAND_2_OUT, P13=NAND_3_OUT
* P14=VCC
XU1 INPUT_A INPUT_B NAND_1_OUT INPUT_A NAND_1_OUT NAND_2_OUT 0 NAND_3_OUT NAND_1_OUT INPUT_B FINAL_OUT NAND_2_OUT NAND_3_OUT VCC 74HC00

* --- Output Stage ---
* R3: 330 Ω resistor
R3 FINAL_OUT LED_NODE 330

* D1: Red LED
D1 LED_NODE 0 DLED

* ==============================================================================
* SUBCIRCUITS
* ==============================================================================

* Subcircuit for 74HC00 Quad 2-Input NAND Gate
* Uses continuous behavioral sources for robust convergence
* 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
.subckt 74HC00 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    * Gate 1 (1,2 -> 3)
    * Logic: Vout = VCC * (1 - (High(A) * High(B)))
    Bg1 3 7 V={V(14,7)*(1-(1/(1+exp(-50*(V(1,7)-2.5))))*(1/(1+exp(-50*(V(2,7)-2.5)))))}

    * Gate 2 (4,5 -> 6)
    Bg2 6 7 V={V(14,7)*(1-(1/(1+exp(-50*(V(4,7)-2.5))))*(1/(1+exp(-50*(V(5,7)-2.5)))))}

    * Gate 3 (9,10 -> 8)
    Bg3 8 7 V={V(14,7)*(1-(1/(1+exp(-50*(V(9,7)-2.5))))*(1/(1+exp(-50*(V(10,7)-2.5)))))}

    * Gate 4 (12,13 -> 11)
    Bg4 11 7 V={V(14,7)*(1-(1/(1+exp(-50*(V(12,7)-2.5))))*(1/(1+exp(-50*(V(13,7)-2.5)))))}
.ends

* ==============================================================================
* ANALYSIS COMMANDS
* ==============================================================================

.op
.tran 1u 500u

* Print critical nodes including Inputs and the Output driving the LED
.print tran V(INPUT_A) V(INPUT_B) V(FINAL_OUT) V(LED_NODE)

.end
* --- GPT review (BOM/Wiring/SPICE) ---
* circuit_ok=true
* simulation_summary: The simulation confirms the XOR logic behavior required for 2-way switching. When inputs differ (e.g., t=51us: A=0, B=1 -> Out=5V; t=101us: A=1, B=1 -> Out=0V; t=180us: A=1, B=0 -> Out=5V), the LED is ON (approx 1.88V drop). When inputs match (0,0 or 1,1), the output is near 0V.
* bom_vs_spice equivalences ignored:
*   - Physical switches S1 and S2 are modeled as voltage-controlled switches (SW_PUSH) driven by PULSE sources (V_ACT_S1, V_ACT_S2) to simulate user interaction.
*   - The 74HC00 Quad NAND IC is modeled as a behavioral subcircuit using mathematical expressions for logic gates.
*   - The LED D1 is modeled as a generic diode DLED with specific parameters.
* overall_comment: The circuit is a classic XOR implementation using four NAND gates, correctly wired to simulate a 2-way light switch (staircase switch). The SPICE netlist accurately represents the BOM and wiring guide. The simulation results perfectly match the provided truth table: the LED lights up only when the switch states are different.
* --------------------------------------

Resultados de Simulación (Transitorio)

Resultados de Simulación (Transitorio)

Análisis: The simulation confirms the XOR logic behavior required for 2-way switching. When inputs differ (e.g., t=51us: A=0, B=1 -> Out=5V; t=101us: A=1, B=1 -> Out=0V; t=180us: A=1, B=0 -> Out=5V), the LED is ON (approx 1.88V drop). When inputs match (0,0 or 1,1), the output is near 0V.
Show raw data table (773 rows)
Index   time            v(input_a)      v(input_b)      v(final_out)    v(led_node)
0	0.000000e+00	4.995005e-03	4.995005e-03	-3.70921e-68	-1.32951e-36
1	1.000000e-08	4.995005e-03	4.995005e-03	-3.70921e-68	-3.37339e-37
2	2.000000e-08	4.995005e-03	4.995005e-03	-3.70921e-68	1.661518e-37
3	4.000000e-08	4.995005e-03	4.995005e-03	-3.70921e-68	2.976605e-37
4	8.000000e-08	4.995005e-03	4.995005e-03	-3.70921e-68	8.146600e-38
5	1.600000e-07	4.995005e-03	4.995005e-03	-3.70921e-68	-2.74917e-38
6	3.200000e-07	4.995005e-03	4.995005e-03	-3.70921e-68	-1.00046e-38
7	3.562500e-07	4.995005e-03	4.995005e-03	-3.70921e-68	-9.54478e-40
8	4.196875e-07	4.995005e-03	4.995005e-03	-3.70921e-68	1.440911e-39
9	4.372461e-07	4.995005e-03	4.995005e-03	-3.70921e-68	5.873353e-40
10	4.679736e-07	4.995005e-03	4.995005e-03	-3.70921e-68	-1.64244e-40
11	5.019934e-07	4.999500e+00	4.999500e+00	-3.70921e-68	5.471353e-16
12	5.700330e-07	4.999500e+00	4.999500e+00	-3.70921e-68	1.883035e-16
13	7.061121e-07	4.999500e+00	4.999500e+00	-3.70921e-68	-1.89304e-16
14	9.782703e-07	4.999500e+00	4.999500e+00	-3.70921e-68	1.713539e-16
15	1.000000e-06	4.999500e+00	4.999500e+00	-3.70921e-68	-8.76370e-17
16	1.043459e-06	4.999500e+00	4.999500e+00	-3.70921e-68	2.969253e-18
17	1.130378e-06	4.999500e+00	4.999500e+00	-3.70921e-68	1.336375e-17
18	1.304216e-06	4.999500e+00	4.999500e+00	-3.70921e-68	1.285658e-18
19	1.651892e-06	4.999500e+00	4.999500e+00	-3.70921e-68	-4.38731e-19
20	2.347244e-06	4.999500e+00	4.999500e+00	-3.70921e-68	-3.76487e-20
21	3.347244e-06	4.999500e+00	4.999500e+00	-3.70921e-68	3.641502e-21
22	4.347244e-06	4.999500e+00	4.999500e+00	-3.70921e-68	3.034717e-22
23	5.347244e-06	4.999500e+00	4.999500e+00	-3.70921e-68	-2.04956e-23
... (749 more rows) ...

Errores comunes y cómo evitarlos

  1. Entradas flotantes: Olvidar R1 o R2 hace que las entradas «floten», a menudo leyéndose como Alto (High) debido al ruido electromagnético. Solución: Asegúrese siempre de que las entradas estén conectadas a Tierra (Ground) cuando el interruptor esté abierto.
  2. Retroalimentación de puerta incorrecta: Cablear la salida del Pin 3 a las entradas incorrectas en las Puertas 2 o 3 destruye la lógica. Solución: Verifique dos veces que la salida de la primera NAND (Pin 3) se conecte TANTO a la segunda (Pin 5) como a la tercera (Pin 9) puerta.
  3. Olvidar la alimentación: Los chips lógicos no funcionan pasivamente. Solución: Verifique 5 V en el Pin 14 y continuidad a Tierra en el Pin 7 antes de insertar señales.

Solución de problemas

  • Síntoma: El LED está siempre ON, independientemente de la posición del interruptor.
    • Causa: Error de cableado en la puerta NAND final (Puerta 4) o salida cortocircuitada a VCC.
    • Solución: Compruebe las conexiones en los Pines 11, 12 y 13. Asegúrese de que el Pin 11 no esté tocando el riel positivo.
  • Síntoma: El LED se comporta como una puerta OR (permanece ON cuando ambos interruptores están ON).
    • Causa: La primera puerta NAND (Puerta 1) no está inhibiendo la señal eficazmente.
    • Solución: Compruebe la continuidad en los Pines 1, 2 y 3. Si la salida de la Puerta 1 permanece en Alto (High) cuando las entradas están en Alto, la lógica XOR falla.
  • Síntoma: El circuito funciona de forma errática al tocar los cables.
    • Causa: Faltan resistencias pull-down (entradas flotantes).
    • Solución: Verifique que R1 y R2 estén conectadas firmemente entre los pines de entrada y Tierra.

Posibles mejoras y extensiones

  1. Conmutación de 3 vías: Añada un tercer interruptor y otra etapa XOR (utilizando un segundo 74HC00 o un 74HC86) para controlar la luz desde tres ubicaciones.
  2. Comparación con CI dedicado: Construya el mismo circuito utilizando un 74HC86 (Cuádruple XOR) junto a este para comparar el retardo de propagación y la complejidad del cableado.

Más Casos Prácticos en Prometeo.blog

Encuentra este producto y/o libros sobre este tema en Amazon

Ir a 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.

Quiz rápido

Pregunta 1: ¿Cuál es el objetivo principal del circuito descrito en el contexto?




Pregunta 2: ¿Qué circuito integrado específico se utiliza para este proyecto?




Pregunta 3: ¿Qué función lógica se sintetiza al combinar las cuatro puertas NAND?




Pregunta 4: ¿Por qué se consideran las puertas NAND como bloques de construcción 'universales'?




Pregunta 5: Según el resultado esperado, ¿cuál es el estado del LED cuando ambos interruptores están OFF (00)?




Pregunta 6: ¿En qué tipo de circuito aritmético de las CPU se utiliza fundamentalmente esta topología XOR?




Pregunta 7: ¿Cuál es la aplicación de la lógica XOR en la transmisión de datos mencionada en el texto?




Pregunta 8: ¿Cuántas puertas NAND del CI se combinan para sintetizar la función XOR en este caso?




Pregunta 9: En la lógica de conmutación de pasillo (XOR), ¿qué ocurre si las entradas son diferentes (01 o 10)?




Pregunta 10: ¿Qué demuestra este proyecto sobre la relación entre interruptores y carga?




Carlos Núñez Zorrilla
Carlos Núñez Zorrilla
Electronics & Computer Engineer

Ingeniero Superior en Electrónica de Telecomunicaciones e Ingeniero en Informática (titulaciones oficiales en España).

Sígueme:


Caso práctico: Latch SR antirrebote con NAND

Prototipo de Latch SR antirrebote con NAND (Maker Style)

Nivel: Medio – Construye un circuito de memoria estable para eliminar el ruido de interruptores mecánicos usando compuertas NAND acopladas en cruz.

Objetivo y caso de uso

En este caso práctico, construirás un Latch Set-Reset (SR) utilizando un CI 74HC00. Al disponer dos compuertas NAND en una topología de retroalimentación acoplada en cruz, el circuito crea un elemento de memoria biestable que ignora el ruido mecánico de «rebote» generado cuando se cierran los contactos de un interruptor físico.

Por qué es útil:
* Interfaz con interruptores mecánicos: Esencial para leer botones en sistemas digitales sin disparos falsos.
* Interrupciones de microcontrolador: Proporciona un flanco limpio (subida/bajada) para disparar interrupciones de hardware de manera confiable.
* Retención de estado: Mantiene el último estado conocido (Set o Reset) incluso después de que se libera el disparador de entrada (retorno a reposo).
* Control industrial: Utilizado en circuitos de control de motores «Marcha/Parada» donde la estabilidad es crítica para la seguridad.

Resultado esperado:
* Salida Q: Permanece en ALTO (5 V) cuando se dispara Set y se mantiene en ALTO hasta que se dispara Reset.
* Salida Q_bar: Siempre la inversa de Q (Lógica BAJA cuando Q es ALTA).
* Retroalimentación visual: Dos LEDs (Verde y Rojo) indicando claramente el estado almacenado.
* Inmunidad al ruido: La salida transiciona una vez limpiamente, incluso si los contactos del interruptor rebotan múltiples veces en milisegundos.

Público objetivo y nivel: Estudiantes de electrónica y aficionados de nivel intermedio.

Materiales

  • V1: Fuente de alimentación de 5 V DC
  • U1: 74HC00 (Cuádruple compuerta NAND de 2 entradas)
  • SW1: Interruptor SPDT (Un Polo Doble Tiro), función: selector Set/Reset
  • R1: Resistencia de 10 kΩ, función: pull-up para SET_N
  • R2: Resistencia de 10 kΩ, función: pull-up para RESET_N
  • R3: Resistencia de 330 Ω, función: limitación de corriente LED para Q
  • R4: Resistencia de 330 Ω, función: limitación de corriente LED para Q_bar
  • D1: LED Verde, función: Indicador para Estado Q (Activo)
  • D2: LED Rojo, función: Indicador para Estado Q_bar (Inactivo)
  • C1: Condensador de 100 nF, función: desacople para pines de alimentación de U1

Pin-out del CI utilizado

Chip: 74HC00 (Cuádruple compuerta NAND de 2 entradas)

Pin Nombre Función lógica Conexión en este caso
1 1 A Entrada Conecta al Nodo SET_N
2 1B Entrada Conecta al Nodo Q_BAR (Retroalimentación)
3 1Y Salida Conecta al Nodo Q
4 2 A Entrada Conecta al Nodo RESET_N
5 2B Entrada Conecta al Nodo Q (Retroalimentación)
6 2Y Salida Conecta al Nodo Q_BAR
7 GND Tierra Conecta al Nodo 0
14 VCC Alimentación Conecta al Nodo VCC (5 V)

Guía de conexionado

  • Fuente de Alimentación:
  • Conecta el terminal positivo de V1 al nodo VCC.
  • Conecta el terminal negativo de V1 al nodo 0 (GND).
  • Conecta C1 entre VCC y 0 (cerca de U1).
  • Conecta el pin 14 de U1 a VCC.
  • Conecta el pin 7 de U1 a 0.

  • Etapa de Entrada (Interruptor y Pull-ups):

  • Conecta R1 entre VCC y el nodo SET_N.
  • Conecta R2 entre VCC y el nodo RESET_N.
  • Conecta el terminal Común de SW1 al nodo 0.
  • Conecta el terminal Normalmente Abierto (NO) de SW1 al nodo SET_N.
  • Conecta el terminal Normalmente Cerrado (NC) de SW1 al nodo RESET_N. (Nota: Alternar SW1 lleva una línea a Bajo mientras la otra permanece en Alto).

  • Núcleo Lógico (NANDs acopladas en cruz):

  • Conecta el pin 1 (1 A) de U1 al nodo SET_N.
  • Conecta el pin 2 (1B) de U1 al nodo Q_BAR.
  • Conecta el pin 3 (1Y) de U1 al nodo Q.
  • Conecta el pin 4 (2 A) de U1 al nodo RESET_N.
  • Conecta el pin 5 (2B) de U1 al nodo Q.
  • Conecta el pin 6 (2Y) de U1 al nodo Q_BAR.

  • Etapa de Salida (Indicadores):

  • Conecta R3 entre el nodo Q y el Ánodo de D1.
  • Conecta el Cátodo de D1 al nodo 0.
  • Conecta R4 entre el nodo Q_BAR y el Ánodo de D2.
  • Conecta el Cátodo de D2 al nodo 0.

Diagrama de bloques conceptual

Conceptual block diagram — 74HC00 Feedback: Q sends state to …
Lectura rápida: entradas → bloque principal → salida (actuador o medida). Resume el esquemático ASCII de la siguiente sección.

Esquemático

Title: Practical case: Debouncing SR Latch with NAND

      INPUT STAGE (Switch & Pull-ups)           LOGIC CORE (74HC00 Latch)               OUTPUT STAGE (Indicators)
      ================================          =========================               =========================

      [ VCC ]
         |
         V
      [ R1: 10k Pull-up ]
         |
         V
      (Node: SET_N) --------------------------> [ U1: NAND Gate A ] --(Signal: Q)-----> [ R3: 330 ] --> [ D1: Green LED ] --> GND
         ^                                      ^       |
         |                                      |       |
      [ SW1: SPDT Switch ]                      |       +--(Feedback: Q sends state to Gate B)
      (Connects GND to SET_N or RESET_N)        |
         |                                      +--(Feedback: Q_BAR maintains state of Gate A)
         v                                              |
      (Node: RESET_N) ------------------------> [ U1: NAND Gate B ] --(Signal: Q_BAR)-> [ R4: 330 ] --> [ D2: Red LED ] ----> GND
         ^
         |
      [ R2: 10k Pull-up ]
         |
         ^
         |
      [ VCC ]


      POWER & DECOUPLING:
      [ VCC ] --(Power)--> [ U1: Pin 14 ]
      [ GND ] --(Ground)--> [ U1: Pin 7 ]
      [ VCC ] --(Filter)--> [ C1: 100nF ] --> [ GND ]
Esquema Eléctrico

Tabla de verdad

Las entradas del Latch SR NAND son Activas en Bajo.

SET_N (Entrada) RESET_N (Entrada) Q (Salida) Q_bar (Salida) Descripción del estado
1 (Alto) 1 (Alto) Q Anterior Q_bar Anterior Retención (Memoria)
0 (Bajo) 1 (Alto) 1 0 Set
1 (Alto) 0 (Bajo) 0 1 Reset
0 (Bajo) 0 (Bajo) 1 1 Inválido (Evitar)

Mediciones y pruebas

  1. Encendido inicial: Enciende la fuente de 5 V. Asegúrate de que SW1 esté en una posición específica.
  2. Verificar Reset: Alterna SW1 para llevar RESET_N a Bajo (y SET_N a Alto).
    • Confirma que el LED Rojo (D2, Q_bar) se ENCIENDE.
    • Confirma que el LED Verde (D1, Q) se APAGA.
    • Mide el voltaje en Q: debería ser aprox 0 V.
  3. Verificar Set: Alterna SW1 para llevar SET_N a Bajo.
    • Confirma que el LED Verde (D1, Q) se ENCIENDE.
    • Confirma que el LED Rojo (D2, Q_bar) se APAGA.
    • Mide el voltaje en Q: debería ser aprox 5 V.
  4. Prueba de antirrebote: Mientras mueves el interruptor, observa los LEDs. Deberían cambiar de estado instantáneamente sin parpadear, incluso si el contacto del interruptor es imperfecto.
  5. Prueba de desconexión (Estado de retención): Si desconectas los cables del interruptor para que ambas entradas sean llevadas a Alto por R1/R2, los LEDs deben mantener su último estado válido.

Netlist SPICE y simulación

Netlist SPICE de referencia (ngspice) — extractoNetlist SPICE completo (ngspice)

* Title: Practical case: Debouncing SR Latch with NAND
* NGSPICE Netlist
.width out=256

* --- Power Supply ---
V1 VCC 0 DC 5
C1 VCC 0 100n

* --- Input Stage (Switch and Pull-ups) ---
* R1 Pull-up for SET_N
R1 VCC SET_N 10k
* R2 Pull-up for RESET_N
R2 VCC RESET_N 10k

* --- Switch Simulation (SW1 SPDT) ---
* Control Signal Source
V_SW_CTRL CTRL 0 PULSE(0 5 100u 1u 1u 200u 600u)

* Inverted control signal for the NC contact
B_SW_INV CTRL_N 0 V=5-V(CTRL)
* ... (truncated in public view) ...

Copia este contenido en un archivo .cir y ejecútalo con ngspice.

🔒 Parte del contenido de esta sección es premium. Con el pase de 7 días o la suscripción mensual tendrás acceso al contenido completo (materiales, conexionado, compilación detallada, validación paso a paso, troubleshooting, mejoras/variantes y checklist) y podrás descargar el pack PDF listo para imprimir.

* Title: Practical case: Debouncing SR Latch with NAND
* NGSPICE Netlist
.width out=256

* --- Power Supply ---
V1 VCC 0 DC 5
C1 VCC 0 100n

* --- Input Stage (Switch and Pull-ups) ---
* R1 Pull-up for SET_N
R1 VCC SET_N 10k
* R2 Pull-up for RESET_N
R2 VCC RESET_N 10k

* --- Switch Simulation (SW1 SPDT) ---
* Control Signal Source
V_SW_CTRL CTRL 0 PULSE(0 5 100u 1u 1u 200u 600u)

* Inverted control signal for the NC contact
B_SW_INV CTRL_N 0 V=5-V(CTRL)

* Switch Models (Threshold 2.5V)
.model SW_MECH SW(Vt=2.5 Vh=0.1 Ron=0.1 Roff=100Meg)

* S1 (NO Contact): Connects SET_N to 0 when CTRL is High
S1 SET_N 0 CTRL 0 SW_MECH

* S2 (NC Contact): Connects RESET_N to 0 when CTRL_N is High (CTRL is Low)
S2 RESET_N 0 CTRL_N 0 SW_MECH

* --- Logic Core (74HC00 Quad 2-Input NAND) ---
* Subcircuit for 74HC00 using robust behavioral NAND gates
* Pinout: 1=1A, 2=1B, 3=1Y, 4=2A, 5=2B, 6=2Y, 7=GND, 14=VCC
.subckt 74HC00 1 2 3 4 5 6 7 14
    * Gate 1 (Pins 1, 2 -> Output 3)
    * Logic: NAND. Implementation: Sigmoid-based continuous function for convergence.
    * Vout = VCC * (1 - (Sigmoid(A) * Sigmoid(B)))
    B_NAND1 3 7 V=V(14) * (1 - ( (1/(1+exp(-50*(V(1)-2.5)))) * (1/(1+exp(-50*(V(2)-2.5)))) ))

    * Gate 2 (Pins 4, 5 -> Output 6)
    B_NAND2 6 7 V=V(14) * (1 - ( (1/(1+exp(-50*(V(4)-2.5)))) * (1/(1+exp(-50*(V(5)-2.5)))) ))
.ends

* --- Instantiate U1 ---
* Wiring per guide: 1=SET_N, 2=Q_BAR, 3=Q, 4=RESET_N, 5=Q, 6=Q_BAR, 7=0, 14=VCC
XU1 SET_N Q_BAR Q RESET_N Q Q_BAR 0 VCC 74HC00

* --- Output Stage (Indicators) ---
* R3 between node Q and D1 Anode
R3 Q D1_A 330
* D1 Green LED (Q Active)
D1 D1_A 0 LED_GREEN

* R4 between node Q_BAR and D2 Anode
R4 Q_BAR D2_A 330
* D2 Red LED (Q_BAR Inactive)
D2 D2_A 0 LED_RED

* LED Models
.model LED_GREEN D(Is=1e-22 Rs=5 N=1.5 Eg=2.1)
.model LED_RED D(Is=1e-22 Rs=5 N=1.5 Eg=1.8)

* --- Simulation Commands ---
.op
.tran 1u 1ms

* --- Measurements ---
* Listing SET_N (Input) and Q (Output) first
.print tran V(SET_N) V(Q) V(RESET_N) V(Q_BAR) V(CTRL)

.end
* --- GPT review (BOM/Wiring/SPICE) ---
* circuit_ok=true
* simulation_summary: The simulation confirms correct SR Latch behavior. At t=0, SET_N is Low and RESET_N is High, resulting in Q=High (Set state). At t=100us, the switch toggles: SET_N goes High and RESET_N goes Low, causing Q to go Low and Q_BAR to go High (Reset state). The latch holds state correctly between transitions.
* bom_vs_spice equivalences ignored:
*   - SW1 (SPDT Switch) is modeled using a voltage-controlled switch pair (S1, S2) driven by a PULSE source (V_SW_CTRL) and its inverse.
*   - U1 (74HC00 Quad NAND) is modeled using a behavioral subcircuit with sigmoid-based voltage sources.
* overall_comment: The circuit is a textbook example of a NAND-based SR latch used for switch debouncing. The SPICE implementation faithfully follows the wiring guide, using a clever behavioral model for the 74HC00 and a dual-switch setup to simulate the SPDT action. The transient analysis clearly demonstrates the Set and Reset actions corresponding to the switch position, matching the provided truth table perfectly.
* --------------------------------------

Resultados de Simulación (Transitorio)

Resultados de Simulación (Transitorio)

Análisis: The simulation confirms correct SR Latch behavior. At t=0, SET_N is Low and RESET_N is High, resulting in Q=High (Set state). At t=100us, the switch toggles: SET_N goes High and RESET_N goes Low, causing Q to go Low and Q_BAR to go High (Reset state). The latch holds state correctly between transitions.
Show raw data table (1072 rows)
Index   time            v(set_n)        v(q)            v(reset_n)      v(q_bar)        v(ctrl)
0	0.000000e+00	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
1	1.000000e-08	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
2	2.000000e-08	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
3	4.000000e-08	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
4	8.000000e-08	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
5	1.600000e-07	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
6	3.200000e-07	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
7	6.400000e-07	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
8	1.280000e-06	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
9	2.280000e-06	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
10	3.280000e-06	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
11	4.280000e-06	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
12	5.280000e-06	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
13	6.280000e-06	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
14	7.280000e-06	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
15	8.280000e-06	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
16	9.280000e-06	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
17	1.028000e-05	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
18	1.128000e-05	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
19	1.228000e-05	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
20	1.328000e-05	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
21	1.428000e-05	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
22	1.528000e-05	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
23	1.628000e-05	4.999500e+00	3.709206e-68	4.999950e-05	5.000000e+00	0.000000e+00
... (1048 more rows) ...

Errores comunes y cómo evitarlos

  1. Dejar entradas flotando: Si quitas el interruptor y no tienes las resistencias R1/R2, las entradas flotan, causando oscilación impredecible. Solución: Usa siempre resistencias pull-up (10 kΩ) en las entradas del latch NAND.
  2. Confundir Activo en Bajo vs. Activo en Alto: Los usuarios a menudo esperan que un «1» active el latch. Un latch NAND se activa cuando la entrada va a «0». Solución: Recuerda que los latches NAND se disparan con pulsos a tierra (Bajo).
  3. Estado prohibido: presionar dos botones simultáneamente (si se usan botones en lugar de SPDT) crea un 0 Lógico en ambas entradas, forzando ambas salidas a Alto. Solución: Evita mecánicamente las pulsaciones simultáneas o diseña lógica para priorizar una entrada.

Solución de problemas

  • Ambos LEDs están ENCENDIDOS:
    • Causa: Tanto SET_N como RESET_N están conectados a Tierra (Lógica 0) simultáneamente.
    • Solución: Revisa el cableado del interruptor; asegúrate de no estar cortocircuitando ambas entradas a tierra.
  • El circuito no retiene el estado (los LEDs parpadean o siguen al interruptor vagamente):
    • Causa: Falta la conexión de retroalimentación.
    • Solución: Asegúrate de que el cable del Pin 3 (Q) vaya al Pin 5, y el del Pin 6 (Q_BAR) vaya al Pin 2.
  • El chip se calienta:
    • Causa: Cortocircuito en la salida o polaridad de alimentación invertida.
    • Solución: Comprueba que R3 y R4 estén presentes (no conectes LEDs directamente a las salidas) y verifica que el Pin 14 sea 5 V y el Pin 7 sea GND.

Posibles mejoras y extensiones

  1. Latch SR con habilitación (Gated): Agrega dos compuertas NAND extra (usando las dos restantes en el 74HC00) para añadir una señal de «Enable» (Habilitación), convirtiéndolo en una celda de memoria síncrona.
  2. Controlador de contador digital: Usa la salida Q para manejar la entrada de reloj de un contador CD4017 o 74HC4017, demostrando que la pulsación manual del botón genera exactamente un pulso de reloj limpio.

Más Casos Prácticos en Prometeo.blog

Encuentra este producto y/o libros sobre este tema en Amazon

Ir a 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.

Quiz rápido

Pregunta 1: ¿Qué circuito integrado se utiliza en este caso práctico para construir el Latch SR?




Pregunta 2: ¿Cuál es el objetivo principal de usar este circuito con interruptores mecánicos?




Pregunta 3: ¿Qué topología de conexión se utiliza entre las compuertas NAND?




Pregunta 4: ¿Qué característica define a este circuito como un elemento de memoria 'biestable'?




Pregunta 5: ¿Qué sucede con la salida Q cuando se dispara la entrada Set en este circuito?




Pregunta 6: ¿Por qué es útil este circuito para las interrupciones de un microcontrolador?




Pregunta 7: ¿Qué ocurre con el estado del circuito cuando se libera el disparador de entrada (retorno a reposo)?




Pregunta 8: ¿En qué aplicación de control industrial es crítico este tipo de circuito por seguridad?




Pregunta 9: ¿Qué problema físico de los botones resuelve este circuito?




Pregunta 10: ¿Cuántas entradas de control principales tiene típicamente un Latch SR básico?




Carlos Núñez Zorrilla
Carlos Núñez Zorrilla
Electronics & Computer Engineer

Ingeniero Superior en Electrónica de Telecomunicaciones e Ingeniero en Informática (titulaciones oficiales en España).

Sígueme:


Caso práctico: Amplificador lineal CMOS

Prototipo de Amplificador lineal CMOS (Maker Style)

Nivel: Avanzado. Configurar un inversor 74HC04 como un amplificador analógico lineal de Clase A usando retroalimentación negativa.

Objetivo y caso de uso

Construirá un amplificador de voltaje de una sola etapa utilizando una puerta inversora de un CI 74HC04, polarizada en su región lineal mediante una resistencia de retroalimentación. Esta configuración fuerza a la puerta digital a actuar como un amplificador inversor analógico para pequeñas señales de CA.

Por qué es útil:
* Análisis de estructura interna: Demuestra que las puertas lógicas digitales están construidas con transistores analógicos (MOSFETs) y poseen una región lineal activa.
* Osciladores de cristal: Esta topología es el bloque de construcción fundamental para los osciladores Pierce utilizados en la generación de reloj.
* Amplificación de bajo costo: Proporciona un amplificador simple y barato de alta impedancia para sensores piezoeléctricos o micrófonos sin requerir un amplificador operacional dedicado.
* Buffering de señal: Se puede utilizar para cuadrar flancos analógicos «lentos» en pulsos digitales nítidos si se ajusta la retroalimentación.

Resultado esperado:
* Autopolarización: El voltaje de CC de entrada y salida se estabiliza automáticamente en aproximadamente VCC / 2 (p. ej., ~2.5 V).
* Amplificación: Una onda senoidal de entrada de 50 mVpp da como resultado una onda senoidal de salida invertida amplificada.
* Linealidad: La señal de salida replica la forma de la entrada sin recorte (siempre que la señal de entrada permanezca pequeña).

Público objetivo y nivel:
Estudiantes de ingeniería electrónica y diseñadores de sistemas analógicos (Nivel: Avanzado).

Materiales

  • U1: 74HC04 (Inversor Quíntuple/Hex Inverter), función: elemento de amplificación activo.
  • Rf: Resistencia de 1 MΩ, función: retroalimentación negativa para polarización de CC (operación Clase A).
  • Cin: Condensador cerámico de 100 nF, función: acoplamiento de CA para la señal de entrada.
  • Cout: Condensador electrolítico de 10 µF, función: acoplamiento de CA para la carga.
  • RL: Resistencia de 10 kΩ, función: simulación de carga de salida.
  • V1: Fuente de alimentación de 5 V CC, función: fuente de energía principal.
  • V_SIG: Generador de señales, función: onda senoidal de 1 kHz, 50 mVpp (con offset de 0 V CC).

Pin-out del CI utilizado

Chip: 74HC04 (Hex Inverter)

Pin Nombre Función lógica Conexión en este caso
1 1 A Entrada Inversor 1 Conectado a GATE_IN
2 1Y Salida Inversor 1 Conectado a GATE_OUT
7 GND Tierra Conectado a 0 (GND)
14 VCC Fuente de alimentación Conectado a VCC
3,5,9,11,13 Entradas Entradas no utilizadas Conectar a 0 (GND) para prevenir oscilación

Guía de conexionado

  • V1: Terminal positivo a VCC, terminal negativo a 0.
  • U1: Pin 14 a VCC, Pin 7 a 0.
  • Entradas no utilizadas: Pines U1 3, 5, 9, 11, 13 a 0 (Esencial para la estabilidad).
  • Rf: Conectar entre GATE_IN (Pin 1) y GATE_OUT (Pin 2).
  • Cin: Conectar entre VIN_AC (salida del Generador de Señales) y GATE_IN.
  • U1 Gate: Pin 1 a GATE_IN, Pin 2 a GATE_OUT.
  • Cout: Terminal positivo a GATE_OUT, terminal negativo a VOUT_LOAD.
  • RL: Conectar entre VOUT_LOAD y 0.
  • V_SIG: Salida a VIN_AC, Tierra a 0.

Diagrama de bloques conceptual

Conceptual block diagram — 74HC04 NOT gate
Lectura rápida: entradas → bloque principal → salida (actuador o medida). Resume el esquemático ASCII de la siguiente sección.

Esquemático

Practical case: CMOS linear amplifier

                                            (Feedback Loop)
                                  .-----------[ Rf: 1 MΩ ]------------.
                                  |                                   |
                                  V                                   |
[ V_SIG ] --(Signal)--> [ Cin: 100nF ] --(Pin 1)--> [ U1: 74HC04 ] --(Pin 2)--> [ Cout: 10µF ] --> [ RL: 10 kΩ ] --> GND
                                                          ^
                                                          |
                                                 [ Power: 5 V / GND ]
                                                 [ Unused Pins: 0 V ]
Esquema Eléctrico

Tabla de verdad

Aunque se opera como un amplificador analógico, el 74HC04 mantiene su lógica de tabla de verdad digital si se excita de riel a riel.

Entrada (A) Salida (Y)
L (0 V) H (5 V)
H (5 V) L (0 V)

Mediciones y pruebas

  1. Verificación de polarización CC:

    • Desconectar V_SIG temporalmente.
    • Medir el voltaje de CC en GATE_IN y GATE_OUT.
    • Validación: Ambos deberían medir aproximadamente VCC / 2 (alrededor de 2.5 V). Esto confirma que la resistencia de retroalimentación Rf ha polarizado correctamente el inversor en la región de transición.
  2. Medición de ganancia de CA:

    • Reconectar V_SIG (1 kHz, senoidal, 50 mVpp).
    • Usar un osciloscopio para observar el Canal 1 en VIN_AC y el Canal 2 en GATE_OUT.
    • Validación: Calcular la Ganancia de Voltaje Av = Voutpp / Vinpp. Debería observar una onda senoidal invertida con una ganancia significativa (típicamente 10x a 100x dependiendo del fabricante específico del 74HC04).
  3. Límite de linealidad:

    • Aumentar lentamente la amplitud de V_SIG.
    • Validación: Observar el punto donde la onda senoidal de salida se aplana en la parte superior (cerca de 5 V) y en la inferior (cerca de 0 V). Este es el límite del rango dinámico.

Netlist SPICE y simulación

Netlist SPICE de referencia (ngspice) — extractoNetlist SPICE completo (ngspice)

* Practical case: CMOS linear amplifier
* 74HC04 Hex Inverter Linear Amplifier Configuration

* --- Power Supply ---
* V1: 5V DC supply
V1 VCC 0 DC 5

* --- Signal Generator ---
* V_SIG: 1 kHz sine wave, 50 mVpp (25 mV amplitude), 0 V DC offset
V_SIG VIN_AC 0 SIN(0 25m 1k)

* --- Components ---

* Cin: 100 nF ceramic capacitor for AC coupling input
Cin VIN_AC GATE_IN 100n

* Rf: 1 MΩ resistor for negative feedback (DC biasing)
Rf GATE_IN GATE_OUT 1Meg

* U1: 74HC04 Hex Inverter
* ... (truncated in public view) ...

Copia este contenido en un archivo .cir y ejecútalo con ngspice.

🔒 Parte del contenido de esta sección es premium. Con el pase de 7 días o la suscripción mensual tendrás acceso al contenido completo (materiales, conexionado, compilación detallada, validación paso a paso, troubleshooting, mejoras/variantes y checklist) y podrás descargar el pack PDF listo para imprimir.

* Practical case: CMOS linear amplifier
* 74HC04 Hex Inverter Linear Amplifier Configuration

* --- Power Supply ---
* V1: 5V DC supply
V1 VCC 0 DC 5

* --- Signal Generator ---
* V_SIG: 1 kHz sine wave, 50 mVpp (25 mV amplitude), 0 V DC offset
V_SIG VIN_AC 0 SIN(0 25m 1k)

* --- Components ---

* Cin: 100 nF ceramic capacitor for AC coupling input
Cin VIN_AC GATE_IN 100n

* Rf: 1 MΩ resistor for negative feedback (DC biasing)
Rf GATE_IN GATE_OUT 1Meg

* U1: 74HC04 Hex Inverter
* Instantiated as a subcircuit to strictly follow pinout and wiring guide.
* Pinout: 1=1A, 2=1Y, 3=2A, 4=2Y, 5=3A, 6=3Y, 7=GND, 8=4Y, 9=4A, 10=5Y, 11=5A, 12=6Y, 13=6A, 14=VCC
* Connected: Pin 1->GATE_IN, Pin 2->GATE_OUT, Pin 7->0, Pin 14->VCC
* Unused Inputs (3, 5, 9, 11, 13) connected to 0 (Ground).
* Unused Outputs (4, 6, 8, 10, 12) left as floating nodes (NC_x).
XU1 GATE_IN GATE_OUT 0 NC_2 0 NC_3 0 NC_4 0 NC_5 0 NC_6 0 VCC 74HC04

* Cout: 10 µF electrolytic capacitor for AC coupling load
* Connected from GATE_OUT (approx 2.5V DC) to VOUT_LOAD (0V DC)
Cout GATE_OUT VOUT_LOAD 10u

* RL: 10 kΩ load resistor
RL VOUT_LOAD 0 10k

* --- Subcircuit Models ---

* Subcircuit for 74HC04 Hex Inverter
* Implements 6 inverters using robust continuous behavioral sources (tanh).
* Model assumes Vth = VCC/2.
* Gain factor 100 used to approximate open-loop gain in linear region (~250) while ensuring convergence.
.subckt 74HC04 1 2 3 4 5 6 7 8 9 10 11 12 13 14
* Pin 14 = VCC, Pin 7 = GND
* Inverter 1 (1A->1Y)
B1 2 7 V = V(14,7)/2 + (V(14,7)/2) * tanh(100 * (V(14,7)/2 - V(1,7)))
* Inverter 2 (2A->2Y)
B2 4 7 V = V(14,7)/2 + (V(14,7)/2) * tanh(100 * (V(14,7)/2 - V(3,7)))
* Inverter 3 (3A->3Y)
B3 6 7 V = V(14,7)/2 + (V(14,7)/2) * tanh(100 * (V(14,7)/2 - V(5,7)))
* Inverter 4 (4A->4Y) - Note: Pin 9 is Input, Pin 8 is Output
B4 8 7 V = V(14,7)/2 + (V(14,7)/2) * tanh(100 * (V(14,7)/2 - V(9,7)))
* Inverter 5 (5A->5Y) - Note: Pin 11 is Input, Pin 10 is Output
B5 10 7 V = V(14,7)/2 + (V(14,7)/2) * tanh(100 * (V(14,7)/2 - V(11,7)))
* Inverter 6 (6A->6Y) - Note: Pin 13 is Input, Pin 12 is Output
B6 12 7 V = V(14,7)/2 + (V(14,7)/2) * tanh(100 * (V(14,7)/2 - V(13,7)))
.ends

* --- Analysis Directives ---
* Transient analysis: 5 ms duration to capture multiple 1 kHz cycles.
.tran 10u 5m

* Output variables for batch processing
* INPUT: VIN_AC, OUTPUT: VOUT_LOAD
.print tran V(VIN_AC) V(VOUT_LOAD) V(GATE_IN) V(GATE_OUT)

.op
.end
* --- GPT review (BOM/Wiring/SPICE) ---
* circuit_ok=true
* simulation_summary: The simulation shows a functional inverting amplifier. The input signal (VIN_AC) is a ~25mV amplitude sine wave. The output (VOUT_LOAD) is an inverted sine wave with an amplitude of approximately 2.4V to 2.5V, indicating a very high gain that is causing significant clipping/saturation near the rails (approx +/- 2.5V swing). The DC bias point at GATE_IN and GATE_OUT settles near 2.5V (VCC/2) as expected for this self-biasing topology.
* bom_vs_spice equivalences ignored:
*   - U1 (74HC04) is modeled as a subcircuit using continuous behavioral voltage sources (tanh functions) to approximate the analog transfer curve of CMOS inverters.
* overall_comment: The circuit is a classic example of using a digital CMOS inverter as a linear class A amplifier. The netlist correctly implements the self-biasing scheme (Rf feedback) and AC coupling. The simulation results confirm the high open-loop gain of the HC series inverter, resulting in a heavily clipped output for a 50mVpp input. As a didactic example, it effectively demonstrates the concept, though a teacher might want to reduce the input amplitude or add an input series resistor to reduce the gain if a cleaner sine wave is desired.
* --------------------------------------

Resultados de Simulación (Transitorio)

Resultados de Simulación (Transitorio)

Análisis: The simulation shows a functional inverting amplifier. The input signal (VIN_AC) is a ~25mV amplitude sine wave. The output (VOUT_LOAD) is an inverted sine wave with an amplitude of approximately 2.4V to 2.5V, indicating a very high gain that is causing significant clipping/saturation near the rails (approx +/- 2.5V swing). The DC bias point at GATE_IN and GATE_OUT settles near 2.5V (VCC/2) as expected for this self-biasing topology.
Show raw data table (508 rows)
Index   time            v(vin_ac)       v(vout_load)    v(gate_in)      v(gate_out)
0	0.000000e+00	0.000000e+00	0.000000e+00	2.500000e+00	2.500000e+00
1	1.000000e-07	1.570796e-05	-3.92600e-03	2.500016e+00	2.496074e+00
2	2.000000e-07	3.141592e-05	-7.85100e-03	2.500031e+00	2.492149e+00
3	4.000000e-07	6.283179e-05	-1.56989e-02	2.500063e+00	2.484301e+00
4	8.000000e-07	1.256632e-04	-3.13823e-02	2.500126e+00	2.468618e+00
5	1.600000e-06	2.513232e-04	-6.26967e-02	2.500251e+00	2.437303e+00
6	3.200000e-06	5.026210e-04	-1.25097e-01	2.500501e+00	2.374901e+00
7	6.400000e-06	1.005039e-03	-2.48425e-01	2.500997e+00	2.251567e+00
8	1.280000e-05	2.008453e-03	-4.87825e-01	2.501977e+00	2.012143e+00
9	2.280000e-05	3.569178e-03	-8.34430e-01	2.503471e+00	1.665472e+00
10	3.280000e-05	5.115818e-03	-1.13904e+00	2.504919e+00	1.360762e+00
11	4.280000e-05	6.642268e-03	-1.39785e+00	2.506318e+00	1.101832e+00
12	5.280000e-05	8.142504e-03	-1.61199e+00	2.507667e+00	8.875322e-01
13	6.280000e-05	9.610606e-03	-1.78571e+00	2.508964e+00	7.136492e-01
14	7.280000e-05	1.104078e-02	-1.92461e+00	2.510208e+00	5.745580e-01
15	8.280000e-05	1.242738e-02	-2.03459e+00	2.511395e+00	4.643784e-01
16	9.280000e-05	1.376493e-02	-2.12112e+00	2.512524e+00	3.776434e-01
17	1.028000e-04	1.504816e-02	-2.18894e+00	2.513590e+00	3.096072e-01
18	1.128000e-04	1.627201e-02	-2.24200e+00	2.514591e+00	2.563270e-01
19	1.228000e-04	1.743163e-02	-2.28348e+00	2.515522e+00	2.146211e-01
20	1.328000e-04	1.852246e-02	-2.31590e+00	2.516381e+00	1.819734e-01
21	1.428000e-04	1.954019e-02	-2.34122e+00	2.517164e+00	1.564217e-01
22	1.528000e-04	2.048080e-02	-2.36095e+00	2.517868e+00	1.364514e-01
23	1.628000e-04	2.134059e-02	-2.37626e+00	2.518489e+00	1.209036e-01
... (484 more rows) ...

Errores comunes y cómo evitarlos

  1. Uso de la familia lógica incorrecta: Los estudiantes a menudo usan 74LS04 o 74HCT04. Estos tienen pull-ups internos o diferentes umbrales de entrada que impiden una polarización lineal simétrica. Solución: Asegúrese de usar el 74HC04 (CMOS) o CD4069UB.
  2. Señal de entrada demasiado grande: Aplicar una señal lógica TTL/CMOS estándar (0-5 V) resultará en una salida de onda cuadrada, no en amplificación. Solución: Mantenga la señal de entrada pequeña (por debajo de 100 mVpp) para permanecer dentro de la región lineal.
  3. Entradas no utilizadas flotantes: Dejar los pines 3, 5, 9, etc., desconectados causa ruido interno y consumo excesivo de energía. Solución: Siempre conecte las entradas no utilizadas de los chips CMOS a Tierra (0).

Solución de problemas

  • Síntoma: La salida está atascada en 0 V o 5 V.
    • Causa: Falta la resistencia de retroalimentación Rf o es un circuito abierto.
    • Solución: Verifique la continuidad de Rf (1 MΩ). Se requiere para llevar el voltaje de entrada al punto de conmutación.
  • Síntoma: Ruido de alta frecuencia superpuesto a la señal.
    • Causa: Oscilación parásita debido a alta ganancia y capacitancia parásita.
    • Solución: Acorte los cables o añada un pequeño condensador (p. ej., 10 pF) en paralelo con Rf para reducir el ancho de banda.
  • Síntoma: La ganancia es muy baja ($< 2$).
    • Causa: La resistencia de carga RL es demasiado pequeña.
    • Solución: La impedancia de salida de un 74HC04 en modo lineal es relativamente alta. Aumente RL a 100 kΩ o retírela para las pruebas.

Posibles mejoras y extensiones

  1. Oscilador de cristal: Reemplace el generador de señales con un cristal de cuarzo y dos condensadores de carga (a tierra) en los pines de entrada y salida para crear una fuente de reloj estable.
  2. Amplificador en cascada: Conecte la salida de la primera etapa (a través de un condensador) a una segunda etapa 74HC04 configurada idénticamente para lograr una ganancia de voltaje total mucho mayor.

Más Casos Prácticos en Prometeo.blog

Encuentra este producto y/o libros sobre este tema en Amazon

Ir a 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.

Quiz rápido

Pregunta 1: ¿Qué función cumple la resistencia de retroalimentación en la configuración del 74HC04 descrita?




Pregunta 2: ¿Qué función cumple la resistencia de retroalimentación en la configuración del 74HC04 descrita?




Pregunta 3: ¿Qué función cumple la resistencia de retroalimentación en la configuración del 74HC04 descrita?




Pregunta 4: ¿Qué función cumple la resistencia de retroalimentación en la configuración del 74HC04 descrita?




Pregunta 5: ¿Qué función cumple la resistencia de retroalimentación en la configuración del 74HC04 descrita?




Pregunta 6: ¿Qué función cumple la resistencia de retroalimentación en la configuración del 74HC04 descrita?




Pregunta 7: ¿Qué función cumple la resistencia de retroalimentación en la configuración del 74HC04 descrita?




Pregunta 8: ¿Qué función cumple la resistencia de retroalimentación en la configuración del 74HC04 descrita?




Pregunta 9: ¿Qué función cumple la resistencia de retroalimentación en la configuración del 74HC04 descrita?




Pregunta 10: ¿Qué función cumple la resistencia de retroalimentación en la configuración del 74HC04 descrita?




Carlos Núñez Zorrilla
Carlos Núñez Zorrilla
Electronics & Computer Engineer

Ingeniero Superior en Electrónica de Telecomunicaciones e Ingeniero en Informática (titulaciones oficiales en España).

Sígueme:


Caso práctico: Oscilador en anillo y retardo

Prototipo de Oscilador en anillo y retardo (Maker Style)

Nivel: Avanzado — Construye y analiza un oscilador en anillo de 5 etapas para calcular el retardo de propagación de los componentes.

Objetivo y caso de uso

En este caso, construirás un oscilador en anillo conectando en cascada un número impar (5) de puertas NOT (inversores) en un bucle de retroalimentación cerrado utilizando un CI 74HC04. Medirás la frecuencia de oscilación resultante para calcular el retardo de propagación intrínseco de las puertas lógicas.

Por qué es útil:
* Caracterización de procesos: Utilizado en la fabricación de semiconductores para probar la velocidad y calidad de las obleas de silicio.
* Generación de reloj: Topología fundamental para generar relojes internos en ASICs y FPGAs.
* Generación de Números Aleatorios: El jitter inherente en los osciladores en anillo es una fuente de entropía para Generadores de Números Aleatorios Verdaderos (TRNG).
* Convertidores de Tiempo a Digital (TDC): Utilizados para medir intervalos de tiempo con alta precisión.

Resultado esperado:
* Una salida de onda cuadrada estable oscilando en el rango de MHz (típicamente 20 MHz–50 MHz para lógica 74HC en una protoboard).
* Medición de la frecuencia de oscilación (fosc).
* Cálculo del retardo de propagación promedio (tpd) por puerta.
* Observación visual de los tiempos de subida (tr) y bajada (tf) debido a la carga capacitiva.

Público objetivo y nivel:
Estudiantes avanzados de electrónica; Estudiantes de ingeniería.

Materiales

  • U1: CI 74HC04 Hex Inverter, función: puertas lógicas para el anillo
  • C1: Condensador cerámico de 100 nF, función: desacoplo de la fuente de alimentación (crítico para la estabilidad)
  • C2: Condensador de 10 pF, función: carga simulada (opcional, representa la capacitancia de la sonda)
  • V1: Fuente de alimentación de 5 V DC
  • W1-W5: Cables puente (jumpers), función: conexiones entre etapas

Pin-out del CI utilizado

Chip seleccionado: 74HC04 (Hex Inverter)

Pin Nombre Función lógica Conexión en este caso
1 1 A Entrada 1 Desde Salida 5 (Nodo N5)
2 1Y Salida 1 A Entrada 2 (Nodo N1)
3 2 A Entrada 2 Desde Salida 1 (Nodo N1)
4 2Y Salida 2 A Entrada 3 (Nodo N2)
5 3 A Entrada 3 Desde Salida 2 (Nodo N2)
6 3Y Salida 3 A Entrada 4 (Nodo N3)
7 GND Tierra (Ground) Conectar a Nodo 0
8 4Y Salida 4 A Entrada 5 (Nodo N4)
9 4 A Entrada 4 Desde Salida 3 (Nodo N3)
10 5Y Salida 5 A Entrada 1 (Nodo N5 – Retroalimentación)
11 5 A Entrada 5 Desde Salida 4 (Nodo N4)
14 VCC Alimentación Conectar a Nodo VCC (+5 V)

Nota: Los pines 12 (6Y) y 13 (6 A) no se utilizan y deben dejarse abiertos o conectados a GND/VCC dependiendo de los requisitos específicos de ruido, aunque para esta prueba dejarlos abiertos es aceptable.

Guía de conexionado

Este circuito depende de una longitud de pista mínima para mantener la oscilación de alta frecuencia.

  • V1 se conecta entre el nodo VCC y el nodo 0 (GND).
  • C1 se conecta entre el nodo VCC y el nodo 0 (colocar físicamente cerca de U1).
  • U1 (Pin 14) se conecta al nodo VCC.
  • U1 (Pin 7) se conecta al nodo 0.
  • U1 (Pin 1 – Entrada 1) se conecta al nodo N5 (Cierre del bucle de retroalimentación).
  • U1 (Pin 2 – Salida 1) se conecta al nodo N1.
  • U1 (Pin 3 – Entrada 2) se conecta al nodo N1.
  • U1 (Pin 4 – Salida 2) se conecta al nodo N2.
  • U1 (Pin 5 – Entrada 3) se conecta al nodo N2.
  • U1 (Pin 6 – Salida 3) se conecta al nodo N3.
  • U1 (Pin 9 – Entrada 4) se conecta al nodo N3.
  • U1 (Pin 8 – Salida 4) se conecta al nodo N4.
  • U1 (Pin 11 – Entrada 5) se conecta al nodo N4.
  • U1 (Pin 10 – Salida 5) se conecta al nodo N5.
  • C2 (Carga opcional) se conecta entre el nodo N5 y el nodo 0 para simular la capacitancia de la sonda.

Diagrama de bloques conceptual

Conceptual block diagram — 74HC04 NOT gate
Lectura rápida: entradas → bloque principal → salida (actuador o medida). Resume el esquemático ASCII de la siguiente sección.

Esquemático

POWER SUPPLY & DECOUPLING:
      VCC (5 V) --> [ Node VCC ] --(Pin 14)--> [ U1: 74HC04 Power ]
                      |
                    [ C1: 100nF ]
                      |
      GND (0 V) --> [ Node 0 ] --(Pin 7)---> [ U1: 74HC04 GND ]


SIGNAL FLOW (RING OSCILLATOR):
(Logic flows Left to Right, wrapping around at the end)

      [ Feedback N5 ] --> [ U1: Gate 1 ] --(Node N1)--> [ U1: Gate 2 ] --(Node N2)--> [ U1: Gate 3 ] --(Node N3)--> \
      (Input Pin 1)       (In:1 / Out:2)                (In:3 / Out:4)                (In:5 / Out:6)                |
                                                                                                                    |
      /-------------------------------------------------------------------------------------------------------------/
      |
      \--> [ U1: Gate 4 ] --(Node N4)--> [ U1: Gate 5 ] --(Node N5)--> [ C2: 10pF ] --> GND
           (In:9 / Out:8)                (In:11 / Out:10)      |
                                                               |
                                                      (Loop back to Start)
Esquema Eléctrico

Tabla de verdad (Puerta NOT simple)

Entrada (A) Salida (Y)
L H
H L

En una configuración de anillo con un número impar de etapas, la lógica nunca se estabiliza, causando una oscilación perpetua.

Mediciones y pruebas

  1. Configuración: Asegura que el cableado sea corto y ordenado. Los cables largos añaden inductancia y capacitancia parásitas que reducirán significativamente la frecuencia.
  2. Visualización: Conecta una sonda de osciloscopio (se recomienda atenuación x10 para reducir la carga) al Nodo N5 (o cualquier nodo N1 a N4).
  3. Medición de frecuencia: Mide la frecuencia de la oscilación (fosc). Para una serie 74HC a 5 V, espera aprox. 20MHz – 40MHz dependiendo de la capacitancia parásita.
  4. Cálculo del retardo de propagación: Calcula el retardo de propagación promedio por puerta (tpd) usando la fórmula:
    $tpd = (1 / (2 × N × fosc))$
    Donde $N = 5$ (número de etapas).
    Ejemplo: Si $f_{osc} = 25 MHz$, entonces $T = 40 ns$. $t_{pd} = 40 ns / 10 = 4 ns$.
  5. Análisis de forma de onda: Haz zoom en los flancos. Observa que la onda no es un cuadrado perfecto; el tiempo de subida ($t_{r}$) y el tiempo de bajada ($t_{f}$) son visibles debido a la carga capacitiva de la entrada de la siguiente puerta.

Netlist SPICE y simulación

Netlist SPICE de referencia (ngspice) — extractoNetlist SPICE completo (ngspice)

* Practical case: Ring Oscillator and Delay
.width out=256
* Ngspice Netlist

* --- Power Supply ---
* V1: 5 V DC supply connecting VCC to GND (0)
V1 VCC 0 DC 5

* --- Decoupling Capacitor ---
* C1: 100 nF ceramic capacitor, power supply decoupling
C1 VCC 0 100n

* --- Integrated Circuit U1: 74HC04 Hex Inverter ---
* Modeled as a subcircuit to strictly follow physical pinout and wiring guide.
* Pin Mapping (Standard DIP-14):
* 1:1A  2:1Y  3:2A  4:2Y  5:3A  6:3Y  7:GND
* 8:4Y  9:4A 10:5Y 11:5A 12:6Y 13:6A 14:VCC
*
* Wiring Connections based on Guide:
* Pin 1 (In1)  -> N5
* ... (truncated in public view) ...

Copia este contenido en un archivo .cir y ejecútalo con ngspice.

🔒 Parte del contenido de esta sección es premium. Con el pase de 7 días o la suscripción mensual tendrás acceso al contenido completo (materiales, conexionado, compilación detallada, validación paso a paso, troubleshooting, mejoras/variantes y checklist) y podrás descargar el pack PDF listo para imprimir.

* Practical case: Ring Oscillator and Delay
.width out=256
* Ngspice Netlist

* --- Power Supply ---
* V1: 5 V DC supply connecting VCC to GND (0)
V1 VCC 0 DC 5

* --- Decoupling Capacitor ---
* C1: 100 nF ceramic capacitor, power supply decoupling
C1 VCC 0 100n

* --- Integrated Circuit U1: 74HC04 Hex Inverter ---
* Modeled as a subcircuit to strictly follow physical pinout and wiring guide.
* Pin Mapping (Standard DIP-14):
* 1:1A  2:1Y  3:2A  4:2Y  5:3A  6:3Y  7:GND
* 8:4Y  9:4A 10:5Y 11:5A 12:6Y 13:6A 14:VCC
*
* Wiring Connections based on Guide:
* Pin 1 (In1)  -> N5
* Pin 2 (Out1) -> N1
* Pin 3 (In2)  -> N1
* Pin 4 (Out2) -> N2
* Pin 5 (In3)  -> N2
* Pin 6 (Out3) -> N3
* Pin 7 (GND)  -> 0
* Pin 8 (Out4) -> N4
* Pin 9 (In4)  -> N3
* Pin 10 (Out5)-> N5
* Pin 11 (In5) -> N4
* Pin 12 (Out6)-> NC_OUT (Unused)
* Pin 13 (In6) -> NC_IN  (Unused)
* Pin 14 (VCC) -> VCC

XU1 N5 N1 N1 N2 N2 N3 0 N4 N3 N5 N4 NC_OUT NC_IN VCC 74HC04

* --- Load Capacitor ---
* C2: 10 pF capacitor, simulated load on Output Node N5
C2 N5 0 10p

* --- Unused Pin Termination ---
* High resistance to ground to prevent floating node errors
R_NC1 NC_OUT 0 1G
R_NC2 NC_IN 0 1G

* --- Subcircuit Definitions ---

.subckt 74HC04 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    * Local Power: 14=VCC, 7=GND
    * Gate 1
    X1 1 2 14 7 inv_gate
    * Gate 2
    X2 3 4 14 7 inv_gate
    * Gate 3
    X3 5 6 14 7 inv_gate
    * Gate 4 (Note: Pin 9 is Input, Pin 8 is Output)
    X4 9 8 14 7 inv_gate
    * Gate 5 (Note: Pin 11 is Input, Pin 10 is Output)
    X5 11 10 14 7 inv_gate
    * Gate 6 (Unused)
    X6 13 12 14 7 inv_gate
.ends

.subckt inv_gate in out vcc gnd
    * Internal RC Delay Stage
    * Essential for Ring Oscillator simulation to function (creates phase shift)
    * R=1k, C=10p yields approx 10ns delay per stage
    R_delay in int 1k
    C_delay int gnd 10p
    
    * Behavioral Voltage Source (Sigmoid Inverter)
    * Uses continuous function for convergence: Vout = Vcc / (1 + exp(k*(Vin - Vcc/2)))
    * Gain factor k=10
    B_logic out gnd V=V(vcc) / (1 + exp(10 * (V(int) - V(vcc)/2)))
.ends

* --- Simulation Directives ---

* Initial Condition:
* Force node N1 to 0V at t=0 to prevent metastable state (kickstart oscillation)
.ic V(N1)=0

* Transient Analysis:
* Run for 2 microseconds, step size 1 nanosecond
* 'uic' (Use Initial Conditions) is required for .ic to take effect
.tran 1n 2u uic

* Operating Point (for check)
.op

* Output Printing:
* V(N5) is the primary OSC_OUT node
.print tran V(N5) V(N1) V(N2) V(N3) V(N4)

.end
* --- GPT review (BOM/Wiring/SPICE) ---
* circuit_ok=true
* simulation_summary: The transient analysis shows sustained oscillation on nodes N1 through N5. The voltages swing between ~0V and ~5V. The frequency can be inferred from the timestamps (e.g., N5 rising edges around 1.43us and subsequent cycles), confirming the ring oscillator behavior.
* bom_vs_spice equivalences ignored:
*   - U1 (74HC04 Hex Inverter) is modeled as a subcircuit using behavioral voltage sources and RC delay stages to simulate propagation delay and logic inversion.
* overall_comment: The circuit is well-modeled for a didactic example. The inclusion of internal RC delay stages inside the inverter subcircuit is crucial for a ring oscillator simulation, as ideal SPICE inverters often fail to oscillate or converge without explicit time-dependent behavior. The initial condition (.ic V(N1)=0) correctly kickstarts the oscillation. The connectivity matches the wiring guide perfectly.
* --------------------------------------

Resultados de Simulación (Transitorio)

Resultados de Simulación (Transitorio)

Análisis: The transient analysis shows sustained oscillation on nodes N1 through N5. The voltages swing between ~0V and ~5V. The frequency can be inferred from the timestamps (e.g., N5 rising edges around 1.43us and subsequent cycles), confirming the ring oscillator behavior.
Show raw data table (2039 rows)
Index   time            v(n5)           v(n1)           v(n2)           v(n3)           v(n4)
0	1.000000e-11	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
1	1.028000e-11	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
2	1.084000e-11	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
3	1.196000e-11	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
4	1.420000e-11	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
5	1.868000e-11	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
6	2.764000e-11	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
7	4.556000e-11	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
8	8.140000e-11	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
9	1.530800e-10	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
10	2.964400e-10	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
11	5.831600e-10	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
12	1.000000e-09	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
13	1.057344e-09	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
14	1.172032e-09	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
15	1.401408e-09	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
16	1.860160e-09	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00	5.000000e+00
17	2.777664e-09	4.999998e+00	4.999998e+00	4.999998e+00	4.999998e+00	4.999998e+00
18	3.777664e-09	4.999526e+00	4.999526e+00	4.999526e+00	4.999526e+00	4.999526e+00
19	4.777664e-09	4.987728e+00	4.987728e+00	4.987728e+00	4.987728e+00	4.987728e+00
20	5.777664e-09	4.795985e+00	4.795985e+00	4.795985e+00	4.795985e+00	4.795985e+00
21	6.777664e-09	3.794650e+00	3.794650e+00	3.794650e+00	3.794650e+00	3.794650e+00
22	7.777664e-09	2.828762e+00	2.828762e+00	2.828762e+00	2.828762e+00	2.828762e+00
23	8.777664e-09	2.564867e+00	2.564867e+00	2.564867e+00	2.564867e+00	2.564867e+00
... (2015 more rows) ...

Errores comunes y cómo evitarlos

  1. Usar un número par de puertas: Si usas 4 o 6 puertas, la lógica se asentará en un estado estable (enclavamiento) en lugar de oscilar. Usa siempre un número impar (3, 5, 7…).
  2. Capacitancia de la protoboard: Las protoboards estándar tienen una alta capacitancia parásita entre filas (aprox. 2-5pF). Esto hará que el oscilador funcione más lento de lo que implican las especificaciones de la hoja de datos. Evita bucles largos de cables.
  3. Falta del condensador de desacoplo: Sin C1 cerca del chip, la corriente de conmutación de alta frecuencia causará caídas en VCC, resultando en una frecuencia errática o ausencia de oscilación.

Solución de problemas

  • La salida está atascada en Alto o Bajo: Comprueba que tienes un número impar de inversores en el bucle. Verifica que el cable de retroalimentación conecta la última salida a la primera entrada.
  • La frecuencia es inestable (jitter): Probablemente ruido en la fuente de alimentación. Asegúrate de que C1 (100nF) esté instalado extremadamente cerca de los pines 14 y 7.
  • El osciloscopio muestra una onda sinusoidal en lugar de cuadrada: A frecuencias muy altas (acercándose al límite de ancho de banda del osciloscopio o sonda), las ondas cuadradas parecen ondas sinusoidales debido a la atenuación de los armónicos superiores. Asegúrate de que el ancho de banda de tu osciloscopio sea de al menos 100 MHz.
  • El circuito se calienta: Busca cortocircuitos entre salidas. Nunca conectes dos salidas juntas.

Posibles mejoras y extensiones

  1. Control de habilitación: Reemplaza el primer inversor con una puerta NAND (por ejemplo, usando 74HC00). Usa una entrada para el bucle de retroalimentación y la otra como señal de control de Habilitar/Deshabilitar.
  2. Salida con buffer: Usa el sexto inversor no utilizado en el paquete 74HC04 como un buffer conectado a uno de los nodos del anillo. Conecta tu sonda/carga a esta salida del buffer. Esto aísla el oscilador en anillo de la capacitancia de carga, proporcionando una medición de frecuencia más precisa.

Más Casos Prácticos en Prometeo.blog

Encuentra este producto y/o libros sobre este tema en Amazon

Ir a 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.

Quiz rápido

Pregunta 1: ¿Cuál es la condición fundamental respecto al número de etapas para que un oscilador en anillo funcione correctamente?




Pregunta 2: ¿Qué parámetro físico intrínseco de las puertas lógicas se busca calcular principalmente con este experimento?




Pregunta 3: ¿Cuál es la función típica de un condensador de desacoplo (como el C1 de 100 nF) en este tipo de circuitos?




Pregunta 4: ¿Qué circuito integrado específico se utiliza en este caso para construir el oscilador?




Pregunta 5: ¿Cuál es el rango de frecuencia de oscilación esperado para la lógica 74HC en una protoboard?




Pregunta 6: ¿Qué característica del oscilador en anillo se aprovecha para los Generadores de Números Aleatorios Verdaderos (TRNG)?




Pregunta 7: ¿Qué tipo de forma de onda se espera obtener a la salida del oscilador?




Pregunta 8: ¿Para qué se utiliza esta topología en la fabricación de semiconductores?




Pregunta 9: ¿Qué tipo de puerta lógica compone las etapas del oscilador en anillo descrito?




Pregunta 10: Si aumentáramos el número de etapas de 5 a 7, ¿qué ocurriría con la frecuencia de oscilación?




Carlos Núñez Zorrilla
Carlos Núñez Zorrilla
Electronics & Computer Engineer

Ingeniero Superior en Electrónica de Telecomunicaciones e Ingeniero en Informática (titulaciones oficiales en España).

Sígueme:


Caso práctico: Divisor de frecuencia por 2, 4 y 8

Prototipo de Divisor de frecuencia por 2, 4 y 8 (Maker Style)

Nivel: Básico – Verificar la relación de división de frecuencia en las salidas Q de un contador binario con respecto al reloj.

Objetivo y caso de uso

En este caso práctico, construirá un circuito digital utilizando un contador binario de 4 bits (74HC393) para dividir la frecuencia de una señal de reloj de entrada por factores de 2 (2^1), 4 (2^2) y 8 (2^3).

  • Relojes digitales: Se utilizan para dividir señales de osciladores de cristal de alta frecuencia hasta 1 Hz para mantener el tiempo (segundos).
  • Síntesis de audio: Se utiliza para generar octavas más bajas a partir de un tono base (la reducción de la frecuencia a la mitad da como resultado un tono una octava más bajo).
  • Generación de velocidad de baudios: Se utiliza en la comunicación UART para derivar velocidades de transmisión de datos específicas a partir de un reloj maestro del sistema.
  • Contadores de direcciones: Se utilizan para secuenciar direcciones de memoria en microcontroladores.

Resultado esperado:
* Salida Q0: Una onda cuadrada con una frecuencia exactamente la mitad del reloj de entrada (f/2).
* Salida Q1: Una onda cuadrada con una frecuencia de un cuarto del reloj de entrada (f/4).
* Salida Q2: Una onda cuadrada con una frecuencia de un octavo del reloj de entrada (f/8).
* Público objetivo: Estudiantes de nivel básico y aficionados.

Materiales

  • V1: Fuente de alimentación de 5 V CC, función: Fuente de alimentación principal.
  • V_CLK: Generador de pulsos (0 V a 5 V, 1 kHz, ciclo de trabajo del 50%), función: Señal de reloj de entrada.
  • U1: 74HC393, función: Contador binario dual de 4 bits.
  • R1: Resistencia de 330 Ω, función: Limitación de corriente para el LED D1.
  • R2: Resistencia de 330 Ω, función: Limitación de corriente para el LED D2.
  • R3: Resistencia de 330 Ω, función: Limitación de corriente para el LED D3.
  • D1: LED rojo, función: Indicador visual para Q0 (f/2).
  • D2: LED verde, función: Indicador visual para Q1 (f/4).
  • D3: LED amarillo, función: Indicador visual para Q2 (f/8).
  • Scope: Osciloscopio de 4 canales, función: Análisis de formas de onda.

Pin-out del CI utilizado

Chip seleccionado: 74HC393 (Contador binario dual de 4 bits). Usaremos el primer bloque contador (Lado 1).

Pin Nombre Función lógica Conexión en este caso
1 1CP (CLK) Entrada de reloj (Disparo por flanco de bajada) Conectado a CLK_IN
2 1MR Reset maestro (Activo en alto) Conectado a 0 (GND)
3 1Q0 Salida Bit 0 (Divide por 2) Conectado a Q0
4 1Q1 Salida Bit 1 (Divide por 4) Conectado a Q1
5 1Q2 Salida Bit 2 (Divide por 8) Conectado a Q2
7 GND Tierra Conectado a 0
14 VCC Alimentación (+5 V) Conectado a VCC

Guía de conexionado

  • V1 se conecta entre el nodo VCC y el nodo 0 (GND).
  • U1 pin 14 se conecta al nodo VCC.
  • U1 pin 7 se conecta al nodo 0 (GND).
  • U1 pin 2 (Reset) se conecta al nodo 0 (GND) para habilitar el conteo.
  • V_CLK se conecta entre el nodo CLK_IN y el nodo 0 (GND).
  • U1 pin 1 se conecta al nodo CLK_IN.
  • U1 pin 3 se conecta al nodo Q0.
  • U1 pin 4 se conecta al nodo Q1.
  • U1 pin 5 se conecta al nodo Q2.
  • R1 se conecta entre el nodo Q0 y el nodo LED_Q0.
  • D1 el ánodo se conecta a LED_Q0, el cátodo se conecta a 0 (GND).
  • R2 se conecta entre el nodo Q1 y el nodo LED_Q1.
  • D2 el ánodo se conecta a LED_Q1, el cátodo se conecta a 0 (GND).
  • R3 se conecta entre el nodo Q2 y el nodo LED_Q2.
  • D3 el ánodo se conecta a LED_Q2, el cátodo se conecta a 0 (GND).

Diagrama de bloques conceptual

Conceptual block diagram — 74HC393 Binary counter
Lectura rápida: entradas → bloque principal → salida (actuador o medida). Resume el esquemático ASCII de la siguiente sección.

Esquemático

INPUTS                                   PROCESSING                                     OUTPUTS / LOADS
(Left)                                    (Center)                                          (Right)

                                   +-----------------------+
                                   |                       |
 [ V_CLK: 1kHz ] --(Pin 1: CP)---> |                       | --(Pin 3: Q0)--> [ R1: 330 ] --> [ D1: Red ] --> GND
                                   |                       |       |
                                   |      U1: 74HC393      |       '--------(Scope Ch1: f/2)
                                   |      Dual 4-bit       |
                                   |      Bin Counter      |
 [ GND ] ---------(Pin 2: MR)--->  |                       | --(Pin 4: Q1)--> [ R2: 330 ] --> [ D2: Grn ] --> GND
             (Reset Disabled)      |   (Power: VCC=Pin 14, |       |
                                   |           GND=Pin 7)  |       '--------(Scope Ch2: f/4)
                                   |                       |
                                   |                       |
                                   |                       | --(Pin 5: Q2)--> [ R3: 330 ] --> [ D3: Yel ] --> GND
                                   |                       |       |
                                   +-----------------------+       '--------(Scope Ch3: f/8)
Esquema Eléctrico

Mediciones y pruebas

Para validar el circuito, realice las siguientes mediciones utilizando el osciloscopio de 4 canales:

  1. Configuración: Conecte la pinza de tierra de todas las sondas del osciloscopio al nodo 0 (GND).
  2. Canal 1 (Entrada): Conecte a CLK_IN. Verifique que la frecuencia sea de 1 kHz.
  3. Canal 2 (Q0): Conecte a Q0. Mida la frecuencia. Debe ser 500 Hz ($1kHz / 2$).
  4. Canal 3 (Q1): Conecte a Q1. Mida la frecuencia. Debe ser 250 Hz ($1kHz / 4$).
  5. Canal 4 (Q2): Conecte a Q2. Mida la frecuencia. Debe ser 125 Hz ($1kHz / 8$).
  6. Comprobación visual: Si reduce la frecuencia del reloj de entrada a 10 Hz, debería ver a D1 parpadear más rápido, D2 más lento y D3 el más lento.

Netlist SPICE y simulación

Netlist SPICE de referencia (ngspice) — extractoNetlist SPICE completo (ngspice)

* Practical case: Frequency divider by 2, 4 and 8

.width out=256

* --- Models ---
* Generic LED Model
.model DLED D(IS=1e-14 N=2 RS=10 BV=5 IBV=10u CJO=10p)

* --- Power Supply ---
* V1: 5V Main Supply
V1 VCC 0 DC 5

* --- Input Signal ---
* V_CLK: 1kHz Pulse, 0V to 5V, 50% Duty Cycle
V_CLK CLK_IN 0 PULSE(0 5 0 1u 1u 0.5m 1m)

* --- Subcircuit: 74HC393 (Behavioral XSPICE) ---
* Dual 4-bit Binary Counter
* Implements Counter 1 logic using XSPICE primitives.
* Pinout (DIP-14): 1=1CP, 2=1MR, 3=1Q0, 4=1Q1, 5=1Q2, 6=1Q3, 7=GND
* ... (truncated in public view) ...

Copia este contenido en un archivo .cir y ejecútalo con ngspice.

🔒 Parte del contenido de esta sección es premium. Con el pase de 7 días o la suscripción mensual tendrás acceso al contenido completo (materiales, conexionado, compilación detallada, validación paso a paso, troubleshooting, mejoras/variantes y checklist) y podrás descargar el pack PDF listo para imprimir.

* Practical case: Frequency divider by 2, 4 and 8

.width out=256

* --- Models ---
* Generic LED Model
.model DLED D(IS=1e-14 N=2 RS=10 BV=5 IBV=10u CJO=10p)

* --- Power Supply ---
* V1: 5V Main Supply
V1 VCC 0 DC 5

* --- Input Signal ---
* V_CLK: 1kHz Pulse, 0V to 5V, 50% Duty Cycle
V_CLK CLK_IN 0 PULSE(0 5 0 1u 1u 0.5m 1m)

* --- Subcircuit: 74HC393 (Behavioral XSPICE) ---
* Dual 4-bit Binary Counter
* Implements Counter 1 logic using XSPICE primitives.
* Pinout (DIP-14): 1=1CP, 2=1MR, 3=1Q0, 4=1Q1, 5=1Q2, 6=1Q3, 7=GND
*                  8=2Q3, 9=2Q2, 10=2Q1, 11=2Q0, 12=2MR, 13=2CP, 14=VCC
.subckt 74HC393 1CP 1MR 1Q0 1Q1 1Q2 1Q3 GND 2Q3 2Q2 2Q1 2Q0 2MR 2CP VCC

    * ADC Bridge to read analog inputs (Clock and Reset)
    .model adc_mod adc_bridge(in_low=1.5 in_high=3.5)
    A_IN [1CP 1MR] [d_1cp d_1mr] adc_mod
    
    * ADC Bridge to read GND for Logic Low (used for SET inputs)
    A_GND [GND] [d_low] adc_mod

    * Logic Models
    .model inv_mod d_inverter(rise_delay=10n fall_delay=10n)
    .model dff_mod d_dff(clk_delay=10n rise_delay=10n fall_delay=10n)
    .model dac_mod dac_bridge(out_low=0.0 out_high=5.0)

    * --- Counter Logic (Side 1) ---
    * 74HC393 triggers on High-to-Low transition of CP.
    * XSPICE DFF triggers on Rising Edge. So we invert CP.
    A_INV1 d_1cp d_1cp_inv inv_mod

    * Stage 1 (Q0): Divider by 2
    * T-FF behavior: D = ~Q. Clock = ~CP. Reset = MR.
    * Port order: din clk set reset out nout
    A_DFF1 d_1q0_bar d_1cp_inv d_low d_1mr d_1q0 d_1q0_bar dff_mod

    * Stage 2 (Q1): Divider by 4
    * Ripples from Q0 Falling Edge.
    * Q0 Falling = ~Q0 Rising. Use d_1q0_bar as clock.
    A_DFF2 d_1q1_bar d_1q0_bar d_low d_1mr d_1q1 d_1q1_bar dff_mod

    * Stage 3 (Q2): Divider by 8
    * Ripples from Q1 Falling Edge. Use d_1q1_bar as clock.
    A_DFF3 d_1q2_bar d_1q1_bar d_low d_1mr d_1q2 d_1q2_bar dff_mod

    * Stage 4 (Q3): Divider by 16 (Not used externally but part of logic)
    A_DFF4 d_1q3_bar d_1q2_bar d_low d_1mr d_1q3 d_1q3_bar dff_mod

    * Drive Outputs
    A_OUT [d_1q0 d_1q1 d_1q2 d_1q3] [1Q0 1Q1 1Q2 1Q3] dac_mod

    * Side 2 is unused, inputs grounded in main circuit, outputs open.
.ends 74HC393

* --- Main Circuit Instances ---
* U1: 74HC393 Counter
* Pin connections based on Wiring Guide:
* 1(CLK_IN), 2(0/Reset), 3(Q0), 4(Q1), 5(Q2), 7(0/GND), 14(VCC)
* Unused outputs mapped to NC nodes. Unused inputs to 0.
* Subcircuit Pin Order: 1CP 1MR 1Q0 1Q1 1Q2 1Q3 GND 2Q3 2Q2 2Q1 2Q0 2MR 2CP VCC
XU1 CLK_IN 0 Q0 Q1 Q2 NC_1Q3 0 NC_2Q3 NC_2Q2 NC_2Q1 NC_2Q0 0 0 VCC 74HC393

* --- Output Paths (LEDs and Resistors) ---
* Path 1: Q0 -> R1 -> D1 (Red)
R1 Q0 LED_Q0 330
D1 LED_Q0 0 DLED

* Path 2: Q1 -> R2 -> D2 (Green)
R2 Q1 LED_Q1 330
D2 LED_Q1 0 DLED

* Path 3: Q2 -> R3 -> D3 (Yellow)
R3 Q2 LED_Q2 330
D3 LED_Q2 0 DLED

* --- Simulation & Output ---
.op
.tran 10u 20m
.print tran V(CLK_IN) V(Q0) V(Q1) V(Q2)

.end
* --- GPT review (BOM/Wiring/SPICE) ---
* circuit_ok=true
* simulation_summary: The simulation shows a clear binary counting sequence. CLK_IN is a 1kHz clock (period 1ms). Q0 toggles every 1ms (f/2, period 2ms). Q1 toggles every 2ms (f/4, period 4ms). Q2 toggles every 4ms (f/8, period 8ms). The outputs transition cleanly between 0V and 5V.
* bom_vs_spice equivalences ignored:
*   - LEDs (D1, D2, D3) are modeled using a generic diode model (DLED) with specific parameters.
*   - U1 (74HC393) is modeled as a behavioral subcircuit using XSPICE primitives (ADC/DAC bridges, DFFs) instead of a transistor-level model.
* overall_comment: The circuit is perfectly functional and accurately represents a 3-bit binary ripple counter (frequency divider). The behavioral model for the 74HC393 is correctly implemented with the necessary ADC/DAC bridges for XSPICE. The wiring matches the guide exactly, and the simulation results confirm the expected frequency division ratios (f/2, f/4, f/8). It is an excellent didactic example.
* --------------------------------------

Resultados de Simulación (Transitorio)

Resultados de Simulación (Transitorio)

Análisis: The simulation shows a clear binary counting sequence. CLK_IN is a 1kHz clock (period 1ms). Q0 toggles every 1ms (f/2, period 2ms). Q1 toggles every 2ms (f/4, period 4ms). Q2 toggles every 4ms (f/8, period 8ms). The outputs transition cleanly between 0V and 5V.
Show raw data table (3323 rows)
Index   time            v(clk_in)       v(q0)           v(q1)           v(q2)
0	0.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
1	1.000000e-08	5.000000e-02	0.000000e+00	0.000000e+00	0.000000e+00
2	2.000000e-08	1.000000e-01	0.000000e+00	0.000000e+00	0.000000e+00
3	4.000000e-08	2.000000e-01	0.000000e+00	0.000000e+00	0.000000e+00
4	8.000000e-08	4.000000e-01	0.000000e+00	0.000000e+00	0.000000e+00
5	1.600000e-07	8.000000e-01	0.000000e+00	0.000000e+00	0.000000e+00
6	3.200000e-07	1.600000e+00	0.000000e+00	0.000000e+00	0.000000e+00
7	6.400000e-07	3.200000e+00	0.000000e+00	0.000000e+00	0.000000e+00
8	1.000000e-06	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
9	1.064000e-06	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
10	1.192000e-06	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
11	1.448000e-06	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
12	1.960000e-06	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
13	2.984000e-06	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
14	5.032000e-06	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
15	9.128000e-06	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
16	1.732000e-05	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
17	2.732000e-05	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
18	3.732000e-05	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
19	4.732000e-05	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
20	5.732000e-05	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
21	6.732000e-05	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
22	7.732000e-05	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
23	8.732000e-05	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
... (3299 more rows) ...

Errores comunes y cómo evitarlos

  1. Dejar flotante el pin Master Reset (MR): Dejar el pin 2 desconectado provoca que el contador se reinicie aleatoriamente debido al ruido. Solución: Conecte siempre el pin MR a GND (Lógica 0) para un funcionamiento normal de conteo.
  2. Confundir los números de los pines: El 74HC393 tiene dos contadores en su interior. Los estudiantes a menudo mezclan los pines del Contador 1 y del Contador 2. Solución: Siga estrictamente la hoja de datos (datasheet) y utilice los pines 1, 2, 3, 4, 5 y 6 solo para el primer contador.
  3. Ignorar VCC/GND: Olvidar alimentar el chip conduce a una salida impredecible o sin actividad. Solución: Conecte siempre el Pin 14 a +5 V y el Pin 7 a GND antes de realizar pruebas.

Solución de problemas

  • Síntoma: Ningún LED se enciende y las salidas permanecen en 0 V.
    • Causa: El Master Reset (Pin 2) podría estar conectado a VCC en lugar de a GND.
    • Solución: Mueva la conexión del Pin 2 a GND.
  • Síntoma: Los LED están siempre encendidos o parpadean muy tenuemente.
    • Causa: La frecuencia es demasiado alta para que el ojo vea el parpadeo (por ejemplo, 1 kHz).
    • Solución: Utilice el osciloscopio para verificar la señal o reduzca la frecuencia de V_CLK a < 10 Hz para confirmación visual.
  • Síntoma: La frecuencia de salida es inestable o errática.
    • Causa: Fuente de alimentación ruidosa o falta de condensador de desacoplo.
    • Solución: Añada un condensador de 100 nF entre VCC y GND cerca del CI.

Posibles mejoras y extensiones

  1. Dividir por 16 y 256: Conecte en cascada el primer contador al segundo contador del chip U1 (conecte 1Q3 a 2CP) para lograr relaciones de división más altas hasta 256.
  2. Generador de audio variable: Conecte las salidas a un controlador de altavoz simple y utilice un potenciómetro variable en un temporizador 555 (como reloj) para escuchar cómo el tono cae por octavas al cambiar entre Q0, Q1 y Q2.

Más Casos Prácticos en Prometeo.blog

Encuentra este producto y/o libros sobre este tema en Amazon

Ir a 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.

Quiz rápido

Pregunta 1: ¿Cuál es el componente principal utilizado en este circuito para la división de frecuencia?




Pregunta 2: ¿Qué operación realiza el contador binario sobre la frecuencia de la señal de reloj de entrada?




Pregunta 3: Si la frecuencia de entrada es 'f', ¿cuál es la frecuencia esperada en la salida Q0?




Pregunta 4: ¿Por qué factor divide la frecuencia la salida Q1 (2^2)?




Pregunta 5: Si la señal de reloj de entrada es de 100 Hz, ¿cuál será la frecuencia en la salida Q2 (división por 8)?




Pregunta 6: En el contexto de síntesis de audio, ¿qué resultado produce reducir la frecuencia a la mitad?




Pregunta 7: ¿Cuál es la utilidad de la división de frecuencia en los relojes digitales?




Pregunta 8: ¿De cuántos bits es el contador binario 74HC393 mencionado en el objetivo?




Pregunta 9: ¿Qué tipo de forma de onda se espera obtener en las salidas Q del contador?




Pregunta 10: ¿Para qué aplicación se utiliza la generación de velocidad de baudios mencionada en el contexto?




Carlos Núñez Zorrilla
Carlos Núñez Zorrilla
Electronics & Computer Engineer

Ingeniero Superior en Electrónica de Telecomunicaciones e Ingeniero en Informática (titulaciones oficiales en España).

Sígueme:


Caso práctico: Contador ascendente de 4 bits con LEDs

Prototipo de Contador ascendente de 4 bits con LEDs (Maker Style)

Nivel: Básico. Verifique el funcionamiento de un contador binario de 4 bits visualizando la secuencia de conteo con LEDs.

Objetivo y caso de uso

En este caso práctico, construirá un circuito digital síncrono utilizando el circuito integrado 74HC161 para contar pulsos de reloj en binario desde 0 (0000) hasta 15 (1111). Visualizará los estados de salida utilizando cuatro LEDs que representan los bits desde LSB (Bit menos significativo) hasta MSB (Bit más significativo).

Por qué es útil:
* Relojes digitales: Forma el bloque fundamental para el seguimiento del tiempo (segundos, minutos, horas).
* División de frecuencia: Los contadores se utilizan para reducir señales de reloj de alta frecuencia a frecuencias más bajas y utilizables para otros componentes.
* Direccionamiento de memoria: En sistemas informáticos, los contadores generan direcciones secuenciales para acceder a datos en la memoria.
* Conteo de eventos: Útil en automatización industrial para contar artículos en una cinta transportadora o activaciones de sensores.
* Máquinas de estados: Proporciona la secuencia de estados requerida para controlar operaciones lógicas digitales complejas.

Resultado esperado:
* Cuatro LEDs (D1–D4) se encenderán en un patrón binario (0000, 0001, 0010… 1111).
* La secuencia se repite cada 16 pulsos de reloj.
* Activar el interruptor de reset fuerza a que todos los LEDs se apaguen inmediatamente.
* Tensión de salida de Lógica Alta aprox. 5 V; Lógica Baja aprox. 0 V.

Público objetivo y nivel:
Estudiantes y aficionados familiarizados con niveles lógicos básicos que se inician en el diseño de lógica secuencial.

Materiales

  • U1: 74HC161, función: CI contador binario síncrono de 4 bits
  • V1: Fuente de alimentación de 5 V CC, función: fuente de alimentación principal
  • V2: Fuente de tensión pulsada (0 V a 5 V), función: Señal de reloj (1 Hz para visualización)
  • R1: Resistencia de 330 Ω, función: limitación de corriente para el LED Q0
  • R2: Resistencia de 330 Ω, función: limitación de corriente para el LED Q1
  • R3: Resistencia de 330 Ω, función: limitación de corriente para el LED Q2
  • R4: Resistencia de 330 Ω, función: limitación de corriente para el LED Q3
  • R5: Resistencia de 10 kΩ, función: pull-up para Master Reset
  • D1: LED rojo, función: Indicador para Q0 (LSB)
  • D2: LED rojo, función: Indicador para Q1
  • D3: LED rojo, función: Indicador para Q2
  • D4: LED rojo, función: Indicador para Q3 (MSB)
  • S1: Pulsador momentáneo (normalmente abierto), función: disparador de Reset

Pin-out del CI utilizado

Chip seleccionado: 74HC161 (Contador Binario Síncrono de 4 bits, Reset Asíncrono)

Pin Nombre Función lógica Conexión en este caso
1 \overlineMR Master Reset (Activo bajo) Conectado al nodo Reset (S1/R5)
2 CP Pulso de reloj (Flanco ascendente) Conectado a V2 (Fuente de reloj)
7 CEP Habilitación de conteo paralelo Conectado a VCC (Siempre habilitado)
8 GND Tierra Conectado a 0 (GND)
9 \overlinePE Habilitación paralela (Carga) Conectado a VCC (Deshabilitado)
10 CET Habilitación de conteo «Trickle» Conectado a VCC (Siempre habilitado)
11 Q3 Bit de salida 3 (MSB) Conectado a D4 a través de R4
12 Q2 Bit de salida 2 Conectado a D3 a través de R3
13 Q1 Bit de salida 1 Conectado a D2 a través de R2
14 Q0 Bit de salida 0 (LSB) Conectado a D1 a través de R1
16 VCC Alimentación (+5 V) Conectado a VCC

Nota: Los pines 3, 4, 5, 6 (Entradas de datos paralelos) y 15 (Salida de acarreo «Ripple Carry») no se utilizan en esta configuración básica de conteo y las entradas pueden conectarse a tierra si se prefiere, aunque normalmente son irrelevantes cuando la Carga (Load) está deshabilitada.

Guía de conexionado

Construya el circuito siguiendo estas conexiones de nodos explícitas:

  • Nodos de alimentación:

    • Conecte el terminal positivo de V1 al nodo VCC.
    • Conecte el terminal negativo de V1 al nodo 0 (GND).
    • Conecte el pin 16 de U1 a VCC.
    • Conecte el pin 8 de U1 a 0.
  • Entradas de control:

    • Conecte el positivo de V2 (Fuente de reloj) al nodo CLK. Conecte el negativo de V2 a 0.
    • Conecte el pin 2 de U1 al nodo CLK.
    • Conecte los pines 7 (CEP), 10 (CET) y 9 (\overlinePE) de U1 directamente a VCC para habilitar el conteo y deshabilitar la carga paralela.
    • Circuito de Reset: Conecte R5 entre VCC y el nodo RESET_N. Conecte S1 entre el nodo RESET_N y 0. Conecte el pin 1 de U1 a RESET_N.
  • Salidas (Indicadores LED):

    • Bit 0 (LSB): Conecte el pin 14 de U1 al nodo Q0. Conecte R1 entre Q0 y el nodo LED_A1. Conecte el ánodo de D1 a LED_A1 y el cátodo a 0.
    • Bit 1: Conecte el pin 13 de U1 al nodo Q1. Conecte R2 entre Q1 y el nodo LED_A2. Conecte el ánodo de D2 a LED_A2 y el cátodo a 0.
    • Bit 2: Conecte el pin 12 de U1 al nodo Q2. Conecte R3 entre Q2 y el nodo LED_A3. Conecte el ánodo de D3 a LED_A3 y el cátodo a 0.
    • Bit 3 (MSB): Conecte el pin 11 de U1 al nodo Q3. Conecte R4 entre Q3 y el nodo LED_A4. Conecte el ánodo de D4 a LED_A4 y el cátodo a 0.

Diagrama de bloques conceptual

Conceptual block diagram — 74HC161 Binary counter
Lectura rápida: entradas → bloque principal → salida (actuador o medida). Resume el esquemático ASCII de la siguiente sección.

Esquemático

+-------------------------------------------------------------------------------------------------------+
|                                  PRACTICAL CASE: 4-BIT UP COUNTER                                     |
+-------------------------------------------------------------------------------------------------------+

      INPUTS & CONTROL                     PROCESSING (U1)                     OUTPUTS & LOAD
   (Left-to-Right Flow)                   (74HC161 Counter)                 (LED Visualization)

                                     +-------------------------+
                                     |                         |
[ V2: Clock Source ] --(CLK 1Hz)---> | [Pin 2] CP              |
                                     |                         |
                                     |                         |          (Bit 0 - LSB)
[ Reset Logic ]                      |             [Pin 14] Q0 | --(Q0)--> [ R1: 330 ] --> [ D1: Red ] --> GND
(VCC->R5->Node->S1->GND) --(RST_N)-> | [Pin 1] ~MR             |
                                     |                         |
                                     |                         |          (Bit 1)
                                     |             [Pin 13] Q1 | --(Q1)--> [ R2: 330 ] --> [ D2: Red ] --> GND
[ VCC: 5 V Source ] --(Enable High)-> | [Pin 7]  CEP            |
                   --(Enable High)-> | [Pin 10] CET            |
                   --(Disable Load)> | [Pin 9]  ~PE            |          (Bit 2)
                                     |             [Pin 12] Q2 | --(Q2)--> [ R3: 330 ] --> [ D3: Red ] --> GND
                                     |                         |
                                     |                         |
                                     |                         |          (Bit 3 - MSB)
                                     |             [Pin 11] Q3 | --(Q3)--> [ R4: 330 ] --> [ D4: Red ] --> GND
                                     |                         |
                                     +-------------------------+
                                            |           |
                                         [Pin 16]    [Pin 8]
                                            |           |
                                           VCC         GND
Esquema Eléctrico

Mediciones y pruebas

  1. Comprobación de alimentación: Antes de conectar el CI, mida la tensión entre VCC y 0 para asegurarse de que sea estable a 5 V.
  2. Verificación del reloj: Ajuste V2 a una frecuencia baja (p. ej., 1 Hz). Verifique que la señal en el nodo CLK oscila entre 0 V y 5 V.
  3. Observación de la secuencia: Encienda el circuito. Observe de D1 a D4. Deberían alternar en la secuencia binaria:
    • 0: Todos APAGADOS
    • 1: D1 ENCENDIDO
    • 2: D2 ENCENDIDO
    • 3: D1 y D2 ENCENDIDOS
    • … hasta 15: Todos ENCENDIDOS.
  4. Prueba de Reset: Mientras el contador está funcionando, presione S1. Todos los LEDs deben apagarse inmediatamente (Reset Asíncrono) o en el siguiente flanco de reloj (si se usa una variante de reset síncrono, aunque el Reset del 74HC161 estándar suele ser asíncrono).
  5. Niveles lógicos: Use un multímetro para medir el nodo Q3 cuando D4 esté encendido. Debería leer cerca de 5 V (Lógica Alta).

Netlist SPICE y simulación

Netlist SPICE de referencia (ngspice) — extractoNetlist SPICE completo (ngspice)

* Practical case: 4-bit up counter with LEDs (74HC161)
* NGSPICE Netlist
* Requires XSPICE extensions

.width out=256

* --- Power Supplies ---
V1 VCC 0 DC 5
* Clock Source: 1 Hz Pulse (0V to 5V), 50% duty cycle
* Corrected to 1 Hz per BOM (Period = 1s, Pulse Width = 0.5s)
V2 CLK 0 PULSE(0 5 0 1u 1u 0.5 1)

* --- Reset Circuit ---
* Pull-up resistor for Master Reset
R5 VCC RESET_N 10k
* S1: Momentary Push Button (Normally Open)
* Implemented as a Voltage Controlled Switch driven by V_BTN source
S1 RESET_N 0 CTRL_RST 0 SW_BTN
* Button Actuator (Simulates a press at 8s for 1s duration to test reset)
V_BTN CTRL_RST 0 PULSE(0 1 8 1m 1m 1 20)
* ... (truncated in public view) ...

Copia este contenido en un archivo .cir y ejecútalo con ngspice.

🔒 Parte del contenido de esta sección es premium. Con el pase de 7 días o la suscripción mensual tendrás acceso al contenido completo (materiales, conexionado, compilación detallada, validación paso a paso, troubleshooting, mejoras/variantes y checklist) y podrás descargar el pack PDF listo para imprimir.

* Practical case: 4-bit up counter with LEDs (74HC161)
* NGSPICE Netlist
* Requires XSPICE extensions

.width out=256

* --- Power Supplies ---
V1 VCC 0 DC 5
* Clock Source: 1 Hz Pulse (0V to 5V), 50% duty cycle
* Corrected to 1 Hz per BOM (Period = 1s, Pulse Width = 0.5s)
V2 CLK 0 PULSE(0 5 0 1u 1u 0.5 1)

* --- Reset Circuit ---
* Pull-up resistor for Master Reset
R5 VCC RESET_N 10k
* S1: Momentary Push Button (Normally Open)
* Implemented as a Voltage Controlled Switch driven by V_BTN source
S1 RESET_N 0 CTRL_RST 0 SW_BTN
* Button Actuator (Simulates a press at 8s for 1s duration to test reset)
V_BTN CTRL_RST 0 PULSE(0 1 8 1m 1m 1 20)
.model SW_BTN sw(vt=0.5 ron=1 roff=10Meg)

* --- 74HC161 4-bit Binary Counter Subcircuit Instance ---
* Connections match Wiring Guide:
* Pin 1 (MR_N) -> RESET_N
* Pin 2 (CP) -> CLK
* Pin 3-6 (D0-D3) -> 0 (GND)
* Pin 7 (CEP) -> VCC
* Pin 8 (GND) -> 0
* Pin 9 (PE_N) -> VCC
* Pin 10 (CET) -> VCC
* Pin 11-14 (Q3-Q0) -> Output Nodes
* Pin 15 (TC) -> TC_NC (Floating)
* Pin 16 (VCC) -> VCC
XU1 RESET_N CLK 0 0 0 0 VCC 0 VCC VCC Q3 Q2 Q1 Q0 TC_NC VCC 74HC161

* --- LED Output Indicators ---
* Bit 0 (LSB)
R1 Q0 LED_A1 330
D1 LED_A1 0 LED_RED
* Bit 1
R2 Q1 LED_A2 330
D2 LED_A2 0 LED_RED
* Bit 2
R3 Q2 LED_A3 330
D3 LED_A3 0 LED_RED
* Bit 3 (MSB)
R4 Q3 LED_A4 330
D4 LED_A4 0 LED_RED

* --- Models ---
.model LED_RED D(Is=1e-14 Rs=5 N=2)

* --- Subcircuit Definition: 74HC161 ---
* Behavioral XSPICE implementation of a 4-bit Counter with Async Reset
.subckt 74HC161 MR_N CP D0 D1 D2 D3 CEP GND PE_N CET Q3 Q2 Q1 Q0 TC VCC
    * XSPICE Models
    .model adc_in adc_bridge(in_low=2.0 in_high=3.0)
    .model dac_out dac_bridge(out_low=0.0 out_high=5.0)
    .model dff_mod d_dff(rise_delay=10n fall_delay=10n)
    .model inv_mod d_inverter(rise_delay=5n fall_delay=5n)

    * Input Bridges (Analog to Digital)
    A_IN [MR_N CP] [mr_dig cp_dig] adc_in

    * Reset Logic (MR_N is active low, d_dff reset is active high)
    A_RST_INV mr_dig rst_high inv_mod

    * Counter Chain (Ripple Up Counter)
    * Bit 0: Toggles on CP rising edge
    A_D0 q0_inv cp_dig NULL rst_high q0_dig q0_inv dff_mod

    * Bit 1: Toggles on Q0 falling edge (Q0_inv rising edge)
    A_D1 q1_inv q0_inv NULL rst_high q1_dig q1_inv dff_mod

    * Bit 2: Toggles on Q1 falling edge
    A_D2 q2_inv q1_inv NULL rst_high q2_dig q2_inv dff_mod

    * Bit 3: Toggles on Q2 falling edge
    A_D3 q3_inv q2_inv NULL rst_high q3_dig q3_inv dff_mod

    * Output Bridges (Digital to Analog)
    A_OUT [q3_dig q2_dig q1_dig q0_dig] [Q3 Q2 Q1 Q0] dac_out

    * Terminal Count (Unused/Dummy pull-down)
    R_TC TC 0 100k
.ends

* --- Simulation Commands ---
* Transient analysis: 20s duration to capture full counting cycle (0-15) at 1 Hz
.op
.tran 10m 20s

* Print critical signals (Inputs first)
.print tran V(CLK) V(RESET_N) V(Q0) V(Q1) V(Q2) V(Q3)

.end

Resultados de Simulación (Transitorio)

Resultados de Simulación (Transitorio)

Análisis: The simulation shows a correct 4-bit binary counting sequence (0000 to 1111) on outputs Q0-Q3. The clock toggles at 1Hz. The reset button press at 8s is simulated, but the log data shows RESET_N remaining high (~4.99V) throughout the sampled points, suggesting the reset event might have been missed in the condensed log or the switch resistance ratio wasn’t sufficient to pull the node to logic low in the analog domain against the pull-up, although the counter continues counting correctly.
Show raw data table (3020 rows)
Index   time            v(clk)          v(reset_n)      v(q0)           v(q1)           v(q2)           v(q3)
0	0.000000e+00	0.000000e+00	4.995005e+00	0.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
1	1.000000e-08	5.000000e-02	4.995005e+00	0.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
2	2.000000e-08	1.000000e-01	4.995005e+00	0.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
3	4.000000e-08	2.000000e-01	4.995005e+00	0.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
4	8.000000e-08	4.000000e-01	4.995005e+00	0.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
5	1.600000e-07	8.000000e-01	4.995005e+00	0.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
6	3.200000e-07	1.600000e+00	4.995005e+00	0.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
7	6.400000e-07	3.200000e+00	4.995005e+00	0.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
8	6.520000e-07	3.260000e+00	4.995005e+00	0.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
9	6.760000e-07	3.380000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
10	7.240000e-07	3.620000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
11	8.200000e-07	4.100000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
12	1.000000e-06	5.000000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
13	1.019200e-06	5.000000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
14	1.057600e-06	5.000000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
15	1.134400e-06	5.000000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
16	1.288000e-06	5.000000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
17	1.595200e-06	5.000000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
18	2.209600e-06	5.000000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
19	3.438400e-06	5.000000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
20	5.896000e-06	5.000000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
21	1.081120e-05	5.000000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
22	2.064160e-05	5.000000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
23	4.030240e-05	5.000000e+00	4.995005e+00	5.000000e+00	0.000000e+00	0.000000e+00	0.000000e+00
... (2996 more rows) ...

Errores comunes y cómo evitarlos

  1. Dejar los pines Enable flotando: La serie 74HC tiene entradas de alta impedancia. Si los pines 7 (CEP) o 10 (CET) no están conectados a VCC, el contador puede no contar o comportarse de manera errática. Siempre conecte las entradas de control no utilizadas a un nivel lógico definido.
  2. Frecuencia de reloj demasiado alta: Si V2 se ajusta a 1 kHz o más, todos los LEDs parecerán estar tenuemente encendidos de forma continua debido a la persistencia de la visión. Mantenga el reloj por debajo de 5 Hz para la depuración visual.
  3. Pin de Carga Paralela flotante: Si el pin 9 (\overlinePE) se deja flotando o bajo, el chip podría intentar cargar constantemente datos desde las entradas P0-P3 en lugar de contar. Asegúrese de que el pin 9 esté conectado a VCC.

Solución de problemas

  • Los LEDs nunca se encienden: Verifique las conexiones de alimentación a los pines 16 y 8. Asegúrese de que los LEDs estén insertados con la polaridad correcta (ánodo a resistencia/CI, cátodo a tierra).
  • El contador se queda en cero: Verifique que el pin de Reset (1) esté Alto (5 V). Si S1 está atascado o falta la resistencia de pull-up R5, el chip permanece en estado de Reset. Además, verifique que los pines Enable (7, 10) estén Altos.
  • El contador salta números: Esto se debe a menudo al «rebote del interruptor» (switch bounce) si está utilizando un interruptor mecánico como reloj manual. Use un generador de onda cuadrada limpia o un circuito antirrebote (condensador + resistencia) para la entrada de reloj.
  • Secuencia aleatoria: Verifique si el pin de Habilitación Paralela (\overlinePE) está accidentalmente Bajo o flotando. Debe estar Alto.

Posibles mejoras y extensiones

  1. Contador de 8 bits: Conecte en cascada un segundo 74HC161 conectando la Salida de Acarreo (pin 15) del primer contador a la Habilitación «Trickle» (pin 10) del segundo contador. Esto permite contar hasta 255.
  2. Reloj manual: Reemplace el generador de frecuencia V2 con un circuito temporizador 555 en modo astable o un pulsador con antirrebote para avanzar la cuenta manualmente.

Más Casos Prácticos en Prometeo.blog

Encuentra este producto y/o libros sobre este tema en Amazon

Ir a 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.

Quiz rápido

Pregunta 1: ¿Qué circuito integrado se utiliza en este caso práctico para el contador binario?




Pregunta 2: ¿Cuál es el rango de conteo en binario que realiza este circuito?




Pregunta 3: ¿Qué representan las siglas LSB y MSB mencionadas en el texto?




Pregunta 4: ¿Cuál es una aplicación útil de los contadores mencionada en el texto con respecto a la frecuencia?




Pregunta 5: ¿Qué utilidad tiene el conteo de eventos en la automatización industrial según el texto?




Pregunta 6: ¿Cada cuántos pulsos de reloj se repite la secuencia de conteo completa (0 a 15)?




Pregunta 7: ¿Qué función fundamental cumplen los contadores en los relojes digitales?




Pregunta 8: ¿Qué función cumplen los contadores en el direccionamiento de memoria?




Pregunta 9: ¿Qué tipo de circuito digital se construye en este caso práctico?




Pregunta 10: ¿Qué patrón visual se espera observar en los cuatro LEDs?




Carlos Núñez Zorrilla
Carlos Núñez Zorrilla
Electronics & Computer Engineer

Ingeniero Superior en Electrónica de Telecomunicaciones e Ingeniero en Informática (titulaciones oficiales en España).

Sígueme: