Autor Tema: ¿Bug importante en el MPLAB SIM?  (Leído 1649 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado jgpeiro06

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 276
¿Bug importante en el MPLAB SIM?
« en: 12 de Septiembre de 2009, 07:47:09 »
Hola a todos!
He estado haciendo simulaciones con el MPLAB de un código y de vez en cuando salta a la interrupcion void _AddressError(void) por intentar acceder a una direccion impar, cosa que no puede hacer el PIC24F.

Al depurar el codigo he visto que si se produce una interrupcion (en este caso por TMR1) cambia misteriosamente el dato de WREG0 y no se a que es debido. Segun el manual una interrupcion solo modifica el valor de el PC, pero en la simulacion paso a paso veo q cambia y no se si es un BUG o se me esta escapando algo...

Aqui dejo una foto con los datos de la ejecucion del codigo sin IRQ a la izq, y con IRQ a la drch. Como se puede ver el valor de WREG0 no es el esperado si se produce la interrupcion.


Cuando vuelve de la IRQ con el dato impar en W0 y ejecuta la siguiente instrucción se produce un error de direccionamiento y su interrupción asociada.

¿A que puede ser debido?
¿Estoy haciendo algo mal?
¿Como puedo evitar este error?
« Última modificación: 12 de Septiembre de 2009, 07:50:15 por jgpeiro06 »

Desconectado jgpeiro06

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 276
Re: ¿Bug importante en el MPLAB SIM?
« Respuesta #1 en: 17 de Septiembre de 2009, 10:08:09 »
He encontrado un hilo en el foro de microchip donde hablan del mismo fallo. Parece ser que solo courre con algunos modelos de pic24. Pueden leer algo mas aqui:
http://www.microchip.com/forums/tm.aspx?m=379342&mpage=1&key=PIC24F&#379453

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: ¿Bug importante en el MPLAB SIM?
« Respuesta #2 en: 17 de Septiembre de 2009, 10:15:57 »
Menos mal que tú te lo guisas, te lo comes, y encimas nos enseñas la receta. Gracias por ilustrarnos.


 

anything