¿Pull-up o pull-down al construir una ROM LED para niveles lógicos de 74HC?

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?

Ingrese la descripción de la imagen aquí

o

Ingrese la descripción de la imagen aquí

(Si no hay diferencia, me detendré, ya que eso iluminará los 1 accedidos, lo que parece más intuitivo).

¿Tiene LED con un voltaje directo de 0.7V? ¿Has redefinido las leyes de la física?
¿O tal vez tienes visión nocturna?
Lo siento, mi error, los LED rojos caen 1.6-7v, no 0.6-7v.
¿Podría ejecutar el circuito ROM desde 5 V y producir salidas de 3,3 V, como 5 V - 1,7 V = 3,3 V?
sí, el swing de 3V es más que suficiente para decodificar la lógica. es una pena que hayas aceptado una respuesta cuando existe otra mejor que funciona
¿Cuáles son sus especificaciones para la variación en la corriente compartida y el brillo del LED?
@TonyStewart.EEsince'75 ¿cuál es mejor?
@TonyStewart.EEsince'75 re: corriente compartida y brillo LED: soy un aficionado, estoy aprendiendo electrónica digital con chips DIP y placas de prueba, incluso los LED apenas se ven bajo luz artificial, estoy feliz.
El problema, por supuesto, es que el brillo se reduce con más diodos que comparten el mismo límite de corriente R

Respuestas (5)

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.

esquemático

simular este circuito : esquema creado con CircuitLab

Vote por mencionar la falta de capacidad de manejo :)

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.

esquemático

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).

Una explicación estaría en orden. Por ejemplo, ¿por qué no se requiere una resistencia en serie para la base de Q1 y por qué estos valores de resistencia en particular? ¿Cuál es el retraso de propagación en comparación con las puertas lógicas utilizadas aquí? ¿Puede "not2" aceptar la tasa de pendiente cuando Q1 se apaga/enciende?
@PeterMortensen agregado. Se puede usar un inversor 74HC14 ST si le preocupa mantener los tiempos de subida/bajada muy cortos.

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.

ROM LED funcionando

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.

  1. Los LED tendrán una caída de voltaje significativa.
  2. Necesitamos suficiente corriente en los LED para verlos.

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.