Hola colegas de la electronica, me dirigo a vosotros para pediros consejo en un proyecto actual en el que me encuentro estancado. Mi proyecto se basa en el encendido de 7 led´s conectados al Pto.B del 16F84A.
Idea: mi idea se basa en que en principio el registro "lectura" vale del decimal 0 (haciendo que todos los led´s esten apagados), y que en cada ocasion que pulse la interrupcion se incrementa en 1 el valor del registro "lectura", luego filtro el valor del resitro "lectura" mediante unas comparaciones, que dependiendo el valor que tenga realiza un tipo de encendio u otro, y quedandose realizando el encendido hasta que cambie de tipo de encendido o bien apage (si el registro "lectura" llega a 4)
En principio todos los led´s estan apagados a la espera de que se pulse la interrupcion, que dependiendo las veces que se pulse realiza un tipo de encendido u otro, de este modo:
Si se pulsa 1 sola vez realiza el encendido y apagado de todos los led´s.
Cuando se pulsa por 2ª vez realiza el encendido de izq. a dcha, como si se tratara de las luces de una pista de aviones, al menos eso es lo que pretendo,
Cuando se pulsa por 3 vez realiza el encendido igual que el anterior pero de dcha. a izq.
He creado desplazamientos a lo bruto ya que soy nuevo y aun no sé como se utiliza la rotacion de registro en el NIPLE, he creado registros con el valor en binario y le e dado un retardo entre ellos consiguiendo así un desplazamiento "a lo basto" je je
El caso es que si coloco la etiqueta fin de la interrupcion al final de la cadena de cada decision (dentro de la interrupcion) consigo el efecto que quiero, pero solamente realiza el efecto una sola vez.
Si por ejemplo cierro el final del efecto, llevandome su flecha de salida a la comparacion de que si el registro de lectura=4 se queda enganchado el efecto pero cuando vuelvo a pulsar la interrupcion no cambia a los demas juegos de luces.
(vuelvo a comparar para ver si el valor ha llegado a 4, entonces vuelve a 0,o por el contrario a cambiado su valor que entonces lo filtro con el resto de comparaciones, si es 1, si es 2 o si es 3)
gracias de antemano por vuestro tiempo, recibid un saludo desde Morón de la Frontera, Sevilla-España
Aqui os dejo la direccion en donde he subido el proyecto que he realizado con el proteus, así como sus archivos, el ".asm" y el ".aex"
http://www.4shared.com/file/31523270/d7fa1b6/Proyecto_Luces_Pista.htmljavascript:startDownload()