Как сказать линкеру ИАР для АВР ,чтобы константы кидал во флеш и не инициализировал RAM под них.
(«Телесистемы»: «Конференция «Микроконтроллеры и их применение»»)

миниатюрный аудио-видеорекордер mAVR

Отправлено MemoryTest 06 мая 2003 г. 14:18

Во первых, как я понял для переменных типа const i; создается сегмент NEAR_С,который если использовать *xcl идущий с иаром, благодаря строчке
-Z(CONST)NEAR_C=_..X_EXT_EPROM_BASE-_..X_EXT_EPROM_END
попадает типа во внешнее ROM(правда адрес тыкает в рам). Всё понятно с тем, что я могу заменить адреса..X_EXT_EPROM_BASE-..X_EXT_EPROM_END на адреса моего flash, но я что то не врубился с ключами -y и про -initializers in flash.
Как сделать так, чтобы константы были в CODE памяти т.е. во flash, при этом не переписывались CSTARUPом в РАМ при иннициализации, и при последующем использовании в теле программы.. Просто есть здоровый массив который не влезет в ОЗУ. про __flash знаю, не пойдет мне , много кода переделвать. MCU атмега128.
Бест Рег!

Составить ответ ||| Конференция ||| Архив

Ответы



Перейти к списку ответов ||| Конференция ||| Архив ||| Главная страница ||| Содержание

E-mail: info@telesys.ru