USBasp v2.0 и ATmega328P-PU

alexandr_22
Offline
Зарегистрирован: 15.03.2015

Здравствуйте!

Прошу помощи, т.к. сам недавно только этим начал заниматься, и не могу понять что я делаю не так.. В общем, пытаюсь прошить ATmega328P-PU программатором USBasp v2.0 по следующему алгоритму:

  1. Установил драйвера на USBasp, в Инспекторе объектов отображается USBasp, никаких COM-портов не появилось новых (ставил несколько драйверов, результат один и тот же).
  2. Открываю файл 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

     

  3. Подсоединяю по следующей схеме:
  4. Запускаю ArduinoIDE, выбираю Плату (и созданную, и другие пробовал), Программатор (USBasp), COM-порт не активен.
  5. Выбираю «Загрузить с помощью программатора» и всё, вылетает ошибка:
    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.
    

     

  6. Пробовал на 3-х разных ATmega328P-PU, везде результат одинаковый.
  7. Все контакты позванивал, больше десятка раз проверил схему, всё как надо соединено, питание в норме – стабильные 5В.

Буду признателен за любые дельные советы, в какую сторону капать или где у меня здесь ошибка.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

уж столько раз писали. не хотят поиском пользоваться

или пиши с помощью отдельных программ бутлоадер, или обновляй прошивку программатора чтобы через IDE

alexandr_22
Offline
Зарегистрирован: 15.03.2015

Да поиском несколько дней пользуюсь, всё делаю как в описывают, но видимо где-то не догоняю.. А можете сказать как обновить прошивку программатора или где почитать про это?

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

тебе нужен еще один программатор для этого. как вариант ардуину как программатор использовать, но я не пробовал hex через него заливать. но там все вроде очень просто. 1 строка для дудки. где то на форуме проскакивало что должно быть написано в ней

alexandr_22
Offline
Зарегистрирован: 15.03.2015

Благодарю, попробую поискать. Есть такой вариант  http://migera.ru/radio/arduino/usbasp.html но у меня нет вторго программатора, буду пробовать залить через Arduino Nano, но пока не понял как это всё должно выглядеть

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

я специально брал два чтобы обновить прошивку. все равно стоят недорого

почитай. самый простой способ наверно для тебя

http://habrahabr.ru/post/247329/

alexandr_22
Offline
Зарегистрирован: 15.03.2015

Знал бы прикуп, жил бы.. Ссылку уже изучаю, надеюсь получиться с помощью nano сделать что-нибуть путёвое.

alexandr_22
Offline
Зарегистрирован: 15.03.2015

А тогда ещё вопрос, если не затруднит, как с помощью отдельных программ бутлоадер прошить? Пробовал работать с Khazama AVR Programmer, вылетает какая-то ошибка (не могу скрин сделать, не за тем компом сейчас), и как скетч потом залить не очень понял.

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Когда я был ещё маленький я купил сразу ДВА непрошитых программатора ( "неисправных",  как многие пишут) ,
и  с помощью первого прошил другой, а потом этом "другим" прошил "первый".
И так поступал с другими новыми программаторами. Немедленно в швейку.
И забыл об этом навсегда.
Да : И не ищите компорт там где его нет......... Это программатор......

alexandr_22
Offline
Зарегистрирован: 15.03.2015

Спасибо всем за советы! Пытался прошить USBasp с помощью Nano, и пришел к способу проштвки ATmega328 той же Nano, что, в принципе, пока будет вполне достаточно, хотя всё таки думаю о покупке еще одного программатора, и сделать два нормальных.

sergiom49
Offline
Зарегистрирован: 22.07.2016

Вчера прошивал ESR Tester. У меня Windows 10 x64. Есть 2шт. USBASP (один китайский, другой самодельный). Выдаёт ту же ошибку что и у автора поста. По итогу прошил через Arduino Uno (залил в него скетч USBISP). Прошилось без проблем (программой SinaProg), выбирал программатор AVRISP. Думал что из за версии винды, но на XP те же ошибки выдаёт. Пообновлял прошивки через Arduino Uno в обеих программаторах - результата ноль. 

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

sergiom49, Чудес не бывает. Во первых автор топика судя по схеме не подключал кварц к целевому МК. Конечно он не нужен если там фузы дефолтовые стоят. Но автор этого не уточнил, а может и сам не знает. Я всегда ставлю кварц.  По этому не знаю проблем.  Во вторых автор не написал пробовал ли он шить в режиме LOW-Clock. Опять же я всё время шью в этом режиме, и не знаю проблем :-)

