Autor Tema: problema con memoria de programa  (Leído 1744 veces)

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

Desconectado SJD2

  • PIC10
  • *
  • Mensajes: 27
problema con memoria de programa
« en: 06 de Marzo de 2006, 05:32:00 »
hola, tengo un problema en c con un programa que cuando supero los 2 k de la memoria de programa me da error al compilar con el mplab. Mi pic tiene 8k. que pasa?, en c no hace falta cambiar de página.porque me sucede esto?

como se usa el #org (inicio, fin) siempre me da error.

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
RE: problema con memoria de programa
« Respuesta #1 en: 06 de Marzo de 2006, 20:55:00 »
Escrito originalmente por SJD2
hola, tengo un problema en c con un programa que cuando supero los 2 k de la memoria de programa me da error al compilar con el mplab. Mi pic tiene 8k. que pasa?, en c no hace falta cambiar de página.porque me sucede esto?

como se usa el #org (inicio, fin) siempre me da error.


Seria conveniente que digas,

1) que compilador usas,
2) que pic usas,
3) Cual es el error exacto que te tira? No lo traduzcas, ponlo exactamente como aparece.

- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado SJD2

  • PIC10
  • *
  • Mensajes: 27
RE: problema con memoria de programa
« Respuesta #2 en: 07 de Marzo de 2006, 01:53:00 »
acias, ya lo he solucionado, pero ahora me planteo pasar de una funcion a otra con un goto. puedo o el goto solo se puede usar dentro de la misma funcion?

massiah desde santanderFlash

Desconectado piriots

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 609
RE: problema con memoria de programa
« Respuesta #3 en: 07 de Marzo de 2006, 04:53:00 »
A ver, de poder usarlo puedes, lo que pasa es que en c el goto no se utiliza. si no te he entendido mal lo que quieres es que al acabar una funcion haga otra? Si es esto lo unico que has de hacer es llamar una y luego llamar otra y no has de tener problemas, o depende como este estructurado el programa puedes anidar las funciones, es decir, poner una dentro de otra.

Si sigues teniendo problemas con las paginas de memoria del pic, usa la directiva #separate antes de una funcion para cambiar de pagina de memoria. Esto en el caso que uses ccs y un pic 16. Los 18F tienen memoria lineal y esto no te ocurre.

Salu2

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
RE: problema con memoria de programa
« Respuesta #4 en: 07 de Marzo de 2006, 10:40:00 »
Escrito originalmente por piriots

Si sigues teniendo problemas con las paginas de memoria del pic, usa la directiva #separate antes de una funcion para cambiar de pagina de memoria. Esto en el caso que uses ccs y un pic 16. Los 18F tienen memoria lineal y esto no te ocurre.

Salu2


Los 16 también tienen toda su memoria contigua.  La limitación no está en que estén o no contiguas, sino en el tamaño de "palabra" que manejan los pic16F no permite que se direccionen mas de 2 Kbytes, de ahí el uso de "páginas" pero la memoria es toda contigua.

Saludos
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)