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

 
 
> Генерация файлов .bin и .hex в AVR32 Studio, Размеры файлов?
jasper
сообщение Jul 22 2010, 12:12
Сообщение #1


Народный чинитель
***

Группа: Участник
Сообщений: 415
Регистрация: 15-07-05
Пользователь №: 6 811



Требуется получить двоичный bin-файл из elf.
Делаю все согласно рекомендациям:
Цитата
avr32-objcopy -O binary myfile.elf myfile.bin

Но в результате размер сгенерированного файла получается равным 1.25GB! wacko.gif
Пробовал генерить hex-файл, он тоже получается огромного размера и явно пустой.
В чем дело? Как это можно исправить?

Пока вышел из положения следующим образом.
В начале скармливаю elf-файл BatchISP, со следующей командной строкой:
Цитата
batchisp -device at32uc3a0512 -hardware usb -operation LOADBUFFER myfile.elf SAVEBUFFER myfile.hex HEX386

У которого, почему-то, получается создает нормальный hex-файл, нормального размера. Работает он, правда, только, когда плата по USB подключена.
А уже из полученного таким образом hex'а генерю нормальный bin (адекватного размера) при помощи avr32-objcopy:
Цитата
avr32-objcopy -I ihex -O binary myfile.hex myfile.bin



Но все равно, хочется сделать это как-нибудь по-нормальному. Может кто-нибудь уже сталкивался с такой проблемой? huh.gif

Сообщение отредактировал jasper - Jul 22 2010, 12:23
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Dopler
сообщение Sep 15 2010, 06:32
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 437
Регистрация: 23-04-05
Из: Таганрог
Пользователь №: 4 425



А полученный .bin вы загружаете со смещением 0x80000000?
Вот dump моего тестового .elf файла, во flash расположены только секции .reset и .text,
остальные расположены в ОЗУ, в том числе и обработчик прерываний (таблица векторов).
Эта таблица заполняется в стартапе, т.е. эта секция не должна быть загружаемая, а в .elf она помечена, как
"CONTENTS, ALLOC, LOAD, DATA", отсюда и получается такой дикий .bin. Сделать секцию не загружаемой у меня не получается, пойду спрошу в форуме по gcc.
Код
avr32-size -A -x neuromatic.elf
neuromatic.elf  :
section               size         addr
.reset                 0x8   0x80000000
.text                0x418   0x80000008
.exception           0x104          0x0
.heap               0x6ef8        0x108
.stack              0x1000       0x7000
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 05:39
Рейтинг@Mail.ru


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