Цитата(bbill @ Mar 24 2010, 06:28)

Подскажите, как на Си считать из EEPROMa с байтовой организацией, переменную типа long.
Любая 8-ми битная АВРка. Компилятор ИАР 5.30.
Код
__eeprom long my_long_var; //объявление
.....................................
my_long_var = 0x12345678; //запись
.....................................
............................................
other_var = my_long_var; //чтение
........................................
Или запись через указатель:
Код
__eeprom unsigned char eeBuff[16]; //массив в еепром
............................................................
long data;
data = 0x11223344; //данные
unsigned char __eeprom *peeData; //уазатель на еепром
peeData = eeBuff; //инициализция указателя
*(peeData+3) = (unsigned char) (data>>24); //запись
*(peeData+2) = (unsigned char) (data>>16);
*(peeData+1) = (unsigned char) (data>>8);
*(peeData+0) = (unsigned char) (data>>0);
............................................................
data = ((long) (*(peeData+3)<<24))|((long)|(*(peeData+2)<<16))|(*(peeData+1)<<8))|(*(peeData+0)<<0)); //чтение
............................................................