Программатор avr для windows 10

ARCAdaptor

Всё в твоих руках

Прошиваем AVR ATMega в Windows 10

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

С выходом 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-устройств в гостевую систему).

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

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

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

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

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

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

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

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

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

Читайте также:  Имя ос майкрософт windows 10 домашняя для одного языка

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

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

USB-фильтр

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Читайте также:  Включение wol windows 10

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

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

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

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

sudo flashprg.sh share/arcadaptor8.hex

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

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

sudo flashconfig.sh share/arcadaptor8.eep

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

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

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

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

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

Заключение

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

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

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

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

Windows 10 и программаторы на базе AVR910 Prottos

Я он-лайн геймер, поэтому недавно пришлось на моём компьютере обновить ОС с MS Windows 8.1 до MS Windows 10.
Игровой процесс наладился, но я потерял возможность использовать программатор AVR910 от Prottos. Программатор просто перестал определяться системой. При подключении к ПК выскакивает сообщение о подключении неисправного устройства, а в диспетчере устройств сообщение, что USB устройство не опознано (недопустимый дескриптор конфигурации).

Пришлось искать решение.
Не настаиваю на изящности моего пути, однако результат на лицо: сейчас мой AVR910 с прошивкой от USBasp работает под MS Windows 10! Решение подходит и для датагорского кита Project-005 «D-AVR910». USB-программатор для микроконтроллеров AVR Atmel.

Содержание / Contents

↑ By trial and error. Методом проб и ошибок

Было решено опробовать альтернативные прошивки к программатору AVR910, с помощью которых он превращается в другой программатор. Таких прошивок существует несколько, это прошивки STK500 Dooper CDC, STK500 Dooper HID и USBasp.
STK500 Dooper HID отмел сразу, так как эта прошивка раскритикована в Интернете из-за очень маленькой скорости записи.

Попробовал прошить в первую очередь как STK500 Dooper CDC.

На ПК с установленной Windows 8.1, где прошивал, программатор с новой прошивкой определился, а вот на Windows 10 та же ситуация, что и с оригинальной прошивкой от Prottos.
Уже после, в Интернете было найдено частичное объяснение этому. Оказалось, что устройство с прошивкой STK500 Dooper CDC использует тот же драйвер lowcdc.sys без подписи. А Windows 10 не доверяет даже некоторым подписанным драйверам.

Читайте также:  Nec multisync lcd1770nx драйвер windows 10

Следующей была прошивка от USBasp. О, счастье! При подключении к ПК с Windows 10, устройство определилось как USBasp.

В папке с драйверами есть каталог безопасности, см. на скриншот.

Попытался выполнить условия, указанные в каталоге, то есть сделать сертификат доверенным. Через командную строку добавил сертификат драйвера в хранилище доверенных корневых сертификатов. Не помогло и это.
Система всё так же уперто делала вид, что никаких драйверов не существует.

↑ Перевод Windows 10 в тестовый режим и последовательность установки драйвера программатора

Проблема была решена только после перевода Windows 10 в тестовый режим.

1. В меню пуск нажимаем Выполнить… или нажимаем горячие клавиши Win+R. В появившейся консоли вводим команду
и перезагружаем компьютер.

2. После перезагрузки в правом нижнем углу появилась надпись, что Windows работает в тестовом режиме. Вызываем диспетчер устройств: нажимаем правой кнопкой мышки на иконку «Этот Компьютер» > Управление > Диспетчер устройств. Ищем устройство USBasp и в свойствах, в меню обновления драйвера, указываем местонахождение вашей папки с драйверами.

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

3. Снова вызываем консоль из меню Пуск или горячими клавишами Win+R и вводим команду, отключающую тестовый режим.

Программатор готов к работе!

↑ Полтора минуса

При любом компромиссе приходиться чем-то жертвовать.
1. Программатор с прошивкой USBasp не работает в AVR Studio. Поэтому, кому это критично, придётся искать другое решение или работать с предыдущими версиями Windows.

2. Возможно, это не такой уж и минус. Программатор работает узким кругом ПО. Это AVRDUDE, e-Xtrem burner и Sina Prog. Мне из перечисленных понравился Sina Prog.

↑ Итого

С помощью новоиспеченного программатора были прошиты два камня — ATmega8 и ATmega16. Скорость прошивки меня повергла в ШОК! МК ATmega8, hex на 8 кБ – меньше 2 секунд! МК ATmega16, hex 21 кБ – около 5 секунд!
И это после мучений с оригинальным AVR910 и временем прошивки около 5 минут (столько прошивался hex 10 кБ в ATmega8). Да это просто волшебство! Как же я теперь понимаю радостные отзывы Игоря (Datagor) об альтернативной прошивке в его статье «Программатор AVR910: перезагрузка! Ускорение работы + превращение в STK500».

↑ Файлы прошивки и драйверов

▼ Файловый сервис недоступен. Зарегистрируйтесь или авторизуйтесь на сайте.

▼ Файловый сервис недоступен. Зарегистрируйтесь или авторизуйтесь на сайте.

Камрад, рассмотри датагорские рекомендации

🌻 Купон до 1000₽ для новичка на Aliexpress

Никогда не затаривался у китайцев? Пришло время начать!
Камрад, регистрируйся на Али по нашей ссылке. Ты получишь скидочный купон на первый заказ. Не тяни, условия акции меняются.

🌼 Полезные и проверенные железяки, можно брать

Куплено и опробовано читателями или в лаборатории редакции.

Оцените статью