Не заливаются скетчи через USB, через ICSP все льется ОК...
- Войдите на сайт для отправки комментариев
Ср, 15/06/2016 - 10:06
Здравствуйте! Укажите пожалуйста пути решения следующей проблемы:
Штатным способом (через USB) никак не хотят заливаться скетчи на китайский UNO R3 на конвертере Atmega16U2. Через ICSP и программатор USBASP все работает. В системе плата тоже определяется нормально. Кабели USB менять пробовал - не помогает. Loop-Back тест с arduino.cc тоже проходит...
Sketch uses 1,066 bytes (3%) of program storage space. Maximum is 32,256 bytes. Global variables use 9 bytes (0%) of dynamic memory, leaving 2,039 bytes for local variables. Maximum is 2,048 bytes. C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -carduino -PCOM4 -b115200 -D -Uflash:w:D:\TEMP\build9c9ef3bdfe2fccb480bc6e4bac749e41.tmp/Blink.ino.hex:i avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Wunsch System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf" Using Port : COM4 Using Programmer : arduino Overriding Baud Rate : 115200 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x20 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x20 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x20 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x20 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x20 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x20 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x20 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x20 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x20 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x20 avrdude done. Thank you. Problem uploading to board. See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.
Lexey78, бутлоадер для uno перешивали?
Да, перепрошивал. Думал вся причина в этом - не помогло.
Как вообще должна вести себя исправная плата с прошитым бутлоадером и без микропрограммы при подключении питания? И на всякий случай: как можно полностью "обнулить" atmega328p?
Почистил кристалл при помощи AVRDUDE_PROG, залил бутлоадер еще раз - без изменений.
Вижу, что Arduino IDE пытается заливать скетч на скорости 115200. Может можно как-то до 9600 скорость снизить?
Lexey78, в качестве следующего шага логично было бы попробовать внешний преобразователь UART-COM.
dimax, согласен, но я начинающий и как сделать так, чтобы обойти штатный atmega16u2 пока не представляю.
Есть CH340G USB TTL-UART преобразователь. Буду благодарен за подсказку чего куда подключать и где жать.
Подключаете преобразователь к ардуино: 5V - VCC, GND - GND, RX - TX, TX - RX. В Arduino IDE выбираете другой COM-порт, который появится после подключения преобразователя в USB компа. Саму ардуину в USB не подключать, только преобразователь.
Lexey78 да проще простого. Смотрите на свою Uno. Нужно посадить ресет чипа 16U2 на "ноль" - Около гнезда USB есть 6-пиновый разъём, возможно не распаянный, как например тут. Нужно 5 пин соединить с 6 пином (или просто с GND) , удобно одеть джампер. Первый пин отмечен точкой, важно не перепутать. Потом соединить проводниками выход Tx UART ->d0 UNO; Rx UART ->d1 UNO. Gnd-Gnd. ну и питание по вкусу, можно от переходника и UNO запитать. И шить, нажав ресет в нужный момент.
Увы, не работает. Ошибка та же. Только код каждый раз разный (теперь resp=0x61).