реклама на сайте
подробности

 
 
> Можно ли сделать Hex-файл без main
Sagittarius
сообщение Jan 17 2013, 09:08
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 207
Регистрация: 26-01-06
Из: СПб
Пользователь №: 13 659



Здравствуйте.

Есть код с большим объемом данных во внутренней флеши проца (звук в STM32F103). Все данные с массивом указателей на них лежат в отдельном сегменте, но линкуются вместе со всем кодом. Вопрос - можно ли в IAR-е сделать HEX-файл только для этих данных, чтоб отделить их от кода при прошивке и при абдейте уже в готовом устройстве?
Т.е. слинковать что то типа:

CODE
#pragma location="SOUND_DATA"
const uint8_t * pointers[]={
a,b,c
};

#pragma location="SOUND_DATA"
const uint8_t a[]={1,2,3,4,5,6,7,8};

#pragma location="SOUND_DATA"
const uint8_t b[]={1,2,3,4,5,6,7,8};

#pragma location="SOUND_DATA"
const uint8_t c[]={1,2,3,4,5,6,7,8};


без функции main, стартапа, векторов и пр.

Спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
scifi
сообщение Jan 17 2013, 15:41
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(Sagittarius @ Jan 17 2013, 13:08) *
Вопрос - можно ли в IAR-е сделать HEX-файл только для этих данных, чтоб отделить их от кода при прошивке и при абдейте уже в готовом устройстве?

Встречный вопрос: откуда берется звук в формате массива Си? Может быть, он может взяться оттуда же, но уже в формате HEX? По крайней мере это было бы естественно.
Забегая вперёд, предложу следующее: если звук вырезается как кусок двоичных данных из WAV файла, то при помощи программы Srecord легко вырезать кусок и преобразовать его в HEX с нужным стартовым адресом. Причём эта процедура по хорошему должна быть частью автоматизированного процесса сборки программы.
Go to the top of the page
 
+Quote Post
Sagittarius
сообщение Jan 18 2013, 09:19
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 207
Регистрация: 26-01-06
Из: СПб
Пользователь №: 13 659



Цитата(Sagittarius @ Jan 17 2013, 13:08) *
Вопрос - можно ли в IAR-е сделать HEX-файл только для этих данных


Оказалось можно и совсем просто. В опциях отключаются библиотеки, в стартпоинт линкера прописывается имя массива - результат Hex только с данными по нужному адресу.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st August 2025 - 18:39
Рейтинг@Mail.ru


Страница сгенерированна за 0.01359 секунд с 7
ELECTRONIX ©2004-2016