TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: jfmateos2 en 30 de Junio de 2016, 01:53:41

Título: Cómo leer un byte de la memoria FLASH (de programa) del PIC
Publicado por: jfmateos2 en 30 de Junio de 2016, 01:53:41
Tengo un programa con un array de 512 byte grabado en la memoria ROM/FLASH/DE PROGRAMA del PIC.

¿Cómo puedo acceder a un byte concreto de ese array?

He visto la función memcpypgm2ram para copiar arrays de la FLASH a la RAM, pero ¿Conocen algún método más rápido o alternativo cuando sólo necesitas leer un byte?

Gracias
Título: Re:Cómo leer un byte de la memoria FLASH (de programa) del PIC
Publicado por: jfmateos2 en 30 de Junio de 2016, 02:24:48
Ok, ya encontré la solución.
Basta con definir un puntero al comienzo de ese array en la ROM y luego leerlo con el [index] apropiado.
Título: Re:Cómo leer un byte de la memoria FLASH (de programa) del PIC
Publicado por: KILLERJC en 30 de Junio de 2016, 08:55:20
Pregunta, pero si tenes un array guardado, supongamos:

const uint8_t array[512] = { .... };

Deberias poder leerlo simplemente con array[200] si es que necesitas el valor 200.

A no ser que lo tengas definido de otra forma.