USBASP: USB AVR программатор для микроконтроллеров ATmega, ATtiny

Admin 06.07.2016

Доброго дня уважаемые друзья!
Приветствую Вас на сайте «Мир микроконтроллеров»


USBASP — USB программатор для программирования микроконтроллеров AVR

Программатор USBASP — устройство, распиновка, подключение, прошивка

Сегодня мы рассмотрим как, без особых затрат и быстро, запрограммировать любой микроконтроллер AVR поддерживающий режим последовательного программирования (интерфейс ISP) через USB-порт компьютера. В качестве программатора мы будем использовать очень простой и популярный программатор USBASP, а в качестве программы — AVRdude_Prog V3.3, которая предназначена для программирования МК AVR.

USBASP программатор, программа AVRdude_prog v3.3 rus


Программатор USBASP

Для того, чтобы запрограммировать микроконтроллер необходимо иметь две вещи:
— программатор
— соответствующее программное обеспечение для записи данных в МК
Одним из наиболее простых, популярных и миниатюрных программаторов для AVR является USBASP программатор, созданный немцем Томасом Фишлем.
Имеется много разных схемотехнических решений этого программатора, программатор можно собрать самому или купить (стоимость — 2-3 доллара). При самостоятельной сборке следует учитывать, что собранный программатор необходимо будет прошить сторонним программатором.

Мы рассмотрим наиболее «навороченную» версию программатора:

USBASP AVR программатор
Характеристики программатора:
— работает с различными операционными системами — Linux, Mac OC, Windows (для операционной системы Windows, для работы программатора, необходимо установить драйвера  — архив в конце статьи)
— скорость программирования до (скорость программирования можно устанавливать самому, к примеру в AVRDUDE_PROG) 375 (5) кб/сек
— имеет 10-контактный интерфейс ISP (соответствует стандарту ICSP с 10-контактной распиновкой)
— поддерживает два напряжения питания программатора — 5В и 3,3В (не все USB порты ПК работают при 5 Вольтах)
— питается от порта USB компьютера, имеет встроенную защиту по току (самовосстанавливающийся предохранитель на 500 мА)

Назначение джамперов:
разъем JP1 — предназначен для перепрошивки микроконтроллера программатора (для перепрошивки — необходимо замкнуть контакты)
разъем JP2 — напряжение питания программатора — 5 Вольт или 3,3 Вольта (по умолчанию — 5 Вольт, как на фотографии). Программируемый микроконтроллер, или конструкцию, в которой он установлен, при токе потребления 300-400 мА можно запитать с программатора, для этого на разъеме есть выход +5В (VCC).
разъем JP3 — определяет частоту тактирования данных SCK: разомкнутый — высокая частота (375 кГц), замкнутый — низкая частота (8 кГц)
Подробнее о разъеме JP3
Джампер JP3 предназначен для уменьшения скорости записи данных в микроконтроллер. Если у микроконтроллера установлена частота тактирования более 1,5 мГц — джампер может быть разомкнут, при этом скорость программирования высокая. Если тактовая частота менее 1,5 мГц — необходимо закоротить выводы джампера — снизить скорость программирования, иначе запрограммировать микроконтроллер не получится. К примеру, если мы будем программировать микроконтроллер ATmega8 (в принципе, практически все МК AVR настроены на тактовую частоту 1 мГц по умолчанию), у которого частота тактирования по умолчанию 1 мГц, необходимо будет замкнуть выводы джампера (как на фотографии). Лучше, наверное, держать этот джампер постоянно замкнутым, чтобы, забыв о его существовании, не мучиться вопросом — почему микроконтроллер не прошивается.

Если вы будете пользоваться программой AVRDUDE_PROG, выложенной на сайте, то о перемычке можно забыть

Программатор поддерживается следующим программным обеспечением:
— AVRdude
— AVRdude_Prog
— Bascom-AVR
— Khazama AVR Prog
— eXtreme Burner AVR


Работать с таким программатором очень просто — соединить соответствующие выводы программатора с микроконтроллером, подключить к USB-порту компьютера — программатор готов к работе.
Распиновка 10-контактного кабеля программатора USBASP:

