Autor Tema: Problema con indicación del registro INTCON en simulación  (Leído 570 veces)

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

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4069
Problema con indicación del registro INTCON en simulación
« en: 05 de Junio de 2022, 13:11:53 »
Hola a todos:
Tengo una consulta para ver si alguien me puede aclarar.

Tengo un programa, creado con NIPLE, que en realidad funciona bien, pero si lo pruebo con Proteus, aunque funciona aparece una indicación que no se interpretar.

El programa consiste en que mediante una entrada se selecciona una opción de un menú. Con cada pulsación, interrupción por flanco en RB0, se aumenta un registro y de acuerdo a su valor se realiza una u otra operación.

Al principio del programa se tiene el bit GIE=1 (permiso general de interrupciones habilitado)y ya no se modifica su valor en ningún momento del programa ni subrutinas adicionales. Ahora bien, en la ventana del watch window selecciono la visualización del registro INTCON para ver el valor que toma el bit 7 (GIE).

Durante mucha fases de la prueba (en simulación) el valor que se visualiza se mantiene constante =0 por lo que las interrupciones deberían de estar deshabilitadas, pero el programa sigue funcionando y detectando nuevas interrupciones.

¿A que podría deberse este hecho? Y porque Proteus hace esa falsa indicación

Adjunto capturas de la simulación, figura del código del proyecto y el fichero ASM generado. (Ya les digo que funciona bien tanto en realidad como en simulación?

F.
« Última modificación: 05 de Junio de 2022, 17:24:02 por Fer_TACA »
Todos los días se aprende algo nuevo.