Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Впрос по размещению строковых констант
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
MVJ
AVRGCC по умолчанию размещает строковые константы, например
const char FirmwareVersion[] PROGMEM = "1.00";
непросредственно после таблицы векторов прерываний.
Есть ли возможность разместить ОДНУ такую константу НЕПРОСРЕДСВЕННО ПОСЛЕ всего кода программы?
Сергей Борщ
Код
    __attribute__((section(".mysection")))
    char const HEX_convert[] = "0123456789ABCDEF";

В скрипте линкера указать, куда размещать секцию .mysection
Без правки скрипта линкера не обойтись.
MVJ
Цитата(Сергей Борщ @ Jul 7 2014, 19:38) *
В скрипте линкера указать, куда размещать секцию .mysection
Без правки скрипта линкера не обойтись.

Если так, то нужно указывать конкретный адрес размещения .mysection. А мне нужно разместить ее сразу за кодом программы без разрывов (чтобы последний байт кода программы и .mysection попали в один сегмент флеша). Можно, конечно, каждый раз проделывать это в 2 приема (с правкой адреса размещения), но может есть какой более цивилизованный способ.
Сергей Борщ
Цитата(MVJ @ Jul 8 2014, 12:10) *
Если так, то нужно указывать конкретный адрес размещения .mysection
Нет, не надо. Но вам придется изучить структуру скриптов линкера и именно в этом скрипте указать, куда размещать .mysection
У меня нет возможности и желания пересказывать здесь доступную в интернете документацию на линкер. Когда у меня была похожая на вашу задача - я прочитал эту документацию и разобрался. Прочитайте и вы. В двух словах это не описать и одним щелчком мышки это не делается.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.