2014-02-14 3 views
1

Я использую makefile для компиляции моих проектов ATMEGA. Как наследие Arduino IDE, инструментальная цепочка develepment в основном предназначена для gcc 4.3.2. Avrstudio 4.19 + Jtagice MKII CN + gcc 4.3.2 + make работает как-то. Но моя проблема в том, что gcc 4.3.2 довольно глючит. Я вижу, например. случайные ошибки, связанные с оптимизацией энергонезависимых переменных, регистровые кешированные значения не всегда записываются в память, а также неправильное предупреждение раздражает. Следовательно, используя gcc 4.7.0 решает проблему, но я не могу загрузить такую ​​программу в Avrstudio 4.19, Avrstudio всегда сбой при загрузке hex. Кто-нибудь пытался и преуспел в этой инструментальной цепочке?Инструментарий Avrstudio 4.19 с использованием gcc 4.7.x

Примечание: я не хочу перейти к более высокой версии Avrstudio, потому что размер растет и, вероятно, создает новые проблемы.

Благодаря

ответ

1

A Erasmus ответ, возможно, работал для avr-gcc 4.7.x; но я нашел в avr-gcc 4.8.1, предоставленный последними версиями инструментария Atmel AVR Toolchain, что AvrStudio4 не загружал никаких отладочных символов.

Я заметил, что раздел .debug-pubnames пропускал из файла ELF, порожденного Avr-GCC 4.8.1 и используя -gdwarf-2 -gstrict-dwarf -gpubnames опции отладки восстановлен отсутствующий раздел, который затем позволил AVRStudio4 показать символы отладки.

+0

Да! Это решение работает с последним avr-gcc 6.1.x. – TMa

1

Если один использует последние avr-gcc наборов инструментов доступных от Atmel, то AVR Studio 4 падает при попытке загрузить файл .elf. Чтобы исправить это изменение, флаги отладки от avr-gcc до -gdwarf-2 -gstrict-dwarf. Затем можно загружать и отлаживать программы под AVR Studio 4 как обычно.

+0

Хм, но флаги gdwarf вообще не помогают. AvrStudio продолжает сбой при запуске Отладки. Может быть связано с программистом JTAG (я использую китайский клон JTAGICE mkII-CN)? Я не могу это доказать, потому что, когда появляется отключенное диалоговое окно, то есть я не могу сказать, на какой конкретной фазе он сработает. Я не знаю, какие данные переданы JTAGICE. – TMa

 Смежные вопросы

  • Нет связанных вопросов^_^