iccavr access to specific memory address
Try to use char* bases_ee[] as you are trying to init pointer structure , but I am not sure that those will be be correct . Pointers to char are about RAM location but EEPROM story is different . There is certain differentiation between EEPROM and RAM . The EEPROM access via single pointer must be allowed within compiler to make it transparent for you (C single pointer manipulation must be explored as macro into memory access routine call) . If it is not implemented in ICC you must have use wrappers for EEPROM access as
putEstring (char* tstring, int Eadr); // tstring is about pointer to RAM where
// strng to be written into EEPROM is
// stored.
// Eadr is starting address to EEPROM
// where string will be stored
getEString(char* tstring, int Eadr);// tstring is the pointer to valid memory
// in RAM no less than string you re
// going to read from EEPROM
// Eadr is the starting pointer to EEPROM
// location where your string previously
// has been stored
Read how to access EEPROM in Atmel AN DOC0932.pdf and asm source file AVR100.asm "Accessing AVR EEPROM" . This will guide how to write read into eeprom .(
www.atmel.com)