Mi propuesta es la siguiente, es posible que me haya pasado con algun recurso del pic y que en la simulacion me la de por buena y en el pic no, como por ejemplo si utilizo mas anidamientos call de los permitidos. No se si alguna vez os ha pasado algo parecido.
Si
mos es posible que el simulador no refleje la realidad perfectamente, por eso es un simulador. De todas formas yo buscaría por otra parte como te han dicho aquí.
El que funcione en el simulador no significa que vaya a funcionar en la realidad y viceversa.
Si nos comentas que problemas estas teniendo será más fácil echarte una mano, tal vez el problema esté en el código como bien te han dicho aquí y sea algo que ocurra luego de varios segundos de ejecución de tu software. y si tu software tiene varios módulos conectados en el Proteus tardará minutos en reflejar lo que pasa en segundos en el mundo real.
Cuanto más complejo es el hardware, más tardará proteus para simular un lapso de tiempo determinado.
Para ser más claro
1) Si tienes un pic y una resistencia, es probable que el proteus en una pc rápida tarde 1 segundo en simular lo que ocurre en 1 segundo en el pic.
2) Si tienes varios display 7 segmentos, comunicacion con la usart, algunos leds por ahí, transistores, un display lcd, etc; entonces proteus tardará
varios segundos en simular lo que pasa en a
lgunos milisegundos porque tiene que hacer numerosos cálculos para cada componente.
Si tu problema está en el código y transcurre luego de algunos segundos, entonces lo verás en el mundo real pero no en el simulador, esto es algo que nos pasa a menudo y que solo tiene solución revisando bien el código y analizando los posibles eventos que puedan generar interrupciones o cambio de flujo de software verificando estos puntos.
Espero haberte echado una mano
Saludos