sergiom49
Offline
Зарегистрирован: 22.07.2016

LOW-Clock - не пробывал, спасибо за идею. Обидно что USBASP запросто заливает скетчи в Arduino UNO через оболочку ARDUINO, а другие программы отказываются с USBASP-ом работать...

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

sergiom49 пишет:

а другие программы отказываются с USBASP-ом работать...

какие другие программы не работают с USBASP-ом?

noisefault
Offline
Зарегистрирован: 24.09.2018

Подниму темку, может кто-то что-то подскажет.

Имеется китайский 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

 

В чем может быть проблема, что не так делаю? 

 

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

noisefault, для начала обновить FW до актуальной версии.

noisefault
Offline
Зарегистрирован: 24.09.2018

dimax пишет:

noisefault, для начала обновить FW до актуальной версии.

 

вот спасибо! 

проблема решилась!

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

noisefault, ой, пишу FW, подразумеваю дрова :) В принципе FW тоже не помешает обновить (другим программатором)..

noisefault
Offline
Зарегистрирован: 24.09.2018

dimax пишет:

noisefault, ой, пишу FW, подразумеваю дрова :) В принципе FW тоже не помешает обновить (другим программатором)..

да, именно дрова и помогли, FW не перепрошивал

MarkDV
Offline
Зарегистрирован: 24.11.2018

Привет. Прошивка USBasp программатором и через UNO равнозначны?

У USBasp больше возможностей?

Я, например, не могу прошить фьюзы на 328P. Шью uno-й китайские пустые чипы. 

Сначала загрузчик и т.д

Фьюзы считываются все как 0х00. Плата шьется и работает, а фьюзы не меняются?

Пользуюсь AVRDUDESS 2.8

 

vlad555
Offline
Зарегистрирован: 20.06.2019

Купил недавно usbasp решил пршить atmega328 залил программу,не какой реакций нету,

в нутри программа есть,но микросхема не отвечает,что делоть подскажите.

То же самое с atmega8.

MarkDV
Offline
Зарегистрирован: 24.11.2018

Есть средство -

Atmega fusebit doctor

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

vlad555 пишет:

в нутри программа есть,но микросхема не отвечает,что делоть подскажите.

Туда вселился дьявол вместо программы, сжыгай всё нахрен. 

Mizar
Offline
Зарегистрирован: 23.12.2018

Добрый день.

Имею USBASP. Подключаюсь к разъемам ISP на NANO, UNO. Прошивается как из IDE  так и AVRDUDE 3.3.

Заказал пару китайских Atmega328-P, развел для них плату, впаял только камень, подпаиваюсь программатором и он его не видит. Пишет:

avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: error: programm enable: target doesn't answer. 1 
avrdude.exe: initialization failed, rc=-1
 
Перекидываю камни местами... на плате NANO контроллер отвечает, на моей плате не отвечает.
Плату перепроверял. Из навесного только резистор 10К ресет к питанию и пару конденсаторов по питанию.
Подскажите, нужна ли контроллеру минимальная обвязка? и какое питание нужно установить на программаторе? 5 или 3.3
Программатор сажаю на разъем U2 (SCK, MOSI, MISO) + RST на кнопке и питание на выходе стабилизатора.
Выпаял камень и припаялся прямо к ногам, тот же эффект.
Почему на плате NANO камень отвечает и на прямую не хочет? 
Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Видимо фюзы зашиты под внешний кварц...

Mizar
Offline
Зарегистрирован: 23.12.2018

Правильно ли я понимаю, если голый МК зашить под кварц, то в будущем без кварца программатор фьюзы не поменяет?

Plasteroid
Plasteroid аватар
Offline
Зарегистрирован: 15.07.2020

Опиши как пытался прошить: ИДЕ, тип платы (УНО, Нано и т.д)  и желктельно установить кварц на нужную частоту. Иначе как узнаешь , что прошивка зашла.

Mizar
Offline
Зарегистрирован: 23.12.2018

у меня голый мк 328-p, без платы. Программатор  USBASP как на картинке выше. Помню, что программатор прошивал по советам с форумов. Программатор шьет уно, нано, мини и т.п.

К контроллеру подключаюсь напрямую без плат. Программа AVRDUDE_PROG 3.3 

Пытаюсь считать калибровочную ячейку генератора или фьюзы, дает ошибку. 

Переношу МК на плату NANO, мк отвечает, шьется, загрузчик заливается, мигание диодиком работает. Выпаиваю, цепляюсь напрямую, не работает. Мистика?

