Avr программатор для windows 10

Для внутрисхемной прошивки AVR микроконтроллеров чаще всего применяют специализированный AVR программатор: он прекрасно работает с любыми контроллерами AVR серии ATmega, ATtiny и AT, имеющими SPI интерфейс в режиме внутрисистемного программирования или ISP (In System Programming).

USBASP программатор

USBASP программатор даёт возможность программировать устройства в собранном виде без отключения от питания, а также существенно упрощает отладку программного обеспечения. Программирование можно осуществлять многократно.

Драйверы для USBASP доступны под различные ОС:

  • Windows
  • Linux
  • Mac OS

Как установить драйвер USBASP на компьютер?

Установка драйвера USBASP производится в несколько простых шагов:

  1. Скачиваем драйвера по ссылкам выше
  2. Распаковываем архив с установочными файлами
  3. Запускаем исполняемый файл (SETUP)
  4. В открывшимся окне соглашаемся с установкой
  5. Перезагружаем компьютер для корректного обновления данных в реестре

После установки драйвера заново подключаем контроллер и смотрим, чтобы плата корректно отобразилась в списке диспетчера устройств.

Программаторы USBASP в нашем магазине

Сегодня расскажу, о недорогим и очень простом программаторе USBAsp v.2.0 для микроконтроллеров AVR (основанный на дизайне Томаса Фишла), с его помощью можно прошивать контроллеры AVR по интерфейсу ISP (не выпаивая его с платы), а самое главное, можно прошить загрузочный сектор на контроллерах Arduino.

Обзор программатора USBAsp v.2.0

Технические параметры

► Напряжение питания: 5 В, DC
► Интерфейс: USB 2.0
► Программирование/ чтение: Atmel (AVR)
► Габариты: 70 мм x 18 мм x 10 мм
►  Поддержка операционных систем: Windows XP / 7 / 8 / 8.1 / 10.

Общие сведения

Программатор USBAsp распространяется и открытым исходным кодом, так что при желании можно изготовить самому, скачав печатную плату и прошивку с сайта Thomas, из-за этого в различных интернет магазинах существует различные варианты программатора с одинаковым функционалом. В моем случае буду рассказывать о USBAsp V2.0 китайского производителя LC Technelogy.

Обзор программатора USBAsp v.2.0

Программатор собран на синий печатной плате, слева расположен USB-разъем необходимый для подключения к компьютеру. В центре располагается контроллер ATmega8A, рядом установлен кварцевый резонатор на 12 МГц и электрическая обвязка (резисторы, конденсаторы). Справа расположен 10-контактный разъем (два ряда, по пять выводов, шагом 2.54 мм), обеспечивающий обмен данными с прошиваемым микроконтроллером (интерфейс ISP). В комплекте поставляется кабель, с каждой стороны которого, установлен разъем IDC (10 выводов), для простоты прошивки некоторых плат (например Arduino), советую приобрести адаптер-переходник с 10-pin на 6-pin. Назначение выводов программатора USBAsp можно посмотреть на рисунке ниже, вид на стороне программатора.

Обзор программатора USBAsp v.2.0

Назначение выводов:
►  1 – MOSI
►  2 – VCC
►  3, 8, 10 –  GND
►  4 – TXD
►  5 – RESET
►  6 – RXD
►  7 – SCK
►  9 – MISO

Световая индикация
►  Красный светодиод G — Включен
►  Красный светодиод R — Обмен данными

Перемычки
►  JP1 — POWER, управляет напряжением на разъеме ISP VCC (вывод 2), можно установить на + 3.3В, + 5В или вовсе убрать перемычку, если программируемое устройство, имеет собственный источник питания.
►  JP2 — SERVICE, обновления прошивки USBasp.
►  JP3 — SLOW, программирования на низких скоростях, если программируемое устройство, работает на частоте ниже 1.5 МГц, SCK (вывод 7) уменьшит частоту с 375 кГц до 8 кГц.

Принципиальная схема программатора USBAsp V2.0 можно посмотреть на рисунке ниже.

