Micro Motorola -Programacion en assembler - No encuentro Solucion!

Que tal, saludos al foro. Mi circuito no funciona y no encuentro el problema.
Es un contador de 3 cifras que trabaja con multiplexado. La cuenta incrementa cada vez que se produce una interrupcion por un pin del micro (bit 0 del puerto A).
El puerto B (bit 0 al 6) del micro atraves de un ULN2003 comanda los 3 displays multiplexados x transistores mediante los bit 3 4 y 5 del puertoA
Revise la construccion de la placa y esta bien. Revise y simule el programa (assembler) y no le encuentro falla. El micro esta en buen estado (micro motorola mc908qy4a).. y los demas componenetes tambien.
Cuado alimento la placa esta enciente y muestra 0 0 0 en los display (aveces no!) como debe ser
pero cuando le doy a la interrupcion (pulso bajo en el bit 0 de porta) no pasa nada!
Las pistas son delgadas de 5mm y muy proximas entre si.. y no se si debido a la frec. de trabajo
pudiera causar algun efecto capacitivo o algo asi..!
Les dejo el circuito, programa y pines del micro. Gracias.
 

Adjuntos

  • DIAGRAMA DE FLUJO.rar
    73.4 KB · Visitas: 6
  • PCB.rar
    84.5 KB · Visitas: 3
  • Pines del micro .qy4a.rar
    32.2 KB · Visitas: 3
  • contador de bolsas.rar
    1.9 KB · Visitas: 7
No lo estás haciendo por interrupción. Te lo recomiendo hacer por interrupción en vez de como lo estás haciendo. De todas formas si está bien hecho debería funcionar igual.

En la subrutina usas unas variables aux6 y aux7, ¿dónde están definidas?

Cuando tenés un programa largo te conviene y probandolo de a poco. Menos cosas.



Poner un led de monitoreo sirve mucho para debuguear un programa.
 
Foso, que tal. Muchas gracias por tu tiempo, la verdad parece que no define las variables que dijiste. Ya voy a corregir y probarlo. Gracias x los consejos. Un abrazo.
 
Que tal foso. Nuevamente yo, surgio otra duda, y como vi que sabes de programacion en asembler recurro a vos. Con este mismo micro, es posible guardar algun valor generado en la ejecucion del programa principal en la rom? Osea, por ejemplo que una variable lleve la cuenta de algo, y eso a su vez se muestra en un display, si el micro llegara a apagarse (se corte la luz o lo que fuera) pierdo esa cuenta! y eso es lo que no quiero. O si o si necesito un memoria externa?
 
Atrás
Arriba