Contador Automático con CURP


Puedo guiarte por pasos, pero no puedo modificar el proyecto directamente en este momento.
Tu idea se divide en 2 partes:
  1. Contador automático de 0 a 15
  2. Decodificador que convierte cada cuenta en un carácter de tu CURP mostrado en display de 7 segmentos
Tu CURP es:
SV050425HGRNNCA8
Como quieres mostrarla de la última letra hacia adelante, la secuencia será:

Text


8 A C N N R G H 5 2 4 0 5 0 V S
Eso son 16 caracteres, perfecto para un contador binario de 4 bits, porque cuenta de 0 a 15.

Opción recomendada para armarlo
La forma más ordenada es:

Text


Reloj automático → Contador 4 bits → Memoria/decodificador → Display 7 segmentos
Puedes hacerlo de dos maneras:
Opción A — Con flip-flops JK o D + compuertas
Es más didáctico, pero más largo. Necesitas diseñar la lógica para que cada número binario active los segmentos correctos.
Opción B — Con contador 4 bits + memoria EEPROM/ROM
Es mucho más fácil y limpio:
  • Un contador binario de 4 bits genera los números 0 a 15.
  • Una memoria EEPROM usa esos 4 bits como dirección.
  • En cada dirección guardas qué segmentos deben encenderse para mostrar cada carácter.
  • La salida de la memoria va al display de 7 segmentos.
Para un proyecto escolar, recomiendo la Opción B, porque evita muchas compuertas.

Componentes sugeridos Para el reloj automático
  • 1 × NE555
  • 1 × resistencia 10 kΩ
  • 1 × resistencia 100 kΩ o potenciómetro 100 kΩ
  • 1 × capacitor 10 µF
  • 1 × capacitor 100 nF
  • Fuente de 5 V
Esto genera pulsos automáticos para avanzar el contador.
Para el contador 0-15
Puedes usar:
  • 1 × 74HC161, contador binario de 4 bits
O si quieres hacerlo con flip-flops:
  • 2 × 74HC76 si usas flip-flops JK dobles
    o
  • 2 × 74HC74 si usas flip-flops D dobles
Para hacerlo más sencillo, recomiendo el 74HC161.
Para mostrar la CURP
Opción fácil:
  • 1 × EEPROM paralela pequeña, por ejemplo AT28C16 / AT28C64
  • 1 × display de 7 segmentos
  • 7 × resistencias de 220 Ω a 330 Ω

Secuencia del contador
El contador genera 4 bits:

Table


CuentaBinarioCarácter mostrado
000008
10001A
20010C
30011N
40100N
50101R
60110G
70111H
810005
910012
1010104
1110110
1211005
1311010
141110V
151111S
Después de 15 vuelve a 0 automáticamente.

Display de 7 segmentos
Los segmentos normalmente se nombran así:

Text


   a
 f   b
   g
 e   c
   d
Para representar letras en 7 segmentos hay limitaciones. Algunas letras no se ven perfectas, pero se pueden aproximar.
Tabla sugerida para display cátodo común:

Table


CarácterSegmentos encendidos
0a b c d e f
2a b d e g
4b c f g
5a c d f g
8a b c d e f g
Aa b c e f g
Ca d e f
Ga c d e f
Hb c e f g
Nc e g
Re g
Sa c d f g
Vc d e
V alternativab c d e f
Nota: N, R y V son aproximaciones, porque un display de 7 segmentos no puede mostrar todas las letras claramente.

Cómo armarlo paso a paso Paso 1: Fuente de alimentación
Usa una fuente de 5 V DC.
Conecta:

Text


+5 V → VCC de todos los integrados
GND → tierra común de todos los integrados
Agrega un capacitor de 100 nF entre VCC y GND cerca de cada integrado.

Paso 2: Reloj con NE555
Configura el NE555 en modo astable.
Conexiones típicas:

Text


