Помогите с avrdude
- Войдите на сайт для отправки комментариев
Пнд, 21/05/2012 - 21:38
Пытаюсь подсунуть arduino mega свой hex файл.
Выполняю команду:
avrdude Путь\avrdude.conf -v -v -v -v -patmega2560 -cstk500v2 -P\\.\COM3 -b115200 -D -Uflash:w:Путь\Мой.hex:i
При это выдаеться ошибка:
stk500v2_ReceiveMessage(): timeout
Выяснилось:
1. Ошибка связана с тем, что stk500v2 не может подключится к COM3
2. Ту же самую команду выполняет успешно из arduino c COM3.
С чем это связанно и как это решить?
1. Закрыть serial monitor в ArduinoIDE, он же "захватывает порт". Если не помоголо, то
2. Закрыть все экземпляры ArduinoIDE (иногда глючит, захватывает и не отпускает)
3. Если не помогло - рубутим комп (иногда настолько жестко "захватывает"),
4. Если не помогло - читаем доки к avrdude, есть ли у нее параметры для того что-бы "ребутнуть" плату перед заливкой. Управление DTR Линией.
Кстати попробуйте уточнить - не может подключится к COM3, или "Не видит там бутлоадера". Если открыть Serial Monitor в ArduinoIDE и дернуть дудтку (вообщем сделать 100% невозможность отрытия порта), ошибка такая же?
Ну и, на крайний случай, можно просто подглядеть какже ArduinoIDE дудку дергает. В старых версиях IDE для этого было достаточно, шифт зажать, в момент нажатия на кнопку компиляции, в новой осталься только более "сложный путь":
1. Закрываем ArduinoIDE
2. В файлик preferences.txt
добавляем строку (для показа процесса заливки)
upload.verbose=true
и строку, если хотим (для показа процесса компялиции)
build.verbose=true
3. Запускаем ArduinoIDE
Теперь в окне лога, она будет показывать весь процесс. Какие утилиты она дергает, с какими параметрами. Последний "дерг" - будет желаемый вами "правильный" вызов дудки.
Как минмум виже отличие в том что
у вас "avrdude Путь\avrdude.conf..."
у у меня вызывает "avrdude -CПуть\avrdude.conf..."
Без пробела межу -C и путь. То есть вот так у меня выглядит для в логе строка для заливки
А вот так она выполнилась из cmd.exe (пришлось в кавычка обернуть длинные пути )