Принципиальная схема программатора USBAsp v.2.0

Список поддерживаемых AVR микроконтроллеров:
►  Mega Series: 
ATmega8, ATmega8A, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega328, ATmega328P, ATmega103, ATmega128, ATmega128P, ATmega1280, ATmega1281, ATmega16, ATmega16A, ATmega161, ATmega162, ATmega163, ATmega164, ATmega164A, ATmega164P, ATmega164PA, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega2560, ATmega2561, ATmega32, ATmega32A, ATmega324, ATmega324A, ATmega324P, ATmega324PA, ATmega329, ATmega329A, ATmega329P, ATmega329PA, ATmega3290, ATmega3290A, ATmega3290P, ATmega64, ATmega64A, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega649, ATmega649A, ATmega649P, ATmega6490, ATmega6490A, ATmega6490P, ATmega8515, ATmega8535,
►  Tiny Series: ATtiny12, ATtiny13, ATtiny13A, ATtiny15, ATtiny25, ATtiny26, ATtiny45, ATtiny85, ATtiny2313, ATtiny2313A
►  Classic Series: AT90S1200, AT90S2313, AT90S2333, AT90S2343, AT90S4414, AT90S4433, AT90S4434, AT90S8515, AT90S8535
►  Can Series: AT90CAN128
►  PWN Series: AT90PWM2, AT90PWM3

Установка драйвера USBAsp на Windows 8/10

Подключаем программатор к USB порту на компьютере, если все нормально, на плате загорится красный светодиод. Далее операционная система начнет поиск драйвера

Установка драйвера USBAsp v.2.0

Так как, в операционной системе нету необходимого драйвера, в «Диспетчере устройств» появится устройство «USBAsp» с восклицательным знаком.

Скачиваем архив с цифровой подписью, разархивируем и запускаем «InstallDriver.exe» 

Установка драйвера USBAsp v.2.0

Драйвер установлен, в «Диспетчере устройств» пропадет восклицательный знак с «USBAsp».

Установка драйвера на Windows XP и Windows 7 аналогичная, программатор готов к работе.

Программу разработал «Боднар Сергей», работает не только с китайским программатором USBAsp v.2.0, но и другими программаторами. Первым делом скачиваем программу, разархивируем и запускаем «AVRDUDEPROG.exe».
В качестве примера, прошью китайскую плату Arduino UNO R3 в которой установлен микросхема ATmega328P. В программе, жмем на вкладку «Микроконтроллеры» и выбираем ATmega328P.

Программа для USBAsp V2.0

Далее, необходимо выбрать прошивку, в строке «Flash» нажимаем «. . .», переходим в папку «C:\Program Files\Arduino\hardware\arduino\avr\bootloaders\atmega» и выбираем «ATmegaBOOT_168_atmega328.hex», жмем «Открыть»

Программа для USBAsp V2.0

Подключаем программатор к плате «Arduino UNO R3», и нажимаем кнопку «Программирование».

Программа для USBAsp V2.0

В конце, выйдет диалоговое окно, о удачном окончании программировании.

Обзор программатора USBAsp v.2.0

Ссылки
  Скачать драйвер для программатора USBASP v2.0 (LC Technology, ATMEL)
  Скачать программу AVRDUDE_PROG v.3.3

Купить на Aliexpress
  Программатор USBASP v2.0 (LC Technology, ATMEL)
  Адаптер для ATMEL AVRISP, USBASP, STK500 (10 pin на 6 pin)

Купить в Самаре и области
  Программатор USBASP v2.0 (LC Technology, ATMEL)
  Адаптер для ATMEL AVRISP, USBASP, STK500 (10 pin на 6 pin)

Со своей платформой я определился окончательно. Это AVR и, в будущем, STM32. Поскольку Versaloon со всем его русско-китайским шпукшлюком я похерил, похоже, окончательно, убив на него еще часа четыре проверок-перешивок-опытов, нужен был прогер «по-быстрому». 