может правда ему кварц нужен для программирования? 

 

 

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

А прочитать текущие фьюзы религия запрещает ???

Некоторые программаторы имеют специальный высокочастотный выход с меандром, который можно подать на голый чип по схеме:

Если фьюзы выставлены на использование внешнего источника, то без этого источника чип не работает (PB версию не рассматриваем пока).

Plasteroid
Plasteroid аватар
Offline
Зарегистрирован: 15.07.2020

Mizar пишет:

у меня голый мк 328-p, без платы. Программатор  USBASP как на картинке выше. Помню, что программатор прошивал по советам с форумов. Программатор шьет уно, нано, мини и т.п.

К контроллеру подключаюсь напрямую без плат. Программа AVRDUDE_PROG 3.3 

Пытаюсь считать калибровочную ячейку генератора или фьюзы, дает ошибку. 

Переношу МК на плату NANO, мк отвечает, шьется, загрузчик заливается, мигание диодиком работает. Выпаиваю, цепляюсь напрямую, не работает. Мистика?

может правда ему кварц нужен для программирования?

Что вы шьете в МК?  Если загрузчик Уно , нано , мини - то кварц обязательно ставить.

Как вы потом подключаете голый МК - желательно фото , а не "резистор на ресет  и все как обычно" .

Если на Нанке этот МК заводится и шьется нормально- фьюзы в норме. Ищите грабли в подключении.

Mizar
Offline
Зарегистрирован: 23.12.2018

Я исключил плату вообще, подключаюсь проводами к МК и программатору. Питание минус и плюс на 3 и 6 ногу, данные 15,16, такт 17 и 29 сброс.

Возможно дело во фьюзах, о которых говорит Komandir, вот только какая религия у МК, когда он не отвечает, мне неизвестна. Он не отвечает ни на что, фьюзы тоже не читаются. 

Но дело близко к развязке. Новый МК без плат читается, ставлю фьюзы:

(Fuses -  прямые, почему то не отскриншотилось)

После этого МК не отвечает. Чтение фьюзов ошибка. Чтение прошивки ошибка.

Паяем МК на плату НАНО, МК отвечает. (и загрузчик шьется и скетч и т.п.)

Выходит, что если МК настраиваешь под кварц, то без кварца даже программатором не достучаться?

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Mizar пишет:

Выходит, что если МК настраиваешь под кварц, то без кварца даже программатором не достучаться?

Ну естественно. МК же не тактируется от USBasp.

Mizar
Offline
Зарегистрирован: 23.12.2018

Я раньше с микрочипом работал, там до лампочки какие фьюзы, есть 6 выводов программатора, подключился, считал прошивку (если не заблочено), или стер все и залил по новой. Кварц нужен для тактирования программы.

Тут видимо другой подход, а USBasp не совсем программатор.

Mizar
Offline
Зарегистрирован: 23.12.2018

подскажите, загрузчик ардуины вообще способен работать без кварца на внутреннем 8МГц? или без кварца всегда шить через ISP?

т.е. могу ли я добавить в boards.txt еще одну плату, ту же НАНО но без кварца и в будущем заливать скетчи через загрузчик?

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Когда чип на нано и отвечает - запишите в него фьюзы для работы от внутреннего RC генератора и больше их не трогайте. Будет работать и без нано. С завода фьюзы прописаны так, что включен внутренний RC генератор и делитель на 8. С магазина же попадались чипы с не заводскими фьюзами !!!

Mizar
Offline
Зарегистрирован: 23.12.2018

Спасибо, ваша помощь была полезной и перепробовав разные варианты, пришел к выводу:

Без кварца... ну никуда. Внутренний генератор заводится, но библиотеки на нем глючат. Uart не попадает в такт. Короче дешевле кварц впаять. Жаль что сразу не знал про это когда платы проектировал.

 

 

 

NickF
Offline
Зарегистрирован: 11.12.2020

Был еще один момент с USBasp. Программатор определялся в Вин 7, но Avrdude 3.3 не видела программатор. Все решилось после установки фильтра по питанию от USB. Сдул предохранитель с платы USBasp и со стороны дорожек прилепил платку фильтра: L=30uH и smd C=330uF. Слишком большие были помехи на +5В USB.

bva1
Offline
Зарегистрирован: 11.03.2017

Что значит "не может пользоваться поиском,я воспользовался и поисковик дал ссылку на этот сайт и на другие,значит поиском пользоваться умею.