Распиновка USBASP
1 — MOSI — выход данных для последовательного программирования
2 — VCC — выход +5 (+3,3) Вольт для питания программируемого микроконтроллера или программируемой платы от порта USB компьютера (максимальный ток 200 мА — чтобы не сжечь порт USB)
3 — NC — не используется
4 — GND — общий провод (минус питания)
5 — RST — подключается к выводу RESET микроконтроллера
6 — GND
7 — SCK — выход тактирования данных
8 — GND
9 — MISO — вход данных для последовательного программирования
10 — GND


Установка драйверов для программатора USBASP

Установка драйвера для программатора USBASB очень проста:
— подсоедините программатор к USB порту компьютера, при этом в диспетчере устройств появится новое устройство «USBasp» с желтым треугольником и восклицательным знаком внутри, что означает — не установлены драйвера
— скачайте и разархивируйте файл «USBasp-win-driver-x86-x64-ia64-v3.0.7»
— запустите файл «InstallDriver» — будут автоматически установлены драйвера для программатора
— проверьте диспетчер устройств — желтый треугольник должен исчезнуть (если нет, щелкните правой кнопкой по устройству «USBasp» и выберите пункт «Обновить»
— программатор готов к работе


Архив «usbasp.2011-05-28» содержит папки:
= BIN:
— win-driver — драйвера для программатора
— firmware — прошивка для микроконтроллеров Mega8, Mega88, Mega48
= circuit — схема простого программатора в PDF и Cadsoft Eagle

При перепрошивке китайского программатора рекомендую установить FUSE-бит CKOPT. CKOPT взаимосвязан с предельной тактовой частотой. По умолчанию CKOPT сброшен и стабильная  работа микроконтроллера программатора при применение кварцевого резонатора возможна только до частоты 8 МГц ( а МК программатора работает на частоте 12 МГц). Установка FUSE-бита CKOPT увеличивает максимальную частоту до 16 МГц. Китайцы не трогают этот FUSE-бит, что довольно часто приводит к отказу программатора (обычно система не определяет программатор).

Архив «USBasp-win-driver-x86-x64-ia64-v3.0.7» предназначен для установки драйверов, как указано в статье

  usbasp.2011-05-28 (518,9 KiB, 5 640 hits)

  Скачать "USBasp-win-driver-x86-x64-ia64-v3.0.7" (10,9 MiB, 12 978 hits)

Скачать с ЯндексДиска


Описанный в статье USBASP программатор, прошитый последней версией программы, проверенный в работе, с установленными джамперами и перемычками, вы можете приобрести в интернет-магазине сайта «МирМК-SHOP»
Перейти на страницу магазина


Программирование микроконтроллеров AVR фирмы Atmel

1. Микроконтроллеры — первый шаг
2. Системы счисления: десятичная, двоичная и шестнадцатиричная
3. Логические операции, логические выражения, логические элементы
4. Битовые операции
5. Прямой, обратный и дополнительный коды двоичного числа
6. Программа AVRDUDE_PROG: программирование микроконтроллеров AVR ATmega и ATtiny


(26 голосов, оценка: 4,96 из 5)
Загрузка...
USBASP ISP программатор и AVRdude prog: программирование микроконтроллеров AVR ATmega, ATtiny. Как прошить микроконтроллер.
Published by: Мир микроконтроллеров
Date Published: 07/06/2016

Комментарии

USBASP: USB AVR программатор для микроконтроллеров ATmega, ATtiny — 38 комментариев

  1. Доброго времени! Собрал программатор на мега8А, usbasp.
    Всё работает, корме одного — светодиод, показывающий наличие питания не горит, как должно, гаснет во время обмена, а красный вообще не светится….
    Смена прошивок, контроллеров программатора положение не исправляют.
    Плата проверена,промыта прозвонена…
    Как Вы думаете,с чем это может быть связано?
    Программатор, переделанный avr910 в basp, работает прекрасно,
    хочется разобраться в причине — то ли что то в описании не так,
    То ли в прошивках…

    • Здравствуйте!
      Чтобы ответить на Ваш вопрос нужна ссылка на описание собранного программатора.
      С уважением, Admn.

  2. Добрый день! Очень надо прошить модуль бегущей строки , процессор ATmega128, программатор такой как описан выше, но я не могу найти как правильно его прошить с помощью программы eXtreme Burner AVR, Нашёл много описания и видео как сделать это используя другие программы, а вот про ту которую использую я ничего нет.Помогите если это возможно. Для основной трудностью является выставление Fuse бит и что конкретно означают все эти Fuse биты.Ну очень нужна ваша помощь.Много прочёл, по поводу того, что можно убить процессор выставив не так Fuse, не хотелось бы его убить своими неправильными действиями.Спасибо.
    Ответить ↓

    • Здравствуйте Виктор!
      Если есть, то дайте ссылку на этот модуль с описанием программы и прошивки.
      Постараюсь Вам помочь.
      С уважением, Admin.

      • Здравствуйте!Понимаете,я скачиваю прошивку рабочего процессора ATmeqa128 с помощью программы eXtreme Burner AVR, сливаю ее в такой же кристалл.И все,модуль бегущей строки не работает.Статус все прекрасно показывает 100% .Но что то я значит делаю не так?

        • Здравствуйте Виктор.
          Видимо, кроме прошивки, Вам надо считать с рабочего МК FUSE-биты, и записать считанные данные в новый МК.
          С уважением, Admin/

  3. Да вот еще что странно,распиновка кабеля GND второй а на программаторе пятый GND,думаю это ошибка?

      • Здравствуйте Виталий!
        1. Распиновка стандартная:
        — на 10-контактном разъеме GND — 4,6,8 и 10 контакты (но не 2 и 5), надо правильно считать нумерацию контактов на разъеме и учитывать, что мы можем смотреть на него «зеркально»
        — на 6-контактном разъеме GND — 6 контакт
        2. Ошибка прошивки МК скорее всего в следующем:
        — замкните контакты JP3 (снижаем скорость прошивки)
        — проверьте наличие напряжения 5 Вольт (разъем JP2)
        — перепрошейте программатор (в статье есть файл для перепрошивки)
        С уважением, Admin.

  4. Добрый день админ!,при попытке прошить Attiny44 выдает вот такую ошибку-error setting usbasp isp clock,в чем может быть проблема?

  5. Здравствуйте Admin!
    1) Скажите, а контроллер ATTINY13A-PU DIP-8 — можно таким программатором прошить?
    2) Где именно такой программатор можно приобрести или его аналог для прошивки ATTINY13A-PU?

    • Здравствуйте Сергей!
      Да, таким программатором микроконтроллер прошить можно.
      Приобрести можно или у нас в магазине (после 25 сентября), или в любом другом магазине, а также у китайцев.
      С уважением, Admin.

  6. непойму что не так.запускаю прогу AVRDUDE_PROG а там всё ERROR написано.

  7. Купил данный програмтор.Прошивает видит контролер перепрошивает. но кострукция не работает.Схема проверена неоднократно.Пробывал в разных корпусах Атмега 8.Схема Джин 1. вольтметр амперметр.

  8. Добрый день.Помогите советов .Программатор USBASP ,установил драйвера (всё установилось )но не присваивается виртуальный порт для программатора и по этой причине софт не видит его .Что делать в данной ситуации?

        • Также пробовал и на win Xp.Драйвера установлены ,но софт не видит его и нету порта .

          • Алексей!
            Давайте попробуем решить эту проблему. Этим мы сможем помочь и другим.
            Жду Вашего ответа и понимания.
            С уважением, Турчак Вадим.

        • Здравствуйте Алексей!
          У меня программатор установлен на нетбуке, ХР, все работает.
          Проверял данный программатор и на домашнем ПК, с Вин7, Вин8, Вин10. Но эти программы были лицензионные.

  9. Здравствуйте. Подскажите, можно ли USBASP запрограммировать микроконтроллер AT89S52. Указанные выше программы данный контроллер не поддерживают, но в характеристиках USBASP сказано , что поддерживается.
    Спасибо .

    • Здравствуйте Андрей!
      К сожалению я не встречал программ поддерживающий данный МК (а может плохо смотрел)
      С уважением, Admin.

  10. Доброго времени суток! Купил программатор как на фото . Мне нужно перепрошить eeprom 25L32 на роутере . Нужно ли менять прошивку на программаторе на альтернативную ? и Какой программой пользоваться ?

  11. Здравствуйте, уважаемый админ! Возникла проблема,надо слить прошивку с блока управления холодильником (мк Attiny26L). Как возможно это сделать при помощи програматора usbasp и если это и возможно то как определить какие фьюз биты выставлять, и в какой программе лучше всего это сделать? Заранее благодарен!

    • Здравствуйте Рустам!
      0. Создаете папку, к примеру на рабочем столе
      1. Подсоединяете USBASP к микроконтроллеру
      2. Запускаете программу AVRDUDE_PROG 3.3 (описание программы на сайте), выбираете МК ATtiny26
      3. В разделе программы «Flash» указываете путь до созданной папки и нажимаете кнопку «Чтение» — прошивка будет считана с МК и помещена в папку
      4. Тоже самое делаете и для раздела «Eeprom»
      5. Переходите в раздел «Fuses», нажимаете кнопку чтение и записываете считанные Fuse биты.
      6. Подсоединяете новый МК к программатору и программируете Flash и Eeprom, указывая предварительно пути до считанных прошивок, Fuse биты выставляете в соответствии с тем, что записали.
      С уважением, Admin.

  12. Добрый день. Приобрел у Вас программатор. Скачал архив с драйверами. При попытке разархивировать- выдается сообщение «архив поврежден» скачивание и разархивирование проводил несколько раз. Что не так. ОС Win7. Спасибо. Сергей.

    • Здравствуйте Сергей!
      Драйвера заархивированны программой 7ZIP. WINRAR, к примеру, не может разархивировать.
      Отсылаю архив в WINRAR на Ваш почтовый ящик.
      С уважением, Admin.

  13. Добрый день! Очень надо прошить модуль стиральной машины , процессор ATmega32L, программатор такой как описан выше, но я не могу найти как правильно его прошить с помощью программы eXtreme Burner AVR, Нашёл много описания и видео как сделать это используя другие программы, а вот про ту которую использую я ничего нет.Помогите если это возможно. Для основной трудностью является выставление Fuse бит. Например при чтении в данной программе старого микроконтроллера, я получил следующие данные: Low Fuse: 0x 3F; Higt Fuse: 0x CD; Extented Fuse: 0x FF; Lock Fuse: 0x E2; Calibration Fuse: BFBFBFC0, при том что галочки в окошках выставлены не были.А после установки и чтения Fuse на новом контроллере стоит как по умолчанию Low:0xE1; Higt: 0x99; Extented: 0xFF; Lock: 0xFF; Calibration: B0B0B0B0.И надо ли что то менять чтобы записать новую прошивку или не надо я не пойму, и что конкретно означают все эти Fuse биты.Ну очень нужна ваша помощь.Много прочёл, по поводу того, что можно убить процессор выставив не так Fuse,но он достался с таким трудом, что не хотелось бы его убить своими неправильными действиями.Спасибо.

  14. Уважаемый Администратор, помогите пожалуйста. Появилась необходимость перепрошить блок управления стиральной машинки. В интеренете есть видео, но везде используется другой программатор, который имеет контакт BKGD. Мой программатор идентичен тому, который описывается в Вашей статье. Обьясните пожалуйста как мне припаять программатор к мозгам стиралки. Спасибо

    • Здравствуйте Виталий!
      Какой МК стоит в Вашей стиралке.
      Если он от фирмы ATMEL то я смогу помочь.
      С уважением, Admin.

        • Здравствуйте Виталий!
          Помочь не смогу — другая платформа.
          Попробуйте погуглить — очень много информации по ним.
          С уважением, Admin.

  15. НА программаторах с али экспресс распиновка кабеля отличается ,нужно учитывать происхождение железа. А статья в общем помогла, спасибо.

  16. Не работает всё это. Обновляя прошивку программатора до USBasp 2011-05-25-8-28 — вышли из строя уже 4 программатора!!! Кто читает мой коммент — работайте на той прошивке с которой купили программатор!

    • Здравствуйте Александр!
      Скачайте прошивку с сайта разработчика.
      В магазине сайта, при продаже, прошивка обновляется последней версией с сайта разработчиков, проблем не разу не было (а это более 100 программаторов).
      С уважением, Турчак Вадим.

    • Здравствуйте Александр!
      Ваш комментарий, к сожалению, заметил очень поздно.
      При перепрошивке считайте FUSE биты и сбросьте бит СКОРТ (установите галочку, или наоборот снимите ее — в зависимости от применяемой программы). Прошейте память и FUSE биты заново, должно заработать.
      С уважением, Admin.

Добавить комментарий

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