Программирование Eclipse AVR — ATMega2560

У меня возникли проблемы с загрузкой кода на мой Seeeduino ADK (по сути, Arduino Mega 2560) с использованием Eclipse. По сути, эта тема объясняет мою проблему. Иногда я получаю серию тайм-аутов при загрузке Arduino IDE, что обычно устраняется удалением и повторной вставкой USB. К сожалению, это не помогает решить проблему в Eclipse.

Я пытался выполнить загрузку с помощью AVRdude через командную строку (я даже пробовал «хакерское» решение в последнем комментарии вышеприведенной ветки), но безрезультатно. Это строка, которую я использую для этого:

"%AVR_DUDE%" -pm2560 -cstk500v2 -P\\.\%COMM_PORT% -b115200 -F -V -D - Uflash:w:"%HEX_FILE%":a -C"%AVR_DUDE_CONF%"

Что дает мне:

avrdude.exe: stk500v2_ReceiveMessage(): timeout

Я знаю, что приведенные выше пакетные переменные в порядке, потому что AVRdude работает правильно (но затем время ожидания истекает). Если у кого-то есть какие-либо идеи или советы, которые могли бы помочь мне с моей загрузкой, я был бы очень признателен. Заранее спасибо.

РЕДАКТИРОВАТЬ: Как оказалось, причиной этого может быть то, что среда разработки Arduino отправляет сброс на плату перед загрузкой, чего не делает плагин Eclipse AVR. Я проверю это и напишу perl-скрипт для загрузки, но я совершенно уверен, что проблема именно в этом.


person SuperTron    schedule 09.05.2012    source источник


Ответы (2)


Ваше подозрение верно. Arduino IDE использует пропатченную версию AVRDude для импульсной передачи линии DTR и сброса платы перед каждой загрузкой. По какой-то причине у некоторых людей возникли трудности с получением правильных параметров командной строки, чтобы воспроизвести это на Mega2560. У меня у самого была такая же проблема - ATMega328 работает без проблем, а вот 2560 нужно переустанавливать вручную.

Есть некоторые дополнительные объяснения и советы, как заставить его работать здесь (проверьте также комментарии): http://false.ekta.is/2011/05/avrdude-5-10-arduino-mega-2560-загрузкаизкоманднойстроки/

person engblaze    schedule 09.06.2012

Ознакомьтесь с подробностями здесь... http://false.ekta.is/2011/05/avrdude-5-10-arduino-mega-2560-command-line-uploading/

Если вы используете avrdude > версии 5.1, измените программатор на -cwiring.

Это сбросит чип в первую очередь

person user3693947    schedule 31.05.2014
comment
Спасибо за ваш ответ. Однако имейте в виду, что этот ответ может пережить срок действия связанного сообщения - было бы здорово, если бы вы могли немного уточнить, что говорится в связанном сообщении. - person Johanness; 31.05.2014