Error en Proteus al depurar código "No source line at PC address [PC=0000]"

Quiero depurar mi código con proteus y ver qué pasa.
Pero cuando doy simulación y se abre la ventana PIC CPU Source Code - U1, aparece un error.
"No source line at PC address [PC=0000]"

He visto que para resolver este error, tenía que poner un punto de interrupción en el código y regenerar el archivo .cof

He realizado este procedimiento pero sigue sin funcionar.
 
He visto que para resolver este error tenía que poner un punto de interrupción en el código y regenerar el archivo .cof
El hecho de no poner puntos de interrupción no produce errores en tiempo de ejecución.
¿Estás cargando el archivo .cof en proteus?
Para determinar otras causas es mejor que subas tu proyecto completo dentro de un archivo comprimido.
 
Si cuando inicias la ejecución paso a paso te aparece esto:
dbg1.jpg

Es porque el inicio o cualquier tramo de código no está vinculado con líneas en código fuente.

Una forma es ir ejecutando paso a paso (F11) hasta que llegue a donde hay código fuente:
dbg2.jpg

dbg3.jpg

Puede ocurrir que ese primer bloque sin fuente sea demasiado largo, en ese caso se elige en el combobox el programa, se pone un breakpont y se sigue la ejecución con F12
dbg4.jpg

dbg5.jpg
 
He estado intentando lo que dices en el post anterior.
También lo he probado con otro proyecto y me sigue pasando igual.
He cargado el archivo .cof
1589348826509.png
A mi la lista me llega vacía.
Puede ser que se tenga que configurar algo previamente?
En el MPLABX a parte de compilar y generar el archivo .cof se ha de realizar algo más?

Las versiones del software que utilizo son Proteus 8.6 y MPLAB X 5.3
 
Última edición:
Tenés que verificar las opciones de compilación, debe incluir el debug.

Fijate si estás compilando en versión DEBUG o RELEASE.

Otra causa podría ser que esté incluyendo una opción de linkeo que "moleste" al Proteus.
En Arduino por ejemplo, te usan una opción -flto (link time optimizacion) que te reduce el tamaño del hex pero te mata la simulación con Proteus.
MikroC también, te genera un .cof (o .elf, no me acuerdo) que el Proteus no reconoce --> Por eso no lo uso.
 
Atrás
Arriba