Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум разработчиков электроники ELECTRONIX.ru _ Keil _ Создание файла прошивки в KEIL, кратным 128байтам

Автор: Neo_Matrix Sep 24 2018, 19:03

Необходима прошивка, размер файла которой будет кратен 128байтам, т.е необходимо после сборки проекта в Keil сформировать BIN кратный 128. Сейчас для генерации BIN использую встроенную тулзу fromelf. Попытался добавить параметры в командную строку: --bincombined --bincombined_base=0x8000000 --bincombined_padding=128,0xFF, но походу ее разработчики предусмотрели ограничение на параметр bincombined_padding в размере 4. На данный момент приходится сначала генерить BIN, а после увеличивать его размер в winhex, что со временем уже немного надоедает. Возможно кто то знает нормальное решение, желательно с командной строкой, так, как хочется напрямую в действия КЕЙЛа прописать.

Автор: x893 Sep 24 2018, 19:23

А что мешает написать программу для этого ?

Автор: Forger Sep 24 2018, 19:56

Цитата(x893 @ Sep 24 2018, 22:23) *
А что мешает написать программу для этого ?

Именно так и я поступал - консольная прога, которая принимает параметры в командной строке. Кстати, это была моя первая прога под Qt sm.gif
Сама прога весьма функциональная, ее цели и задачи я уже не буду тут расписывать wink.gif

У меня это было настроено так, что эта прога вызывалась автоматом сразу после успешной компиляции и сборки, прямо из среды (Keil позволяет так делать).
Очень удобно оказалось - весь консольный вывод, который формирует прога, перехватывается Keil и вываливается в ее окне output.

Автор: scifi Sep 24 2018, 20:03

Цитата(x893 @ Sep 24 2018, 22:23) *
А что мешает написать программу для этого ?

Всё украдено до нас: http://electronix.ru/redirect.php?http://srecord.sourceforge.net/.

Автор: Neo_Matrix Sep 24 2018, 20:23

x893
Написать прогу, это будет следующий этап, пока смотрю готовые варианты.
scifi
Тулзой SRecord я пользуюсь для формирования файлов, для дальнейшей отправки по воздуху, неужто в ней есть функция по добиванию конца прошивки мусором, до значения кратного 128?

Автор: scifi Sep 24 2018, 20:26

Цитата(Neo_Matrix @ Sep 24 2018, 23:23) *
Тулзой SRecord я пользуюсь для формирования файлов, для дальнейшей отправки по воздуху, неужто в ней есть функция по добиванию конца прошивки мусором, до значения кратного 128?

Там много чего есть. Если не ошибаюсь, так:
Цитата
srec_cat infile.bin -binary -fill 0xFF -within infile.bin -binary -range-padding 128 -o outfile.bin -binary

Сам не пробовал, так что если ваш котик погибнет, я не виноват.

Автор: Neo_Matrix Sep 24 2018, 20:33

Не погибнет, он живучий sm.gif у меня SWD есть на такой случай. Спасибо, сейчас попробую

Автор: skripach Sep 24 2018, 20:34

Цитата(Neo_Matrix @ Sep 24 2018, 23:23) *
scifi
неужто в ней есть функция по добиванию конца прошивки мусором, до значения кратного 128?

там есть функция для создания функции biggrin.gif , а уж дописать пару байт.. СС2430 заставил изучить эту утиль подробно..

Автор: Neo_Matrix Sep 24 2018, 20:50

Цитата(scifi @ Sep 24 2018, 23:26) *
Там много чего есть. Если не ошибаюсь, так:

Сам не пробовал, так что если ваш котик погибнет, я не виноват.

Сработало на 100 %, попробовал на 2х разных файлах. Srecord действительно классная прога, я даже не задумывался о ее потенциале, впервые она мне помогла привести в порядок вывод файлов моторола-срекорд, а здесь оказывается она и такое может. Огромное спасибо, что подсказали!

Цитата(skripach @ Sep 24 2018, 23:34) *
там есть функция для создания функции biggrin.gif , а уж дописать пару байт.. СС2430 заставил изучить эту утиль подробно..

И писать не пришлось sm.gif Все уже придумано до нас.

Автор: Сергей Борщ Sep 25 2018, 09:31

Что мешало поручить эту задачу линковщику? С кейлом не работаю, но слышал магическое слово scatter.

Автор: scifi Sep 26 2018, 11:23

Цитата(skripach @ Sep 24 2018, 23:34) *
там есть функция для создания функции

Будьте добры, расскажите поподробнее. Очень интересно.

Автор: skripach Sep 26 2018, 19:39

Цитата(scifi @ Sep 26 2018, 14:23) *
Будьте добры, расскажите поподробнее. Очень интересно.

Ну это образно, смайлик ведь поставил, типа функционал у программы большой.

Автор: jcxz Sep 26 2018, 22:20

Кстати: не рекламы ради, но IAR легко и непринуждённо позволяет сделать любой желаемый размер образа (в пределах разумного) без дополнительных костылей.

Автор: scifi Sep 27 2018, 06:41

Цитата(skripach @ Sep 26 2018, 22:39) *
Ну это образно, смайлик ведь поставил, типа функционал у программы большой.

В наши времена засунуть интерпретатор скриптов куда угодно - раз плюнуть. Так что шутка получилась слишком серьёзная. А я грешным делом подумал, что что-то пропустил biggrin.gif

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)