Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: __eeprom и IAR 4.11
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Serej
пишу к примеру такой код:

__eeprom int a;

int func()
{

a = 10;

}

линкер выдает ошибку:

Error[e133]: The output format motorola cannot handle multiple address spaces.
Use format variants (-y -O) to specify which address space is wanted

помогите. как лечить?
Artem_Petrik
Переменная при обьявлении считается по умолчанию инициализируемой нулем. Компилятор пытается этот ноль запихнуть в прошивку, а имеюшийся формат (моторола) не позволяет определять в нем несколько адресных пространств, т.е. в него некуда писать данные для EEPROM (только flash)
Если в объявлении поставить __no_init ошибка уйдет.
Serej
Благодарю за помощ. все заработало.
Тема закрыта
Сергей Борщ
Цитата(Serej @ Jun 29 2008, 13:46) *
Тема закрыта
Чтобы снова ее не открывать, когда вам потребуется сразу после прошивки иметь в eeprom какие-то осмысленные значения - вот еще ссылки в коллекцию: раз и два
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.