semaforo usando eeprom (28c64)

Hola, nuevamente recurro a los compañeros del foro para ver si podrian ayudarme en la elaboracion de un semaforo de dos vias (no necesariamente), utilizando una memoria eeprom 28c64. Ojala puedan guiarme en la elaboracion de este pryecto ya que no tengo experiencia en la utilizacion de estas memorias.
 
Para este circuito solo hay que definir las salidas, si es un semáforo de dos vías es necesario solo emplear solo 6 salidas de las 8 que cuenta la memoria, se tiene que determinar el numero de estados que se pretenden, digo esto porque si quieres hacer que los verdes parpadeen antes de entrar el ambar lo puedes relizar mediante el cambio de dchos estados, si por ejemplo pretendes un tiempo de 5 segundos para el verde, 2 para el ambar y 5 para el rojo, solo tienes que dejar 5 estados iguales donde se repiten el verde del primer semáforo con el ambar y rojo apagado, luego el sexto verde apagado y ambar apagado, septimo estado verde encendido y ambar apagado, estos dos últimos estados equivalen al parpadeo del verde, el octavo y noveno por ejemplo presentas verde apagado y ambar encendido el cual corresponde a los dos segundos del ambar, del décimo al décomo quinto estado tienes rojo encendido y verde y ambar apagado, este proceso es para el primer semáforo, para el segundo que está a 90 grados o perpendicular al primero realizas lo mismo pero los primeros 9 estados tienes rojo y de los últimos 5 estados corresponden al verde y luego se cambian las condiciones estre los dos semáforos, esto te va a llevar a tener 30 estados pára poder ver el cambio total en los dos semáforos.
Para realizar el timer usa un LM555 en modo astable y emplea un contador CMOS 4040 que es un contador de 14 bits para manipular las direcxciones creadas en la memoria osea que solo vas a necesitar 5 bits para que te de un conteo de 0 a 31 pero busca resetear al estado 31 para que vuelva a empezar. Te aconsejo hacer una tabla para que puedas ver las combinaciones que necesitas:

Salidas de la memoria
Estado V1 A1 R1 V2 A2 R2
1 1 0 0 0 0 1
2 1 0 0 0 0 1
3 1 0 0 0 0 1
4 1 0 0 0 0 1
5 1 0 0 0 0 1
6 0 0 0 0 0 1
7 1 0 0 0 0 1
8 0 1 0 0 0 1
9 0 1 0 0 0 1
10 0 0 1 0 0 1
11 0 0 1 0 0 1
12 0 0 1 0 0 1
13 0 0 1 0 0 1
14 0 0 1 0 0 1
15 0 0 1 0 0 1

De aquí en adelante haces un espejo entre los dos semáforos para que ahora sea el segundo el que esté en verde y después cambie a rojo( los otros quince estados)
Faltan algunos comentarios pero creo que con esto puedes comenzar........
 
Aunque es facil hacerlo con una eeprom, tambien se puede hacer con logica convencional facilmente.

El circuito es sumamente facil con una eerpom, necesitas un 555 como generador de pulsos, un contador tipo 4040 y finalmente la eeprom siempre con el chip selec y la salida OE siempre activado.

Moy lo ha esprocado correctamente.

Un detalle para simplificar mas el tema, de alguna forma debes resetear el contador, tienes dos opciones, como te sobran gits uno de ellos lo puedes utilizar como reseteador.
La otra es configurar el contador para que una de sus salidas hagan el reset, por ejemplo Q7 donde un ciclo completo va de ox0000 al 0x00ff y resetea a 0x0100.

Si quieres ciclos especiales puedes poner un biestable o un lach para que active una pativa del bus de direcciones (paginacion) donde tienes el otro programa.

A7=0 circlo normal
A7=1 ciclo peatones
 
Gracias por su ayuda, alguien me puede decir como simular el circuito ya que en el multisim 8 no viene esta memoria? a y otra cosa, no me podria servir el contador cd4518?
 
Disculpen, me podria servir en vez de una eeprom, una eprom 27c64 para lograr el mismo objetivo?. Lo que pasa es que no he podido conseguir la eeprom 28c64, ademas en el multisim no viene esa memoria solo viene la 27c64. Si la respuesta es que si se puede, cual seria la forma de implementar el circuito con la 27c64?
Gracias por su respuesta.
 
De hecho la única diferencia entre estas dos memorias si no mal recuerdo es que la 27 es una EPROM y la 28 una EEPROM pero básicamente se pueden trabajar igual
 
Y si necesitara utilizar esta memoria para tres semaforos, digamos que por ejemplo tengo el estado 109 en hexadecimal, ¿lo puedo poner así al momento de programar? Hago la pregunta por que en chip max sólo dice FF y quisiera saber si ese es el máximo
 
Atrás
Arriba