Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: EEPROM в IAR 5.11B для AVR
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > IAR
Freeze Anti
До этого работал во второй версии ИАРа. Там было просто. Запускаешь C-Spy, открываешь окно Memory, и он тебе выдавал в списке возможных варинтов в том числе и EEPROM... Здесь же этого варианта нет... только CODE, DATA и IO_SPACE...

и еще... перевожу сейчас проект еще с 1.х версии... там в опциях линкера указывать, где находится ЕЕПРОМ не надо было... да и не было таких опций, а тут появились... как их задать, чтоб он одинаково воспринимал их?..
IgorKossak
Цитата(Freeze Anti @ May 8 2008, 07:41) *
До этого работал во второй версии ИАРа. Там было просто. Запускаешь C-Spy, открываешь окно Memory, и он тебе выдавал в списке возможных варинтов в том числе и EEPROM... Здесь же этого варианта нет... только CODE, DATA и IO_SPACE...

Что-то у Вас не то. У меня в версиях 4.30 и 5.10 показывает CODE, DATA, EEPROM и IO_SPACE. Какая у Вас версия?
Цитата(Freeze Anti @ May 8 2008, 07:41) *
и еще... перевожу сейчас проект еще с 1.х версии... там в опциях линкера указывать, где находится ЕЕПРОМ не надо было... да и не было таких опций, а тут появились... как их задать, чтоб он одинаково воспринимал их?..

Опций не было, т. к. не было возможности создать объект в EEPROM (теперь можно), но если Вы портируете старый проект, где доступ к EEPROM осуществлялся специальными функциями (макросами), макросами, то ничего можно в опциях линкера в отношении EEPROM не менять.
Другое дело, что если Вы конфигурируете линкер через xcl файл, то придётся поменять наименования сегментов. См. документацию к линкеру.
Freeze Anti
Версия написана в сабже... 5.11B

Я подозреваю, что я что-то не то сделал, поэтому и ЕПРОМа нету...

Я конфигурирую линкер через xlc файл... на в документации на 1.х ИАР нет опций, отвечающих за ЕЕПРОМ... при этом данные в ЕЕПРОМе у меня находились где-то в адресах 0х0000 - 0х0а00, а после компиляции в 5.11 они вообще где-то в середине...

Документацию смотрел... я не понял там по поводу наименования сегментов памяти... они там не просто по-другому именуются... некоторых сегментов, которые есть в 5-ом в 1-ом просто нет... причем я не пойму, как они соотносятся...

к примеру... в ИАР 1.х есть сегмент CDATA0, в котором хранятся константы, объявленные tiny... в 5.11 константы, объявленные __tiny и __near хранятся в NEAR_C, а в ИАР 1.х константы, объявленные near хранятся в CDATA1, также в 1.х имеется сегмент CONST, который отвечает за константы... какой сегмент 5.11 отвечает ему?..

к тому же в 1.х нет сегментов, отвечающих за EEPROM...

в общем, я порядком запутался...
Freeze Anti
Разобрался... оказывается. я в опциях проекта не ту микросхему указал (вернее вообще ее не указал, а поставил просто -v3)... теперь есть все - и EEPROM и Internal Sram...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.