Quiero construir una ROM LED (una ROM de diodos, pero usando LED).
Los LED se controlarán desde las salidas de un 74HC138 o similar. Caerán 1,6 - 1,7 V (rojo).
La ROM tendrá ocho palabras de memoria, cada palabra de 12 bits de ancho (porque eso es lo que necesito).
Cada bit será un zócalo de LED. La presencia de un LED indica un 0 o un 1 (dependiendo del pull-up/down), y la ausencia indica el valor opuesto.
Cuando se accede a una palabra, los LED del valor se encenderán.
¿Es esto factible con niveles de 74HC y características de manejo, sin más componentes?
¿Debo tirar hacia arriba o tirar hacia abajo?
o
(Si no hay diferencia, me detendré, ya que eso iluminará los 1 accedidos, lo que parece más intuitivo).
Esta idea, aunque linda, no funcionará de manera confiable tal como está.
El problema es que los LED tienen un voltaje directo típico de 1.6V
Con pull up que pone la salida de bajo nivel en 1,6 V, que está por encima del umbral máximo de Vil para HC. Así que tirar hacia arriba está fuera.
Con pull down, el nivel alto es de 3,4 V, que estará por encima del Vih máximo, pero está muy cerca, especialmente cuando resta lo que necesita para amortiguar las señales (consulte a continuación). Aquí puede ser necesario un detector de transistores adicional. Ver la respuesta de Spehro
Además, para obtener una luz decente de los LED, las resistencias deberán ser pequeñas y el TTL no podrá controlar una fila completa de LED a la vez. Es probable que necesite agregar algún tipo de transistor al decodificador para impulsar tanta corriente.
En total, algo como esto puede hacerlo por ti. LED presente = 1 salida.
simular este circuito : esquema creado con CircuitLab
Un LED rojo bajará un par de voltios, por lo que es probable que necesites algo más allí. Otros colores requieren más voltaje.
simular este circuito : esquema creado con CircuitLab
Las resistencias R3 (y similares para los otros LED) determinan la corriente del LED. Uno o más LED (hasta más de 10) encenderán el transistor, lo que reduce la entrada al inversor, por lo que la salida del inversor aumenta cuando se enciende uno o más de D1..D3.
Una salida ordinaria de 74HC con 5 V Vcc puede controlar varios LED con la resistencia en serie que se muestra con una pequeña caída (la corriente es de aproximadamente 2-3 mA cada uno, que es suficiente para un LED moderno). Si desea conducir más, reduzca la corriente del LED aumentando las resistencias o use un circuito más complejo como la respuesta de Trevor (o agregue búferes de 20-30 mA a la salida de las puertas AND).
En primer lugar, el uso de un LED generará una caída de voltaje de aproximadamente 1,8 V a 3 V (dependiendo del tipo o color del LED). Entonces, como resultado, es posible que sus voltajes de salida no alcancen un nivel lógico alto o bajo compatible.
Usar una resistencia pull up o down depende de si desea que el LED esté encendido o apagado para una entrada alta o baja (su circuito con resistencias pull down encendería un LED para una salida alta).
Su concepto solo podría funcionar si hiciera ajustes para los niveles lógicos de compensación. Una posibilidad sería usar un comparador analógico en cada salida y establecer un nivel lógico único.
Intente construir o simular el circuito y mida los voltajes de salida reales.
Sí, esta idea puede funcionar.
Usé transistores ZVP3306A (uno para cada byte, activados por decodificadores de dirección 74AC138) para encender los LED en el lado alto. Las resistencias limitadoras de corriente se duplican como resistencias desplegables. De esta manera, un 74ACT244 (observe la T, ¡esto es muy importante!) puede detectar, por la caída de voltaje en la resistencia, si hay un LED colocado o no. Mi versión solo funciona de manera confiable con LED rojos de alta eficiencia, ya que tienen un voltaje directo ligeramente más bajo.
Sorprendentemente, usando esos transistores rápidos y partes AC/ACT, funcionó bastante bien hasta 10Mhz en un Z80. Sin embargo, con el tiempo, las conexiones tienden a deteriorarse y es necesario mover los LED. Tan pronto como descubrí cómo encajar un monitor de código de máquina en esos 64 bytes, lo copié en una RAM respaldada por batería y nunca miré hacia atrás, a menos que hubiera sobrescrito accidentalmente mi código nuevamente, por supuesto: P
Sin embargo, la depuración en un solo paso es divertida de esta manera.
Los esquemas y el diseño de PCB están en GitHub .
Hay un par de cosas de las que debemos tener cuidado.
Para obtener alrededor de 1, tenemos los LED hacia arriba y las resistencias hacia abajo. Luego, para la siguiente etapa de la lógica después de la ROM, usamos la lógica HCT.
Con respecto a 2, aparentemente la lógica HCT puede manejar alrededor de 25 mA, por lo que obtenemos alrededor de 3 mA por LED para una ROM de 8 bits de ancho. Eso debería ser suficiente para hacerlos visibles aunque no especialmente brillantes.
En resumen, creo que esto es factible.
finbarr
Andy alias
abeja desvanecida
abeja desvanecida
Tony Estuardo EE75
Tony Estuardo EE75
abeja desvanecida
abeja desvanecida
Tony Estuardo EE75