USBasp v2.0 и ATmega328P-PU
- Войдите на сайт для отправки комментариев
Ср, 22/04/2015 - 07:00
Здравствуйте!
Прошу помощи, т.к. сам недавно только этим начал заниматься, и не могу понять что я делаю не так.. В общем, пытаюсь прошить ATmega328P-PU программатором USBasp v2.0 по следующему алгоритму:
- Установил драйвера на USBasp, в Инспекторе объектов отображается USBasp, никаких COM-портов не появилось новых (ставил несколько драйверов, результат один и тот же).
-
Открываю файл c:\Arduino\hardware\arduino\boards.txt , прописываю (нашёл в интернете, не сам рассчитывал, но и выбор других плат ничего не меняет):
tmega328_8.name=Atmega328 (5V, 8 MHz internal) atmega328_8.upload.protocol=arduino atmega328_8.upload.maximum_size=30720 atmega328_8.upload.speed=57600 atmega328_8.bootloader.low_fuses=0xE2 atmega328_8.bootloader.high_fuses=0xDE atmega328_8.bootloader.extended_fuses=0x05 atmega328_8.bootloader.path=optiboot atmega328_8.bootloader.file=optiboot_atmega328.hex atmega328_8.bootloader.unlock_bits=0x3F atmega328_8.bootloader.lock_bits=0x0F atmega328_8.build.mcu=atmega328p atmega328_8.build.f_cpu=8000000L atmega328_8.build.core=arduino atmega328_8.build.variant=standard
- Подсоединяю по следующей схеме:
- Запускаю ArduinoIDE, выбираю Плату (и созданную, и другие пробовал), Программатор (USBasp), COM-порт не активен.
-
Выбираю «Загрузить с помощью программатора» и всё, вылетает ошибка:
avrdude: warning: cannot set sck period. please check for usbasp firmware update. avrdude: error: programm enable: target doesn't answer. 1 avrdude: initialization failed, rc=-1 Double check connections and try again, or use -F to override this check.
- Пробовал на 3-х разных ATmega328P-PU, везде результат одинаковый.
- Все контакты позванивал, больше десятка раз проверил схему, всё как надо соединено, питание в норме – стабильные 5В.
Буду признателен за любые дельные советы, в какую сторону капать или где у меня здесь ошибка.
уж столько раз писали. не хотят поиском пользоваться
или пиши с помощью отдельных программ бутлоадер, или обновляй прошивку программатора чтобы через IDE
Да поиском несколько дней пользуюсь, всё делаю как в описывают, но видимо где-то не догоняю.. А можете сказать как обновить прошивку программатора или где почитать про это?
тебе нужен еще один программатор для этого. как вариант ардуину как программатор использовать, но я не пробовал hex через него заливать. но там все вроде очень просто. 1 строка для дудки. где то на форуме проскакивало что должно быть написано в ней
Благодарю, попробую поискать. Есть такой вариант http://migera.ru/radio/arduino/usbasp.html но у меня нет вторго программатора, буду пробовать залить через Arduino Nano, но пока не понял как это всё должно выглядеть
я специально брал два чтобы обновить прошивку. все равно стоят недорого
почитай. самый простой способ наверно для тебя
http://habrahabr.ru/post/247329/
Знал бы прикуп, жил бы.. Ссылку уже изучаю, надеюсь получиться с помощью nano сделать что-нибуть путёвое.
А тогда ещё вопрос, если не затруднит, как с помощью отдельных программ бутлоадер прошить? Пробовал работать с Khazama AVR Programmer, вылетает какая-то ошибка (не могу скрин сделать, не за тем компом сейчас), и как скетч потом залить не очень понял.
Когда я был ещё маленький я купил сразу ДВА непрошитых программатора ( "неисправных", как многие пишут) ,
и с помощью первого прошил другой, а потом этом "другим" прошил "первый".
И так поступал с другими новыми программаторами. Немедленно в швейку.
И забыл об этом навсегда.
Да : И не ищите компорт там где его нет......... Это программатор......
Спасибо всем за советы! Пытался прошить USBasp с помощью Nano, и пришел к способу проштвки ATmega328 той же Nano, что, в принципе, пока будет вполне достаточно, хотя всё таки думаю о покупке еще одного программатора, и сделать два нормальных.
Вчера прошивал ESR Tester. У меня Windows 10 x64. Есть 2шт. USBASP (один китайский, другой самодельный). Выдаёт ту же ошибку что и у автора поста. По итогу прошил через Arduino Uno (залил в него скетч USBISP). Прошилось без проблем (программой SinaProg), выбирал программатор AVRISP. Думал что из за версии винды, но на XP те же ошибки выдаёт. Пообновлял прошивки через Arduino Uno в обеих программаторах - результата ноль.
sergiom49, Чудес не бывает. Во первых автор топика судя по схеме не подключал кварц к целевому МК. Конечно он не нужен если там фузы дефолтовые стоят. Но автор этого не уточнил, а может и сам не знает. Я всегда ставлю кварц. По этому не знаю проблем. Во вторых автор не написал пробовал ли он шить в режиме LOW-Clock. Опять же я всё время шью в этом режиме, и не знаю проблем :-)
LOW-Clock - не пробывал, спасибо за идею. Обидно что USBASP запросто заливает скетчи в Arduino UNO через оболочку ARDUINO, а другие программы отказываются с USBASP-ом работать...
а другие программы отказываются с USBASP-ом работать...
какие другие программы не работают с USBASP-ом?
Подниму темку, может кто-то что-то подскажет.
Имеется китайский USBasp, вот такой:
Данное чудо техники работает в Arduino IDE и прекрасно прошивает, правда на что-то там немного ругается
" avrdude: warning: cannot set sck period. please check for usbasp firmware update"
Но вот ни в одной другой программе не смог его завести,
пробовал Extreme Burner, AVRDUDESS, Khazama AVR Programmer, не видят его программы и всё тут,
даже когда ставишь "Any usbaps clone with correct VID/PID" выдаётся ошибка
avrdude.exe: error: could not find USB device with vid=0x16c0 pid=0x5dc
при этом данный программатор видится в диспетчере устройств как USBasp и VID/PID у него именно такие как хочет avrdude
В чем может быть проблема, что не так делаю?
noisefault, для начала обновить FW до актуальной версии.
noisefault, для начала обновить FW до актуальной версии.
вот спасибо!
проблема решилась!
noisefault, ой, пишу FW, подразумеваю дрова :) В принципе FW тоже не помешает обновить (другим программатором)..
noisefault, ой, пишу FW, подразумеваю дрова :) В принципе FW тоже не помешает обновить (другим программатором)..
да, именно дрова и помогли, FW не перепрошивал
Привет. Прошивка USBasp программатором и через UNO равнозначны?
У USBasp больше возможностей?
Я, например, не могу прошить фьюзы на 328P. Шью uno-й китайские пустые чипы.
Сначала загрузчик и т.д
Фьюзы считываются все как 0х00. Плата шьется и работает, а фьюзы не меняются?
Пользуюсь AVRDUDESS 2.8
Купил недавно usbasp решил пршить atmega328 залил программу,не какой реакций нету,
в нутри программа есть,но микросхема не отвечает,что делоть подскажите.
То же самое с atmega8.
Есть средство -
Atmega fusebit doctor
в нутри программа есть,но микросхема не отвечает,что делоть подскажите.
Туда вселился дьявол вместо программы, сжыгай всё нахрен.
Добрый день.
Имею USBASP. Подключаюсь к разъемам ISP на NANO, UNO. Прошивается как из IDE так и AVRDUDE 3.3.
Заказал пару китайских Atmega328-P, развел для них плату, впаял только камень, подпаиваюсь программатором и он его не видит. Пишет:
Видимо фюзы зашиты под внешний кварц...
Правильно ли я понимаю, если голый МК зашить под кварц, то в будущем без кварца программатор фьюзы не поменяет?
Опиши как пытался прошить: ИДЕ, тип платы (УНО, Нано и т.д) и желктельно установить кварц на нужную частоту. Иначе как узнаешь , что прошивка зашла.
у меня голый мк 328-p, без платы. Программатор USBASP как на картинке выше. Помню, что программатор прошивал по советам с форумов. Программатор шьет уно, нано, мини и т.п.
К контроллеру подключаюсь напрямую без плат. Программа AVRDUDE_PROG 3.3
Пытаюсь считать калибровочную ячейку генератора или фьюзы, дает ошибку.
Переношу МК на плату NANO, мк отвечает, шьется, загрузчик заливается, мигание диодиком работает. Выпаиваю, цепляюсь напрямую, не работает. Мистика?
может правда ему кварц нужен для программирования?
А прочитать текущие фьюзы религия запрещает ???
Некоторые программаторы имеют специальный высокочастотный выход с меандром, который можно подать на голый чип по схеме:
Если фьюзы выставлены на использование внешнего источника, то без этого источника чип не работает (PB версию не рассматриваем пока).
у меня голый мк 328-p, без платы. Программатор USBASP как на картинке выше. Помню, что программатор прошивал по советам с форумов. Программатор шьет уно, нано, мини и т.п.
К контроллеру подключаюсь напрямую без плат. Программа AVRDUDE_PROG 3.3
Пытаюсь считать калибровочную ячейку генератора или фьюзы, дает ошибку.
Переношу МК на плату NANO, мк отвечает, шьется, загрузчик заливается, мигание диодиком работает. Выпаиваю, цепляюсь напрямую, не работает. Мистика?
может правда ему кварц нужен для программирования?
Что вы шьете в МК? Если загрузчик Уно , нано , мини - то кварц обязательно ставить.
Как вы потом подключаете голый МК - желательно фото , а не "резистор на ресет и все как обычно" .
Если на Нанке этот МК заводится и шьется нормально- фьюзы в норме. Ищите грабли в подключении.
Я исключил плату вообще, подключаюсь проводами к МК и программатору. Питание минус и плюс на 3 и 6 ногу, данные 15,16, такт 17 и 29 сброс.
Возможно дело во фьюзах, о которых говорит Komandir, вот только какая религия у МК, когда он не отвечает, мне неизвестна. Он не отвечает ни на что, фьюзы тоже не читаются.
Но дело близко к развязке. Новый МК без плат читается, ставлю фьюзы:
(Fuses - прямые, почему то не отскриншотилось)
После этого МК не отвечает. Чтение фьюзов ошибка. Чтение прошивки ошибка.
Паяем МК на плату НАНО, МК отвечает. (и загрузчик шьется и скетч и т.п.)
Выходит, что если МК настраиваешь под кварц, то без кварца даже программатором не достучаться?
Выходит, что если МК настраиваешь под кварц, то без кварца даже программатором не достучаться?
Ну естественно. МК же не тактируется от USBasp.
Я раньше с микрочипом работал, там до лампочки какие фьюзы, есть 6 выводов программатора, подключился, считал прошивку (если не заблочено), или стер все и залил по новой. Кварц нужен для тактирования программы.
Тут видимо другой подход, а USBasp не совсем программатор.
подскажите, загрузчик ардуины вообще способен работать без кварца на внутреннем 8МГц? или без кварца всегда шить через ISP?
т.е. могу ли я добавить в boards.txt еще одну плату, ту же НАНО но без кварца и в будущем заливать скетчи через загрузчик?
Когда чип на нано и отвечает - запишите в него фьюзы для работы от внутреннего RC генератора и больше их не трогайте. Будет работать и без нано. С завода фьюзы прописаны так, что включен внутренний RC генератор и делитель на 8. С магазина же попадались чипы с не заводскими фьюзами !!!
Спасибо, ваша помощь была полезной и перепробовав разные варианты, пришел к выводу:
Без кварца... ну никуда. Внутренний генератор заводится, но библиотеки на нем глючат. Uart не попадает в такт. Короче дешевле кварц впаять. Жаль что сразу не знал про это когда платы проектировал.
Был еще один момент с USBasp. Программатор определялся в Вин 7, но Avrdude 3.3 не видела программатор. Все решилось после установки фильтра по питанию от USB. Сдул предохранитель с платы USBasp и со стороны дорожек прилепил платку фильтра: L=30uH и smd C=330uF. Слишком большие были помехи на +5В USB.
Что значит "не может пользоваться поиском,я воспользовался и поисковик дал ссылку на этот сайт и на другие,значит поиском пользоваться умею.