//Флэш память(память программ).Для доступа и работы с ней есть файл pgmspace.h.Открывайте его и изучайте.
#include <avr/io.h>
#include <avr/pgmspace.h>
const char text1[] PROGMEM = {1,2,3,4}; //text1-указатель на байт вo Flash
const char text2[] PROGMEM = {5,6,7,8}; //text2-указатель на байт во Flash
PGM_P menu[4] PROGMEM = { text1, text2,};//menu-указатель на указатели во Flash
int main(void)
{
unsigned char *pMenu; //указатель на байт в Data
unsigned char byte;
pMenu=pgm_read_byte(&menu[0]); //помещаем адрес указателя на text1 в pMenu
byte=pgm_read_byte(&pMenu[0]); //берем байт по адресу text1 во Flash
byte=pgm_read_byte(&pMenu[1]);
byte=pgm_read_byte(&pMenu[2]);
byte=pgm_read_byte(&pMenu[3]);
pMenu=pgm_read_byte(&menu[1]); //помещаем адрес указателя на text2 в pMenu
byte=pgm_read_byte(&pMenu[0]); //берем байт по адресу text2 во Flash
byte=pgm_read_byte(&pMenu[1]);
byte=pgm_read_byte(&pMenu[2]);
byte=pgm_read_byte(&pMenu[3]);
for(;;);
}
НАЗАД Assembler AVR Assembler PIC ДАЛЕЕ