Hola amigos del foro, estoy realizando un programa con el PIC24FJ128GA310, pero se me ha quedado corto, me sale un error que me dice que me he pasado 41832 PC Units, utilice el método de optimizacion de código que ofrece el compilador XC16 en la versión PRO (de prueba de 30 días) y la versión normal, pero las dos en tiempo de ejecución me alteran algunas variables y me dañan mi programa, también pensé en migrar mi micro al PIC24FJ256Ga410 pero en la empresa me dicen que no quieren cambiar de micro.
Que opción me recomendarían ustedes que es buena para solucionar este problema, gracias.
Poco puedes hacer, optimiza el código a mano, reduce tamaños de variables, trocea el MAIN y mándalo a funciones con variables locales, reduce o elimina en lo posibles las variables globales, etc...
En cuanto a lo que comentas de que en ejecución se alteran variables y se daña el programa, eso no es posible. En tiempo de compilación todas las variables quedan asignadas a una direccion de memoria, sin posibilidad de que sean alteradas en tiempo de ejecución, salvo que toques por programa directamente la flash (por ejemplo con un bootloader). Lo único que puede corromper el programa en tiempo de ejecución es un desbordamiento de la pila, por hacer demasiadas llamadas anidadas con poca RAM, o lo que he comentado de que grabes directamente en la flash.
Diles a los responsables de tu empresa, que milagros no puedes hacer, que se rasquen el bolsillo, que no es tanto, para poder trabajar en condiciones.