Pin 1 → GND
Pin 8 → +5 V
Pin 4 RESET → +5 V
Pin 5 CONTROL → capacitor 10 nF a GND
Pin 2 TRIGGER unido al pin 6 THRESHOLD
Pin 7 DISCHARGE → red de resistencias
Pin 3 OUTPUT → entrada CLK del contador
Valores iniciales:

Text


R1 = 10 kΩ
R2 = 100 kΩ
C = 10 µF
Eso dará una velocidad visible. Si quieres ajustar la velocidad, cambia R2 por un potenciómetro de 100 kΩ.

Paso 3: Contador binario de 4 bits
Con un 74HC161:

Text


CLK → salida pin 3 del NE555
ENT / ENP → +5 V
LOAD → +5 V
CLR / RESET → +5 V normalmente
VCC → +5 V
GND → GND
QA, QB, QC, QD → dirección de memoria A0, A1, A2, A3
Las salidas representan:

Text


QA = bit menos significativo
QB
QC
QD = bit más significativo

Paso 4: Memoria EEPROM como decodificador
Usa una EEPROM paralela. Sus direcciones A0-A3 reciben el número del contador.

Text


A0 ← QA
A1 ← QB
A2 ← QC
A3 ← QD
A4-A10 o superiores → GND
/CE → GND
/OE → GND
/WE → +5 V
VCC → +5 V
GND → GND
Las salidas de datos de la EEPROM van a los segmentos:

Text


D0 → segmento a
D1 → segmento b
D2 → segmento c
D3 → segmento d
D4 → segmento e
D5 → segmento f
D6 → segmento g
D7 → sin usar
Cada línea debe tener una resistencia:

Text


D0 → resistor 220 Ω → segmento a
D1 → resistor 220 Ω → segmento b
...
D6 → resistor 220 Ω → segmento g
Para display de cátodo común:

Text


Común del display → GND

Datos que debes grabar en la EEPROM
Asumiendo:

Text


D0=a, D1=b, D2=c, D3=d, D4=e, D5=f, D6=g
Y display de cátodo común, donde 1 enciende segmento:

Table


DirecciónCuentaCarácterBinario D6...D0Hex
00811111117F
11A111011177
22C011100139
33N101010054
44N101010054
55R101000050
66G01111013D
77H111011076
88511011016D
99210110115B
10104110011066
1111001111113F
1212511011016D
1313001111113F
1414V00111001C
1515S11011016D

Si te obligan a usar flip-flops JK
Puedes hacer un contador binario síncrono de 4 bits con JK así:
Flip-flop bit 0

Text


J0 = 1
K0 = 1
Cambia en cada pulso.
Flip-flop bit 1

Text


J1 = Q0
K1 = Q0
Flip-flop bit 2

Text


J2 = Q0 · Q1
K2 = Q0 · Q1
Flip-flop bit 3

Text


J3 = Q0 · Q1 · Q2
K3 = Q0 · Q1 · Q2
Todos los flip-flops comparten el mismo reloj del NE555.
Las salidas serían:

Text


Q0 → A0
Q1 → A1
Q2 → A2
Q3 → A3
Luego esas cuatro salidas van al decodificador o EEPROM.

Si te obligan a usar flip-flops D
Para contador binario síncrono de 4 bits:

Text


D0 = /Q0
D1 = Q1 XOR Q0
D2 = Q2 XOR (Q1 · Q0)
D3 = Q3 XOR (Q2 · Q1 · Q0)
Necesitarías compuertas XOR, AND e inversores.
Por eso, si puedes escoger, el contador con JK es más directo.

Recomendación final
Para armarlo sin complicarte demasiado:

Text


NE555 → 74HC161 → EEPROM → resistencias → display 7 segmentos
Si tu profesor exige flip-flops:

Text


NE555 → 4 flip-flops JK → EEPROM → resistencias → display 7 segmentos
La parte más importante es que tu contador tenga 16 estados, porque tu CURP tiene exactamente 16 caracteres.
Esquema con JK
Sin EEPROM
Buscar componentes
Programar EEPROM
Conexiones 74HC161
No schematic yet

Talk to Flux to get started.