Требования: совместимость x64 — на работе XP, дома ноут с Windows 10 x64 (боль моя, ты услышь меня!), USB only, дружба с BascomAVR, CodeVision AVR, SinaProg.

Вот оно, отставание в зримом виде. Все посты насчет простых прогеров относятся к 2007-2010 годам. STK 500 Petka отверг, какой-то популярный прогер с кварцем 11,598767856454675467 шутка) с четвертью мегагерц тоже — кварца нет, AVRISP MK2 хорош, но нет контроллера ATMEGA90USB162.

Грабли намбер ван — проц у челябинца Протоса на схеме в DIP-корпусе. Таковых не держим. TQFP рулит, но ноги там другие. Пффф. Там же находим Мастеркитовский набор BM9010 с точно той же схемой, но контроллер уже по уму, в TQFP.

Схема USB программатора AVR. Неподписанные номиналы взять у Протоса.

Ахалай-махалай, сводим две схемы в одну, вместо двух позорных диодов «стабилизатора» 3,6В втыкаем LDO-стабилизатор на 3,3В, RESET Atmega 8 организуем через микрик, почти как у Протоса (программирование, простите, самого программатора) и… кушать подано, садитесь прошивать, пожалуйста. Нет-нет-нет, соус! Родная фирмварь AVR910 без вопросов работает, но лучше сразу USBASP. Все ноги соответствуют, мозг ломать не надобно, паять тоже не придется. Просто сразу ливните нужную прошивку в Мегу8 и наслаждайтесь. Есть в конце поста. Заливается прошивка в программатор через (эмм, жопу), то есть туда же, через разъем ISP, к которому потом будем подключать пациентов.

Ну, можно и так. Для перешивки прогера припаян микрик.

Прогер получился на двух платах: первая USB-папа с обвязкой, подтяжками и LDO, на макетке собственно Мега с кварцем и обвесом.

 
Стабилизатор и кварц сзади плат сидят

По древней китайской традиции, увы прогер придется прошить. Та самая проблема курицы и яйца. Пять проводков, сходить к соседу, ну хз, фантазируйте. У меня есть Фитон Chipprog+, он прекрасен, но он цука утварь — с LPT портом. Так или иначе, на первый раз отличный вариант.

Контрольная сумма проши

Фьюзы ставим так!, чтобы не запутаться, смотрим на «Шпиена», если он будет «1» (у меня так без галки) то сливайте воду, программирование такого контроллера только через спецприспособления:

Тут у меня случился нежданчик, после прошивки Mega вдруг отваливалась, и Фитон ее больше не видел. Было испробовано три штуки подряд. Думал накосячил с фьюзами, но не дрогнула рука, не накосячил. Поскольку фьюзы после прошивки устанавливаются на тактирование от  внешнего кварца, без него Мега внезапно «умирает». А он был не пропаян. После проверки монтажа нежданчик был найден и изжит, Меги оправданы.

FUSE биты, очень внимательно. Зануляем SPIEN, SUT0, BODEN, CKOPT.

 Или пользуйтесь калькулятором!!!

Ставим дровишки
Работаем в Bascom. Порты не надо указывать, LibUSB
Но поскольку в Bascom фьюзы пишутся через жопу, не брезгуем и Зиной.

Файло:

  • Ответов
    47
  • Создана
  • Последний ответ

Популярные посты

Allroy

Может совет не по теме будет. Для таких целей(несовместимость драйверов устройств, как правило старых телефонов и планшетов) есть у меня старенький ноутбук, с установленной XP. И место мало занимает,

Sergiy_83

Там же перемычку переставить надо при прошивке, (pin reset) чтобы на разъем пошел, помните?

cbafrunze

Может, выделить место на жестком диске, установить XP, и пускай две «операционки» (XP и 10), каждая выполняет свою «работу».
У меня, как-то на компьютере стояло три операционки Linux, XP и 7, все раб

Изображения в теме

Гость химик

Гость химик

Гость химик

Гость химик

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Войти

