Antes que nada, les doy las gracias por la pronta respuesta.
Hola Nocturno, es muy gratificante que atendieras este post por la leyenda que eres en esta institución.
No había escuchado nada sobre GLD, si me pudieras dar un poco más de información, de ¿qué es? o ¿donde podría encontrar esa documentación?.
Gracias.
Hola migsantiago, es bueno encontrarse a un compatriota, pero mejor aun tener a un experto en estos bichos.
Había notado que cuando declaraba el vector de la siguiente forma:
fractional dat1[15345] = {0};
Había un aumento de la "Program Memory" de 393 Bytes a 15744 Bytes lo cual es una diferencia de 15351 Bytes que es muy cercana al total de elementos del vector, lo raro es que como es word deberían ser el doble de Bytes no?, en la "Memory Usage Gauge" me marca que está usando "Program Memory" en vez de la "Data Memory".
Hasta donde sabía (muy poco) tenía entendido que en "Program Memory" se guardaban instrucciones y constantes, por eso tenía la idea de que podría declarar un vector en "Program Memory" y usar un vector de respaldo en "Data Memory", esto debido a que necesito 2 vectores del mismo tamaño para hacer las operaciones.
Lo que me hacía pensar que si se podría realizar esto era la siguiente información que aparece después de darle "make"
Program Memory [Origin = 0x200, Length = 0x2aa00]
section address length (PC units) length (bytes) (dec)
.text 0x200 0x90 0xd8 (216)
.const 0x290 0x77e2 0xb3d3 (46035)
.text 0x7a72 0x88 0xcc (204)
.dinit 0x7afa 0x2 0x3 (3)
.isr 0x7afc 0x2 0x3 (3)
Total program memory used (bytes): 0xb57d (46461) 17%
Pensaba que si estaba ocupando el 17% podría haber alguna forma de meterle más datos si usaba atributos far o algo que me ayudara a declarar espacios grandes de memoria en la "Program Memory".
Efectivamente si declaro de esta forma el vector
int __attribute__((address(0x800))) ve[15340];
La "Memory Usage Gauge" me informa que he usado 30680 B de un total de 30720 y que corresponden al número de elementos que he declarado por ser words, ocupando casi el 100% de su capacidad.
Me parece que hasta el momento microchip no tiene otro dsPIC con más RAM, por lo que tendría que usar una memoria RAM externa o usar un PIC24 con más RAM, si tienen alguna idea será bienvenida.
Por cierto donde puedo encontrar los comandos para resaltar cuando pongo código o para insertar un scrollbar, sería útil para no hacer las paginas muy grandes.
Gracias.