Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: luc_eluani88 en 22 de Noviembre de 2012, 23:50:43
Título: Consultas Programacion Codigo C, Matriz de caracteres
Publicado por: luc_eluani88 en 22 de Noviembre de 2012, 23:50:43
Hola. Quería consultar lo siguiente, necesito tener precargado en memoria una matriz con números, dado que voy a hacer una aplicación para modulo gsm con pic 18F14K50. Necesito generar una lista blanca y comparar estos valores con los que reciba como dato del modulo. En la recepción por ahora no estoy trabajando, cuando intente cargarlo en el modulo del programa, me daba un error el pic c compiler de que la Ram no alcanza para guardar todas las variables. Entonces imagino que debo cargar la lista en la memoria flash, y no en la ram, por ende afuera del la rutina principal. Deseaba saber si alguno podía aconsejarme en como resolverlo. El pic tiene 16K de memoria flash, por ende sobra para la aplicación. En mis limitados conocimientos del c se que tengo que definir la matriz de forma global, había pensado en esta forma:
y cargarlos de esa manera numero por numero, pero si alguien sabe como hacerlo de forma mas prolija, agradezco mucho cualquier aporte. Cuando lo definí así y compile en pic c compiler no vario mucho la cantidad de memoria que consumio. Es raro porque a 8bit por char, y siendo una matriz de 178*10= 1780 bit o 1,7kb, pero el compilador me dio el mismo numero para Rom y Ram.
Título: Re: Consultas Programacion Codigo C, Matriz de caracteres
Publicado por: BrunoF en 22 de Noviembre de 2012, 23:54:29
Va a ser engorroso cargar el codigo pero imagino funcionara, pero la cantidad de memoria utilizada sigue siendo 4-5% que es poco para la cantidad de datos que genero.
Título: Re: Consultas Programacion Codigo C, Matriz de caracteres
Publicado por: ma4826 en 23 de Noviembre de 2012, 10:34:13
Si tienes una lista de números de teléfono, haz un programilla en el pc para que te genere el código de la variable. Si son 177 números va a ser más rápido y más fiable que hacerlo a mano.
Saludos.
Título: Re: Consultas Programacion Codigo C, Matriz de caracteres
Publicado por: BrunoF en 23 de Noviembre de 2012, 12:42:32
Si aún agregando el array el compilador no varía tu ram/rom, es porque a veces los compliladores ,especialmente los de uC, optimizan y si detectan que si bien has definido el array no lo has usado en ninguna parte del código, pues sencillamente no lo incluyen en el compilado. Lo mísmo sucede con las subrutinas o librerías enteras.
Como bien ha dicho ma4826, vas a tener que escribir código fuente que genere código fuente :D