Уже есть аккаунт? Войти в систему.

Войти

Вместо предисловия

С выходом Windows 10 жизнь пользователей, в целом, улучшилась, однако небольшая группа людей увлеченных “огребла” массу проблем, в частности с использованием самодельных USB устройств, как то программатор для AVR ATMega. Так, для Windows 10 весьма проблематично использовать USB-программаторы типа USBASP, UsbTinyISP и прочий “самодел” — для них просто физически нет “подписанных” драйверов.

Эта статья призвана хотя бы частично решить проблему прошивки “атмег” под современной операционной системой Windows 10

Вариант решения проблемы

Мы будем запускать виртуальную машину с очень маленьким дистрибутивом Linux, которая позволит без проблем “перехватить” наш программатор (в нашем случае — ARCAdaptor в режиме bootloader’a). Небольшие изменения в конфигурации виртуальной машины позволят использовать и другие “самодельные” USB-программаторы, для которых нет драйверов для Windows 10, но при этом они без проблем работают в Linux через libUSB.

Установка гостевой системы

При работе с виртуальной машиной используется термин “хост-машина” и “гостевая машина”. В нашем случае хостом будет выступать Windows 10, а “гостем” — Alpine Linux.

Следует отметить, что все операции, описанные здесь проводились на планшете Asus T100TA под управлением 32битной Windows 10. Это довольно популярное и не самое мощное по начинке устройство — а значит — повторить этот опыт можно будет даже на “слабых” компьютерах.

Устанавливаем гипервизор

Гипервизор — это такое программное обеспечение, которе отвечает за работу виртуальных машин. В нашем случае мы будем использовать Virtual Box — он бесплатен и обладает нужной функциональностью (проброс USB-устройств в гостевую систему).

Официальный сайт проекта — http://www.virtualbox.org

Качаем последнюю версию с сайта:

vbox download

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

vbox extension

Уставновите Virtual Box, следуя указаниям системы:

vbox setup

После установки — кликните по скачанному Extension pack — система предложит установить его, и после установки вы увидите вот такое окно:

Всё готово для развертывания системы.

Разворачиваем виртуальную машину

Качаем образ виртуальной машины в формате OVA — вот отсюда.

Следующий шаг — нам нужно импортировать этот образ в наш VirtualBox. Воспользуемся командой из меню.

vbox import command 2

В принципе, никаких изменений при импорте вносить не предполагается. Процесс завершается за несколько секунд — образ системы имеет минимальные размеры.

Дополнительные настройки

Перед стартом нужно обязательно кое-что проверить и перенастроить.

USB-фильтр

Это очень важный параметр. Проверим его перед первым стартом. В настройках виртуальной машины должен быть вот такой вот фильтр — он уже настроен в начальном образе.

vbox check usb settings

Если его нет, то его нужно создать — в качестве параметра указать пару Vendor-id и Device-id — они задаются в шестнадцатиричном формате — 16c0 и 05dc соответственно.

Настройка сети

Изначально образ виртуальной машины поставляется с настройкой сети в режиме NAT — чтобы импорт проходил без ошибок. Скорее всего, вы подключены к домашней сети, так что давайте настроим сеть так, чтобы можно было работать и “гонять” наши файлы прошивок из Windows в Linux.

Для этого переведем сеть в режим Bridge.

vbox check network settings

Выбираем “Bridge”. Убеждаемся что “мост” у нас наведен с подключенной сетевой картой. В нашем случае — наш WiFi адаптер в устройстве.

Вот примерно такой:

vbox check network settings 1

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

Всё готово для старта.

Запуск гостевой системы.

Решительно нажимаем кнопку “запустить виртуальную машину” и через некоторое время наблюдаем приглашение к входу в систему.

В качестве логина используем arc, в качестве пароля adaptor.

vbox-alpine-booted

Безусловно, пользовтелям, привыкшим к оконному интерфейсу работа в Linux может показаться немного непривычной, но во-первых это не сложно, во-вторых весьма расширяет горизонты :)

