Цитата(alexeyv @ Jun 1 2015, 06:53)

Но в свое время я много времени думал почему CPU иногда косячит.
у меня было такое: адрес в EEPROM какой-то из диапазона 0x06...0x0А (не помню), и если по этому адресу записать то ли 0x27, то ли 0x2А (не помню), CPU вставал в ступор. причем зависал только на одном значении.
Приведите пожалуйста ссылку на ERRATA, где говорится о вашей ситуации.
Удивительно, но я начинал использование AVR с at90s2233 и с тех пор ничего подобного не встречал.
Цитата
За исключением создания структуры, моя логика работы с EEPROM не отличается от логики других форумчан. Я не понимаю зачем создавать структуру?
Я уже об этом писал и объяснил зачем это нужно делать ВСЕГДА. Хотите я вам скину ссылку на avg-gcc 4.X.X, который вдруг стал располагать данные в EEPROM в обратном порядке (формально это не бага, т.к. стандарт ничего против такого поведения не имеет)?
Если же данные поместить в упакованную структуру, то уже ничто не в праве её изменить.
Конечно, если вы не предоставляете доступа к EEPROM данным наружу и не считаете КС содержимого EEPROM можно обойтись и без структуры, только зачем?
Ведь вы и так делаете префикс для имени переменной из EEPROM, так почему бы не использовать специально созданный для таких случаев механизм?
Ещё один большой плюс структуры - это очень лаконичное её объявление как EXTERN - всего одной строчкой.
Цитата
Кстати, у ТС был вопрос как избавиться от второго файла, а не как работать с EEPROM.
Не зная алфавита сложно начать составлять слова...