Autor Tema: Problema con realizar incrementos incf  (Leído 1809 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado luisesteban

  • PIC10
  • *
  • Mensajes: 24
Problema con realizar incrementos incf
« en: 22 de Marzo de 2014, 08:44:37 »
Hola a todos/das:
Estoy estudiando ASM en casa, con mucha tranquilidad y despacio. Intento a la vez que veo ejemplos, llevar a la practica viendo con el Mlab lo que realmente pasa con las variables y las rutinas. Verán, he hecho un contador de dos dígitos actuando con un pulsador en el PORTA,0 y dando salida a dos variables llamadas Unidad y decenas, con salida por el PORTB en modo BCD. Hasta ahí todo bien, cada vez que detecto que RA0 esta a uno (1) provoca un salto a una parte del programa que se encarga de incrementar la variable Unidad, lo que a continuación la comparo con otra variable Cuenta, para determinar si ha llegado la unidad a 10. Lo curioso del tema es que todo va bien, pero cuando debe incrementarse a dos, la variable se va a cero. Lo que hace que jamas salga de ahí. Podría alguien ayudarme y decirme por que ocurre esta situación, o en que me estoy equivocando?........Adjunto el archivo ASM y de antemano agradecer la ayuda y cortesía de todos aquellos que hacen posible tener estas herramientas de apoyo, va por todos ustedes.........

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Problema con realizar incrementos incf
« Respuesta #1 en: 22 de Marzo de 2014, 12:31:35 »
Hola Luis,

el PIC16F876A tiene el inicio de memoria GPR( para uso general) a partir de la posición 0x20, y vos estás declarando el bloque de memoria de variables:

CBLOCK      0x0C

desde la 0x0C. Es probable que estés trabajando sobre algún SFR (registro especial), por eso no estás obteniendo el resultado deseado.

Saludos
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado luisesteban

  • PIC10
  • *
  • Mensajes: 24
Re: Problema con realizar incrementos incf
« Respuesta #2 en: 22 de Marzo de 2014, 13:27:51 »
Hola BrumoF:

Vaya, te mereces un CUMLADIE,  ese es el problema. Veras estudio con un libro de microcontroladores PIC 16F84 y  claro yo tengo herramientas para el PIC16F876A, es la razón que al intentar traspasar de un micro a otro me den estos problemas.....
Muchas gracias por darme la solución, recibe un cordial y afectuoso saludo, y mi mayor gratitud, un placer.

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Problema con realizar incrementos incf
« Respuesta #3 en: 22 de Marzo de 2014, 13:52:51 »
No creo que merezca tanto! Ja ja

Es un error muy común que al migrar de microcontrolador no se tengan en cuenta ciertos aspectos. Este es uno de ellos. El 16F876A es mucha más máquina que el 16F84 y por lo tanto hay que analizar las diferencias.

Saludos!
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.


 

anything