Я хочу определить определенную область памяти в микросхеме STM32, где хранятся некоторые строки. Я использую компилятор IAR, но я не нахожу простой пример, который может помочь мне правильно создать область с помощью файла icf. Как я могу создать регион и использовать этот регион в коде? БлагодаряIAR определяет область памяти для пользовательских данных
ответ
Я нашел это решение:
В файле Icf я определить область памяти таким образом:
define region LANGUAGE_region = mem:[from 0x080FB000 to 0x080FC000];
"LANGUAGE_PLACE":place at start of LANGUAGE_region { section .LANGUAGE_PLACE.noinit };
Я наполню этот регион с внешним SREC файл с помощью программатора. Чтобы проверить область с простой программой (с использованием целого числа) Я использую это заявление:
В заголовке:
extern const unsigned int mydata @".LANGUAGE_PLACE.noinit";
В файле C:
const unsigned int mydata;
В отладчике я могу видеть правильный адрес константы mydata в 0x0800FB000
Вы хотите сохранить строки внутри целого числа ....? Как этот код имеет смысл, учитывая вопрос? Разве вам не нужно иметь 2D-массив символов? – Lundin
Важным для меня было найти способ создать регион во флеше. Я использовал целое число в примере кода только для проверки соблюдения начального адреса моего региона. Затем я попытаюсь поместить строковый массив, – Lorenzo
Является ли это экзаменом e (http://supp.iar.com/Support/?note=27498) неясно? – VolAnd
Да не ясно, потому что в примере вы можете увидеть распределение функций. В моем случае я хочу создать область памяти в примере 1K, где нужно поместить список строк. – Lorenzo
Такая дорогая инструментальная цепочка и отсутствие поддержки? – Olaf