30. Display turbo de PC retro: restauración y control
Recupera un clásico display de velocidad turbo de los PCs de los 90 y, como bonus, contrólalo con Arduino. Electrónica vintage y de coleccionista.
🧰 Lista de materiales
🎯 Qué vas a aprender
A entender y restaurar un componente vintage: el display «TURBO» que mostraban los PCs Socket 7 de los 90. Verás cómo se configuraban los dígitos por jumpers (sin software) y, de bonus, cómo darle vida con un Arduino.
📚 Teoría: el display turbo por dentro
En los PCs de los 90, el botón «Turbo» cambiaba la velocidad de CPU y este display de 7 segmentos mostraba un número fijo (p. ej. «188» o «33»). No leía la velocidad real: los dígitos se cableaban a mano con jumpers en la matriz trasera, encendiendo los segmentos correctos para formar el número deseado. Es 7-segmentos puro, sin microcontrolador.
La placa CAT-188-1 tiene una resistencia limitadora (R1 ~47 Ω) y filas de pads para puentear cada segmento de cada dígito a la señal de turbo (que venía de la placa base).
🔧 Restauración (uso original)
- Limpia los contactos y revisa soldaduras frías en la matriz de jumpers.
- Identifica qué pads corresponden a cada segmento de cada dígito.
- Configura el número deseado puenteando los segmentos (p. ej. «33» o «99»).
- Alimenta a 5 V (como haría la placa base) y verifica el encendido.
💻 Bonus: controlarlo con Arduino
En vez de jumpers fijos, puedes manejar los segmentos desde un Arduino (vía 74HC595 para ahorrar pines) y mostrar números dinámicos o efectos. Tratamos el display como un 7-segmentos genérico.
// Bonus: animar el display turbo con 74HC595
// (cada bit del registro -> un segmento de un dígito)
const int DATA = 11, CLOCK = 12, LATCH = 8;
// patrones de segmentos a-g para 0-9 (ajustar al cableado real)
const byte NUM[10] = {
0b00111111, 0b00000110, 0b01011011, 0b01001111, 0b01100110,
0b01101101, 0b01111101, 0b00000111, 0b01111111, 0b01101111
};
void escribir(byte v) {
digitalWrite(LATCH, LOW);
shiftOut(DATA, CLOCK, MSBFIRST, v);
digitalWrite(LATCH, HIGH);
}
void setup() {
pinMode(DATA, OUTPUT); pinMode(CLOCK, OUTPUT); pinMode(LATCH, OUTPUT);
}
void loop() {
// cuenta 0-9 en un dígito del display turbo
for (int i = 0; i < 10; i++) {
escribir(NUM[i]);
delay(500);
}
}NUM[] hasta que los dígitos salgan bien (mismo método que el proyecto 08).🧩 Resolución de problemas
| Síntoma | Causa | Solución |
|---|---|---|
| Segmentos apagados | Pad/jumper sin contacto | Reflujo de soldadura en ese pad |
| Dígito incompleto | Patrón mal mapeado | Corrige NUM[] al cableado |
| Brillo desigual | Falta resistencia por segmento | Añade 220 Ω donde falte |
🚀 Para ir más lejos
- Móntalo en una caja retro como reloj o contador de escritorio.
- Combínalo con el MAX7219 (proyecto 14) para multiplexar varios dígitos.