Программатор USBasp.

Для прошивки своих поделок на AVR я использую программатор USBasp, купленный сто лет назад за 100р на AliExpress. Пользоваться очень удобно, никаких тебе древних COM или LTP портов, современный USB!
Вот так выглядит это чудо китайской промышленности!

usbasp

 

Ну а теперь по подробнее)

Железо.

AC-PG-USBASP_LRGusbasp_circuit

Автором данного программатора является немец Thomas Fichl, страничка его разработки со схемами, файлами печатных плат и драйверами.
Работает этот программатор через ISP.

avr_isp10x6

Распиновка контактов на самом программаторе

usbasp

Поэтому я всегда стараюсь выводить этот разъем если сам развожу плату. Очень удобно, прошивать и отлаживать можно на ходу. Прошил, не заработало, подправил код, прошил еще раз. Не нужно снимать контроллер вставлять в программатор….
В работе и железе выглядит примерно так

20150922_122504

Софт

Ну а теперь рассмотрим с каким же софтом работает данная поделка!
Скачиваем драйвера с офф сайта, страничка для загрузки.
Устанавливаем. Внимание! Компьютер будет ругаться на то что драйвер без цифровой подписи. В Windows 7 просто подтверждаем что хотим продолжить,

11212cc3

а для Windows 8 и новее используем инструкцию.

Все теперь программатор готов к работе.
Я использую бесплатный прошивальщик Khazama AVR Programmer.  Отличная прога с минималистичным дизайном!
Выбираем чип и поехали!

12313

Тут можно поиграться с FUSES битами, все с описаниями за что отвечают!

312314

Ну вот пожалуй и все!

З.Ы.

Не знаю как у всех, но именно на мой экземпляр USBASP v2.0, Khazama ругается при перепрошивке Error Setting USBASP ISP Clock…

35345

Игра с выставлением разной частоты не дает результатов.

55556

После недолгих поисков в интернете наткнулся таки на такую же проблему у других людей.

Для исправления этого досадного косяка, нужно перепрошить программатор)) Для такого трюка нам понадобится еще один USBasp!

USB_ASP_SelfprogВот так нужно все соеденить. Теперь заливаем прошивку

файл: usbasp.atmega8.2011-05-28

Выставляем Fuse биты и прошиваем!

 

normal

После этого доставучие ошибки пропадут!

 

Update 2016

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

error: usbasp_transmit: libusb0-dll:err [contorl_msg]

ошибка usbasp

Решение было найдено не незамедлительно, нужно понизить частоту программирования. Идем в Command — > Program Options — > ISP CLK Speed и выставляем 187.5 KHZ (или AUTO).

ошибка usbasp2

После этого все снова работает!

Update 2017

Вставляем новую не разу не прошитую Atmega8 и видим такое!

100500 раз проверяем схему и программатор, все в норме! И у же почти сдавшись, находим косяк! При  первом включении Atmega8 работает от внутреннего генератора на частоте 1 Mhz, она просто не успевает определиться в программе. Решение простое, нужно уменьшить частоту чтения в Khazama.

После этого прошиваем контроллер на 8 Mhz и выставляем AUTO.

И решение еще проще))) Нужно замкнуть контакты на программаторе JP3, для понижения частоты, а после выставления фьюзов на более высокую частоту работы atmega, разомкнуть.

Программатор USBasp.: 10 комментариев

  1. Владимир Алексеевич

    Спасибо за статью.Такой же случай.Только не было 2го usbasp.Сначала прошил AVR910 в usbasp,этой
    прошивкой(usbasp.atmega8.2011-05-28),а потом им исправил прошивку в usbasp по вашей инструкции.

  2. Константин

    А у меня на проце atmega 48 20au. работал, после перепрошивки никак не определяется. не пойму как оживить. Можете подсказать?

    1. Analog Автор записи

      Вы FUSES правильно выставили? Если после перепрошивки не определяется то скорее всего выставили работу не от кварца а от внешнего генератора. я в таком случае делал из Ардуино простейший генератор и подавал сигнал на мертвый чип, а уж потом спокойно прошивал.

  3. Да я тут просто мимо проходил

    Автору от души огромное спасибо, благодаря тебе вернул к жизни 3 штуки attiny2313, у которых из-за незнания выставил (при помощи фьюзов) слишком маленькую тактовую частоту. Программатор из-за старой прошивки работал только со старой казамой (1.6.2), в которой нельзя выбрать частоту ISP. Теперь обновил прошивку и новая версия (1.7) работает как надо. Жму руку, братишка.

  4. Alexander

    Добрый день!
    Имеются два программатора USPasp.
    С родной прошивкой ведут себя так

    Если прошить последнюю, то в AVRdude можно сделать только одну операцию. То есть, например, прочитали микроконтроллер — и всё, все последующие попытки что-либо сделать выдают вот такую ошибку

    Если программатор вынуть/вставить, то опять можно выполнить одну операцию.
    Есть у кого-нибудь мысли, что это и как с этим бороться?

    1. david

      Alexander.
      Будь другом.
      Разъясни если можешь почему дуде выдает ошибку когда драйвера на usbasp установлены нормально?
      С чем это может быть связано?

  5. Сергей

    Обновил прошивку прогером dapa, не надо народ пугать вторым usbasp, всё нормально любым путём. Интересуют простые и дешёвые hvsp & hvpp, бывают ли?

  6. Алексей

    Как-то давно случайно сжег свой USBAsp. Знал точно, что сгорела Atmega8. Сегодня запаял новую чистую. Но не знал, какие фьюзы нужно выставлять для этого программатора. Ваша статья помогла. Выставил фьюзы, залил прошивку и стал как новый. Спасибо Вам!!!

Добавить комментарий для Analog Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *