Autor Tema: Como anclar las variables de una rutina en CCS ??  (Leído 3430 veces)

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

Desconectado jvb57

  • PIC10
  • *
  • Mensajes: 10
Como anclar las variables de una rutina en CCS ??
« en: 22 de Abril de 2015, 16:58:18 »
Hola !!
Tengo un frimware que levanta un upgrade de parte del mismo desde una memoria microSD.
Obviamente el bloque de formware donde estan las rutinas que manejan la memoria y un par de cosas más están en zona protegida.
El problema lo tengo con la RAM, resulta que las variables temporales que usan rutinas como spi_xfer por ej me quedan al fondo de la RAM y si llego a tocar algo se me cambian de posicion haciendo una version incompatible para ser actualizada de esta manera.

Logre anclar algunas variables usando la sentencia #LOCATE, pero puntualmente las variables que usan rutinas predefinidas como xfer no se como anclarlas.
Por cierto, estoy usando CCS 5.008.
Espero alguno lo tenga dominado y puedan ayudarme.
Gracias !!

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re: Como anclar las variables de una rutina en CCS ??
« Respuesta #1 en: 22 de Abril de 2015, 23:32:52 »
Y si en ves de usar una direccion "fija" de esos valores, usas un puntero &spi_xfer y que se encarge C de tomar la direccion por mas que cambie?

Desconectado jvb57

  • PIC10
  • *
  • Mensajes: 10
Re: Como anclar las variables de una rutina en CCS ??
« Respuesta #2 en: 24 de Abril de 2015, 14:25:02 »
Gracias KillerJC por el comentario...
Pasa que lo que no puedo controlar son las variables temporales que usa la misma rutina spi_xfer, variables scratch como @SPI_XFER_1.P1 por ej...
Son variables que se declaran dentro del #use spi, asi que no hay forma de anclarlas o definir a donde iran a parar, lo decide solo...
Aunque entiendo que siendo variables temporales debería inicializarlas la misma rutina por lo que no deberia afectarlo que se cambien en alguna futura version...
Estoy viendo como puedo comprobar eso...
Saludos !!

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5490
    • Electrónica Didacta
Re: Como anclar las variables de una rutina en CCS ??
« Respuesta #3 en: 24 de Abril de 2015, 19:10:16 »
si las variables no las creas tú, entonces no puedes controlarlas, porque ya sería un proceso interno del compilador para la función spi_xfer-

la otra forma es que escribas las función spi_xfer a pie.
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek


 

anything