Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
IAR AVR: как запихать цифровые константы в FLASH?
Отправлено
Target (85.233.83.186) 01 апреля 2011, г. 08:26
Строковые константы (литералы) нормально сидят во flash. (extra options -> --string_literals_in_flash)
Однако, я обратил внимание, что цифровые константы, в основном, от math.h сидят в области DATA и не хотят идти во flash. Галка "Place string literals and constants in initialized RAM" не стоит.
Компилятор ругается на неопределенный сегмент NEAR_C.
Когда я прописываю NEAR_C в доп. строке линкера (пробовал разные:
-Z(DATA)NEAR_C=_..X_INTVEC_SIZE-_..X_FLASH_END
-Z(CODE)NEAR_C=_..X_INTVEC_SIZE-_..X_FLASH_END
-Z(CONST)NEAR_C=_..X_INTVEC_SIZE-_..X_FLASH_END )
то все равно константы находятся в DATA.
Составить ответ | Вернуться на конференцию
Ответы
- __flash const unsigned int Constants[14] = {0,0,0,0,2,0,4,0,4,0,0,0,0,0}; - колян безпарольный (пустое, 01.04.2011, 09:26:22 193.200.150.137)