Пришла пора “скинуть” нашу прошивку на Linux

Подклчение сетевого диска из хост-системы

Мы подключим сетевой диск и сможем просто перебрасывать файлы для прошивки в виртуальную машину для последущей записи в ARCAdaptor.

В принципе, все инструкции уже есть на скриншоте выше, при условии что мы используем bridged networking.

Переключимся в хост-машину. Откроем окно Windows explorer и введем адрес нашей виртуальной машины. Он виден после логина (зеленый текст), а если нет — запустите команду в Linux:

get_eth0_ip.sh

Введем его в Windows Explorer в формате \\xxx.yyy.zzz.aaa:

vbox-connect-samba

Система спросит логин и пароль — используем наши arc и adaptor в качестве логина и пароля. Если всё хорошо — мы видим список сетевых папок нашей виртуальной машины, точнее одну папку — «share«.

Откройте её и перепишите туда файлы .hex, которые планируете прошить.

vbox-сopy-samba

Переключитесь в виртуальную машину — эти файлы теперь доступны там. Команда ls -la share покажет нам содержимое.

vbox-list-files

Все готово для прошивки!

Прошивка из под виртуальной машины

Подключаем программатор

Опять-таки, в нашем случае это ARCAdaptor, переведенный в режим программирования. После включения вы, возможно, увидите окно с установщиком драйверов от VirtualBox. Дождитесь установки. Когда установка закончена — дайте команду sudo lsusb (возможно придется ввести пароль “adaptor” ещё раз).

На скриншоте видно, что устройство USBAsp (наш ARCAdaptor в режим bootloader) видится в Linux.

Можно прошивать!

Прошиваем устройство

Для удобства в виртуальную машину добавлена пара скриптов, предназначенных для прошивки ARCAdaptor:

  • flashprg.sh
  • flashconfig.sh

Это просто “обёртки” для avrdude. Желающие могут ознакомиться с содержимым прямо на месте.

Итак, для записи прошивки — даём команду:

sudo flashprg.sh share/arcadaptor8.hex

flash command

Опять-таки после нажатия “Enter” может потребоваться ввод пароля (ибо используется команда sudo).

Для прошивки “конфигурации” используется команда flashconfig.sh

sudo flashconfig.sh share/arcadaptor8.eep

flash config

Ну а вот результат работы программатора:

flash result

Ну и вот “анимация” процесса прошивки:

flash anim

Внимание! Как только устройство “прошьется”, оно будет пытаться “определиться” не в Linux, а в хост-системе. Если есть желание изменить это поведение — нужно добавить новый USB-фильтр в настройках виртуальной машины для ваших Vendor ID и Device ID.

Тоже самое относится и к другим программаторам — то есть если используется программатор USBTinyISP — нужно обязательно отредактировать фильтр (или создать новый) в настройках — подставить новые значения Vendor ID и Device ID.

Менять нужно вот эти поля:

vbox-change-filter

Заключение

Вообще, использование “виртуалок” для разработки открыват перспективы весьма радужные — так, например установка и использование AVR-GCC в Linux гораздо более простое и “приятное”, чем в том же Windows.

Более того, разрабатывать можно “на ходу”, то есть установить Virtual Box на планшет с Windows и пользоваться где угодно.

Мы будем рады любым отзывам, а также найденным недочетам. Правда, расширение этого образа не предусмотрено, за исключением совсем уж вопиющих ошибок.

Никто не мешает вам создать собственную “девелоперскую” виртуалку на базе той же Ubuntu — лишь бы хватило место для образа :).

Спасибо за внимание!

P.S. Этот способ НЕ подходит для LPT-программаторов, хотя если у вас такой — вы наверняка с ним прекрасно справляетесь.

P.P.S Еще раз образ виртуальной машины.

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Какой файловый менеджер встроен в операционную систему windows
  • Кряк navitel для windows ce
  • Use windows authentication for all users
  • Перезагрузка ноутбука в безопасном режиме windows 10
  • Astra linux загрузчик не видит windows