Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

описание USBASP драйвера, инструкция по настройке своими руками в AvrDude Prog, Atmel Studio и Khazama AVR Programmer, обновление проши

В моём случае это абсолютный рекордсмен по скорости доставки — около 5 месяцев беспечного блуждания непонятно где. Несмотря на чудовищную задержку по времени, пакет я всё-таки получил, чему несказанно рад, не взирая на недочёты, о коих поведаю ниже. Поскольку у меня весьма плохая память, то нужно было объединить найденную полезную информацию где-то в одном месте в виде памятки, собирать её по крупицам в разных закоулках сети оказалось делом нетривиальным, поэтому оформлю всё это отдельным постом.
USB ISP — самый дешёвый программатор контроллеров AVR, что можно найти в продаже, брался для расширения кругозора и более углубленного изучения AVR.
Обзор в себя включает: описание программатора, как его подключить к чипу, настройку его работы в программах AvrDude Prog, Khazama, Atmel Studio 7, и не только это.

Конечно вместо него можно использовать Arduino UNO с прошитым в него скетчем ArduinoISP, но это не удобно, возня с проводами, особенно если UNO всего одна, отбивает энтузиазм. Проще было заиметь отдельно такой программатор, точнее два. По двум причинам:

1) Ещё перед покупкой уже из отзывов было понятно, что качество пайки этих устройств страдает, а некоторым ещё и с расколотыми стабилитронами они приходили. Решено было подстраховаться, заказав два.
2) Один программатор к тому же можно шить другим, переставив перемычку на ведомом устройстве.

Технические характеристики

Поддерживаемые ОС: Windows, MacOS, Linux
Процессор: Atmega8A
Интерфейс подключения к ПК: USB
Интерфейс программирования: ISP (внутрисхемное)
Напряжение программирования: 5В или 3.3В (в зависимости от положения перемычки JP2)
Частота программирования: 375кГц (по умолчанию) и 8кГц (при замкнутой перемычке JP3)
Поддерживаемые контроллеры: все AVR с интерфейсом SPI
Описание:ссылка

Список поддерживаемых микроконтроллеров

ATmega серия ATmega8 ATmega48 ATmega88 ATmega168 ATmega328
ATmega103 ATmega128 ATmega1280 ATmega1281 ATmega16
ATmega161 ATmega162 ATmega163 ATmega164 ATmega169
ATmega2560 ATmega2561 ATmega32 ATmega324 ATmega329
ATmega3290 ATmega640 ATmega644 ATMEGA64 ATmega649
ATmega6490 ATmega8515 ATmega8535

Tiny серия ATtiny12 ATtiny13 ATtiny15 ATtiny26 ATTINY25
ATtiny45 Attiny85 ATtiny2313

Серия Classic AT90S1200 AT90S2313 AT90S2333 AT90S2343 AT90S4414
AT90S4433 AT90S4434 AT90S8515
AT90S8535

CAN серияAT90CAN128

PWM серияAT90PWM2 AT90PWM3

Внешний вид

Комплект поставки минимальный — программатор + шлейф без резинки. В моём случае в удвоенном количестве.

Культура исполнения и вправду хромает, мне в глаза сразу бросились криво припаянные гребёнки. Везде где только можно — имеются следы флюса, причём с окислами, по всей видимости, программаторы давно валялись на складе, а сборка их производилась с присущей китайцам быстротой.







Некоторые отверстия не целиком заполнены припоем

SMD-элементы тоже криво припаяны

Гребёнку чуть позже выровнял, уж больно неприятно на такую раскосую смотреть, элементы пропаял, а плату затем отмыл

Размеры платы несколько больше USB-TTL-конвертера на CP2102

Длина шлейфа около 30см, бытует мнение, что чем короче шлейф, тем лучше. Некоторые его специально укорачивают. Если заказать оригинальный USBASP — там комплектный шлейф уже 50см.

Органы управления на плате

На плате имеются три перемычки, задающие разные режимы работы программатора:

JP1 — замыкается в случае обновления прошивки самого программатора
JP2 — тройная перемычка, здесь выбирается, какое напряжение будет подаваться на прошиваемый микроконтроллер, либо 5В (левое положение) и 3. 3В (правое положение)
JP3 — если её замкнуть, то программирование контроллера будет происходить с пониженной частотой, однако китайцы не стали сюда впаивать гребёнку, т.к. на данной прошивке она не требуется

Программатор, как можно заметить, построен на базе Atmega8 с кварцем на 12МГц. Самый правый верхний элемент, подписанный F1, с перевёрнутой цифрой 4 — самовосстанавливающийся предохранитель, защищает USB-порт ПК/ноутбука, если на прошиваемой плате вдруг произошло короткое замыкание. Под перемычкой JP2 находится LDO-стабилизатор 662К, понижающий напряжение с 5В до 3.3В, если перемычка установлена в правое положение.

Установка драйверов

Чтобы начать пользоваться программатором, необходимо сперва поставить на него драйвера. Вставляю любой программатор в USB-порт ПК, звучит сигнал о новом оборудовании, на самом девайсе горит светодиод, но автоматического поиска драйверов не происходит.

примечание. перед установкой драйвера необходимо отключить проверку цифровой подписи в Windows

1) Скачать драйвера, распаковать в удобное место.
2) Зайти в «Диспетчер устройств», например навести курсор на главную кнопку (Win10), нажать ПКМ и выбрать пункт «Диспетчер устройств».

3) В ветке «Другие устройства» можно увидеть неопознанное устройство USBASP с оранжевым треугольничком — > навести на него курсор, нажать ПКМ -> «Обновить драйверы…»

4) Указать путь до раннее распакованной папки с драйверами — «libusb_1.2.4.0», нажать «ОК»

5) «Всё равно установить этот драйвер»

6) Готово, теперь оранжевый треугольничек пропал, драйвера поставлены

Прошивка собрата

Мне уже было известно до этого, что китайцы продают эти программаторы с не самой свежей прошивкой. Решил сперва обновить прошивку на одном из них, а затем ради интереса сравнить оба программатора в работе. Для этого соединяю шлейфом оба устройства, на ведущем (который вставляю в USB-порт) никакие перемычки не трогаются, а на ведомом программаторе (на котором будем обновлять прошивку) я переставил перемычку с JP2 на JP1:

Захожу в программу Khazama AVR Programmer, выбираю из выпадающего списка ATmega8 и сперва считаю Flash-память через пункт меню «Command» -> «Read FLASH to Buffer», чтобы cохранить китайскую заводскую прошивку у себя. На всякий случай.

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

Идёт считывание, которое завершается всплывающим окном об успешном считывании FLASH-памяти в буфер

Теперь нужно сохранить содержимое буфера: «File» -> «Save FLASH Buffer As…». Выбрать удобное место, куда старая прошивка сохранится, дать имя (я например её назвал firmware_1) и дописать расширение *.hex — если его не писать, то она сохранится как просто файл без расширения.

Скачиваю прошивку для программатора с этой странички, архив usbasp. 2011-05-28.tar.gz (в этом же архиве есть драйвера для Windows, распаковываю содержимое в удобное место.
Тем временем в Khazama загружу скачанную прошивку в буфер. «File» -> «Load FLASH File to Buffer». Выбираю прошивку, где в названии написано atmega8, поскольку прошиваемый программатор на этом чипе.

Как видно, здесь три прошивки — для Atmega8, 48 и 88. В нашем случае Atmega 8 — её и выбираю.

Прошиваю. «Command» -> «Write FLASH File to Buffer». Снова возникает ошибка, но после идёт процесс, завершающийся успехом.



Поскольку в обычном понимании «запрограммировать» означает выставить 1, то при работе со фьюзами всё ровно наоборот, от чего возникает путаница и в этом случае можно по неосторожности заблокировать контроллер и прошить потом его будет уже нельзя. Программа Khazama AVR Programmer удобна просмотром фьюз-битов — там наглядно видно и расписано, какие из них установлены, а какие нет.

Находятся они по пути «Command» -> «Fuses and Lock Bits. ..», откроется окно:

Где по нажатии кнопки «Read All» считаются фьюз- и лок-биты, а пресловутая ошибка успеет вылезти аж 5 раз подряд. Ошибки сыпятся именно на заводской китайской прошивке. Но если вставить в USB-порт недавно прошитый программатор, прошивкой скаченной по ссылке выше, то этих ошибок вылазить уже не будет, однако баги вылезут в другом месте, но о них позже.

Связь с платой Pro Mini (Atmega 168, 3.3V/8MHz)

В этом случае выводы программатора соединяются с выводами платы Pro Mini, как проиллюстрировано на схематичном рисунке ниже. Перемычки не переставляются, т.е. остаётся в положении 5В.
Несмотря на то, что плата Pro Mini подписана как 3.3В, на 168-ю Атмегу можно подавать и 5В. Стабилизатор AMS1117 на 3.3В кстати вообще выпаян из платы.

AVRDUDE PROG 3.3
Консольная программа для прошивки микросхем, своего графического интерфейса не имеет, в стоке работает из командной строки, но энтузиастами было написано немало оболочек на неё, для удобства работы с ней. Одна из таких оболочек называется AVRDUDE PROG, созданная русскоязычными разработчиками. Эта оболочка, на мой взгляд удобна как раз для Flash-перепрошивки МК. После её запуска выбирается контроллер, в данном случае Atmega168 и тип программатора — USBasp. После чего можно заниматься записью/считыванием памяти. Что на заводской прошивке, что на новой — в обоих случаях никаких проблем с общением с Atmega168 не возникло. Прошил ради интереса ардуиновский стандартный blink-скетч, экспортированный в бинарный HEX-файл. Всё гладко.




Khazama AVR Programmer
Здесь достаточно выбрать микроконтроллер из выпадающего списка и можно уже работать с памятью/битами.
Однако если на самом программаторе установлена заводская прошивка, периодически будут сыпаться ошибки, о чём выше уже было упомянуто, на новой прошивке — данных ошибок уже нет.

Связь с контроллером ATtiny13A в корпусе SOIC8

Соединение согласно схеме ниже. Но тут всё немного интереснее.

Поскольку голый чип в SMD-корпусе SOIC8, в данном случае я поместил его в переходник SOIC8-DIP8 для удобства соединения с программатором в дальнейшем. Обзор на этот переходник можно почитать здесь.

AVRDUDE PROG 3.3
Тут выбирается из списка одноимённый контроллер, программатор USBasp и, если программатор прошит заводской китайской прошивкой, то все операции проходят ровно и гладко. Однако стоит заменить программатор на другой, с обновлённой прошивкой, то при любой операции возникает ошибка.

Появляется она из-за того, что ни программа, ни программатор не могут автоматически перейти в режим медленного программирования, необходимый для ATtiny13. Но есть как минимум два выхода:
1) Железный: замкнуть перемычку JP3

2) Программный: отредактировать файл «programm.ini» в папке с программой AVRDUDE PROG 3.3

Внести туда четыре строчки кода и сохранить. (взято отсюда)

progisp=jtag2pdiportprog=COM1portenabled=1[UsbaspSpeed]
progisp=Usbasp -B 3
portprog=usb
portenabled=0
Примечание. Здесь применён ключ “-B”, который и занимается переводом программатора на пониженную частоту программирования. Значение «3» — время в микросекундах

После этого снова запустить AVRDUDE PROG 3.3 и в выпадающем списке программаторов выбрать UsbaspSpeed. Теперь работа с ATtiny13 на программаторе с новой прошивкой будет уже без ошибок, а перемычку JP3 замыкать больше не потребуется в этом случае.

Khazama AVR Programmer
Выбирается контроллер из списка и почти та же ситуация.

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

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

Но стоит замкнуть перемычку JP3, и можно спокойно работать

Или просто задать частоту работы из выпадающего списка по пути «Command» -> «Programm Options», я выставил частоту 187. 5кГц.

Примечание. Частота программирования должна быть меньше тактовой частоты прошиваемой микросхемы не менее, чем в 4 раза. Но если посмотреть на считанные с ATtiny13 фьюзы, то на последней строчке Int.Rc.Osc. указано 9.6МГц.
Как минимум, у новичка возникнет вопрос — почему на выставленных в KHazame 1.5МГц — появляется та же ошибка? А также почему, если в AtmelStudio написать например код мигания светодиода с частотой раз в секунду и в макросе прописать:
#define f_cpu 9600000
то загрузив код на Attiny13, светодиод будет мигать очень медленно?
— посмотрим на предпоследнюю строчку, где Divide Clock by 8 Internally [CKDIV8=0] — это включенный предделитель частоты, который делит эти 9.6МГц на 8, и поэтому реальная частота чипа здесь — 1.2МГц. Поэтому при выборе частоты 187.5кГц или меньше, ошибки исчезают и можно работать нормально с контроллером.
Примечание 2. Способ с выбором частоты в KHazame по скорости работы в несколько раз выигрывает у метода с физическим замыканием перемычки JP3, потому как в последнем случае частота понижается до 8кГц.

Интеграция программатора в Atmel Studio 7

Atmel Studio — среда разработки от фирмы Atmel, но напрямую работать с USBASP, тем более китайским, она не может. Однако благодаря той же программе AVRDUDE, входящий в состав пакета AVRDUDE PROG 3.3, которая будет играть здесь роль посредника, можно соорудить «костыль», а уже в самой среде затем добавить возможность прошивать МК, подключенный через USBASP.

Сперва нужно запустить среду, предполагается, что некий код у нас уже написан и собран. В моём примере это простая мигалка светодиодом — Blink.

На верхней панели инструментов выбрать «Tools» — «External Tools…»

Откроется небольшое окно, нажать «Add»

В самом верхнем поле «Title:» ввести любое удобное название, я написал «Atmega168», т.к. та конфигурация, что приведу чуть ниже относится конкретно к этому контроллеру, и для любого другого контроллера она настраивается индивидуально.
В большом поле наверху, название инструмента будет автоматически продублировано.

Вторая строка, поле «Command:» — здесь нужно указать путь до файла «avrdude.exe», который находится в папке с вышерассмотренной программой

Третья строка, поле «Arguments:» необходимо ввести собственно саму конфигурацию

Конфигурация для Atmega168

-p m168 -c usbasp -P usb -U flash:w:$(ProjectDir)Debug\$(TargetName).hex:a

-p — наименование контроллера
-с — какой программатор
-P — порт, через который будет заливаться прошивка
-U — какая операция с какой памятью будет производится (в данном случае запись во Flash)
Если нужно настроить для другого МК, то параметр «m168» нужно изменить на соответствующий контроллер, который будет прошиваться. Например «m8» для Atmega8 или «m328p», если Atmega328p. Параметры для других МК смотрите здесь — также там найдёте описания ключей AVRDUDE.

Конфигурация для ATtiny13

-p t13 -c usbasp -B 3 -P usb -U flash:w:$(ProjectDir)Debug\$(TargetName). hex:a 

Здесь можно заметить уже два изменения: помимо «t13», добавился уже знакомый ключ “-B” со значением «3» для снижения скорости программирования

После заполнения полей нажать «Apply» и «ОК». Окно закроется

Теперь, если снова кликнуть по «Tools», там появится только что созданный инструмент. И по нажатии по нему откомпилированный код будет автоматически прошит в контроллер.

Но эта операция происходит в два клика, что не очень удобно. Надо вынести этот инструмент на главную панель инструментов, чтобы он был всегда на виду.
Для этого нужно снова зайти в «Tools», затем кликнуть по пункту «Customize…»
Откроется следующее окно:

Перейти во вкладку «Commands» — нажать кнопку «Add Command…»

Ещё одно окно появится. В нём — в левой колонке выбрать «Tools», а в правой колонке выделить «External Command 1». Нажать «OK»

«External Command 1» окажется наверху списка, и, обратите внимание на саму панель инструментов — в интерфейсе появился пункт «Atmega168».

Но как мне кажется, место ему отведено не совсем удачное, желательно его сдвинуть вправо, для этого нажимается кнопка «Move Down» (одно нажатие = сдвиг на одну позицию вправо). После этого можно закрывать окно по кнопке «Close» и шить чип прямо из студии в один клик через обозреваемый программатор.

При перепрошивке чипа таким методом, на секунду появляется консольное окно AVRDUDE. Но может возникнуть необходимость как-то сохранить этот лог для дальнейшего его просмотра — тогда в окне «External tools» нужно поставить галку на «Use Output window».

И теперь лог будет отображаться в окне вывода, что внизу программы ATmel Studio 7. Данная галка может задаваться отдельно для каждого добавленного в «External tools» контроллера.

Дополнение по фьюзам программатора

Из документа READMI, идущего в комплекте с драйверами и прошивкой для USBASP, позже выяснилось, что разработчик рекомендует выставить определённую конфигурацию фьюз-битов, определяющих работу внешнего резонатора.
Минусом khazam’ы является то, что в окне со фьюзами не отображаются HEX-значения выставленных битов. Это уже можно посмотреть в AVRDUDE PROG. Заводские фьюзы, выставленные китайцами, выглядят так (обязательно поставить точку «инверсные» — выделил синим прямоугольником):

Как рекомендует выставить разработчик:

HFUSE=0xc9
LFUSE=0xef

Это нужно снять две галки с «BODEN» и «SUT1» (выделено красным овалом),
поставить две галки на «CKOPT» и «SUT0» (выделено зелёным прямоугольником),
справа в колонке при этом будут отображаться HEX-значения изменённых битов (выделено жирным красным прямоугольником): Lock Byte: 3F, Fuse High Byte: C9, Fuse Low Byte: EF.

Если всё сходится, можно нажимать «программирование»

ВНИМАНИЕ. Злой фьюз-бит RSTDISBL — не трогать ни в коем случае, иначе его установка заблокирует контроллер и прошить потом через USBASP его уже будет нельзя.

_____________________________________

Выводы

Опробовано, работает. Если khazam не планируется использовать, то в обновлении прошивки для программатора — смысла нет, благо и так прекрасно работает, причём в случае с ATtiny13 никаких правок и перемычек вносить не требуется. Последняя прошивка — почему-то оказалась более капризна в этом плане. Единственное, после получения, плату надо пропаять и отмыть.

Список ссылок
1) Описание USBASP
2) AVRDUDE PROG 3.3 (форум)
3) Khazama AVR Programmer 1.7
4) Китайская стоковая прошивка (10кб)
5) Архив с прошивками для USBASP и драйверами для Windows — сайт создателя проекта

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

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

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

► Напряжение питания: 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.

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

Назначение выводов:
►  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 можно посмотреть на рисунке ниже.

Список поддерживаемых 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» с восклицательным знаком.

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

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

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

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

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

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

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

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

Ссылки
  Скачать драйвер для программатора 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)

Pololu USB AVR Programmer v2.

1

Обзор

Pololu USB AVR Programmer v2 (внизу), подключенный к A-Star 32U4 Prime SV для программирования.

Pololu USB AVR Programmer v2.1 — это компактный недорогой внутрисистемный программатор (ISP) для микроконтроллеров AVR от Atmel (теперь часть Microchip). Программатор предоставляет интерфейс для передачи скомпилированной программы AVR с вашего компьютера в энергонезависимую память целевого AVR, что позволяет ему запускать программу. Это хорошее решение для программирования контроллеров на базе AVR, таких как наши контроллеры роботов A-Star 328PB Micro и Orangutan. Его также можно использовать для обновления, замены или удаления загрузчика на некоторых платах Arduino, включая Uno, Leonardo и Mega, а также на наших совместимых с Arduino контроллерах A-Star. Этот программатор предназначен для работы с устройствами как на 3,3 В, так и на 5 В, и его можно настроить даже для подачи питания на целевое устройство в системах с низким энергопотреблением.

Программатор подключается к USB-порту вашего компьютера с помощью стандартного кабеля USB A-Micro-B (не входит в комплект) и обменивается данными с вашим программным обеспечением, таким как Microchip Studio, AVRDUDE или Arduino IDE, через виртуальный COM-порт с помощью Протокол STK500. Программатор подключается к вашему целевому устройству через входящий в комплект 6-контактный кабель для программирования ISP (старые 10-контактные подключения ISP напрямую не поддерживаются, но легко создать или приобрести переходник 6-контактного на 10-контактный ISP). . Программатор также действует как последовательный адаптер USB-to-TTL, предоставляя последовательный порт уровня TTL, который можно использовать для связи с другими последовательными устройствами с вашего компьютера. Он поставляется полностью собранным с припаянными разъемами, как показано на рисунке.

Программатор Pololu USB AVR Programmer v2.1 представляет собой замену более старого программатора Pololu USB AVR Programmer v2 с некоторыми улучшениями аппаратного обеспечения, которые описаны в разделе «Сравнение с предыдущими программаторами AVR» ниже.

Для подключения этого продукта к компьютеру требуется кабель USB A-Micro-B. 100040

  • Эмулирует программатор STK500 через интерфейс виртуального COM-порта
  • Работает со стандартным ПО для программирования AVR, включая Microchip Studio, AVRDUDE и Arduino IDE
  • .
  • Программное обеспечение для настройки доступно для Windows, Mac OS X и Linux
  • Поддерживает устройства как на 3,3 В, так и на 5 В; может автоматически переключать рабочее напряжение на основе обнаруженной цели VCC
  • Может опционально питать мишень напряжением 3,3 В или 5 В в маломощных системах
  • Функциональность последовательного адаптера USB-TTL для последовательной связи общего назначения
  • Обеспечивает выход тактовой частоты 100 кГц, что может быть полезно для восстановления неправильно настроенных AVR
  • Все контакты ввода/вывода защищены резисторами 470 Ом
  • 6-контактный кабель ISP и двухсторонний штыревой разъем 1×6 в комплекте
  • Полное руководство пользователя
  • Поддерживаемые микроконтроллеры AVR

    Программатор должен работать со всеми AVR, которые можно запрограммировать с помощью интерфейса AVR ISP (внутрисистемное программирование), который также известен как внутрисхемное последовательное программирование (ICSP), последовательное программирование или последовательная загрузка , но он не был протестирован со всеми устройствами. Мы ожидаем, что он будет работать с большинством AVR семейства megaAVR (ATmega), а также с некоторыми представителями семейства tinyAVR (ATtiny), но не поддерживает Tiny Programming Interface (TPI) и не работает с XMEGA или с 32-битными AVR. Программатор имеет обновляемую прошивку, позволяющую обновлять будущие устройства.

    Программатор предназначен для использования с микроконтроллерами AVR, работающими от напряжения 3,3 В или 5 В. По умолчанию программатор ожидает, что целевое устройство будет иметь собственное питание, но его можно настроить для подачи питания на целевое устройство в режиме пониженного энергопотребления. системы.

    Поддерживаемые операционные системы

    Мы поддерживаем использование Pololu USB AVR Programmer v2.1 и его программного обеспечения для настройки в настольных версиях Windows (7, 8, 10 и 11), Linux и macOS 10.11 или более поздней версии. Старые версии Windows не поддерживаются.

    Программатор Pololu USB AVR v2 (вверху), подключенный к Adafruit Pro Trinket для программирования.

    Дополнительная функция: последовательный порт TTL-уровня

    Этот программатор также служит адаптером USB-to-serial. Программатор устанавливает как два виртуальных COM-порта : один для связи с программным обеспечением и один для последовательной связи общего назначения. Это означает, что вы можете легко переключаться между программированием AVR и его отладкой через последовательный порт TTL без необходимости открывать и закрывать программу терминала. В дополнение к последовательной передаче ( TX ) и линии приема ( RX ), программатор позволяет использовать A и B в качестве последовательных линий квитирования, которые можно настроить с помощью нашего программного обеспечения.

    Шесть контактов на последовательном разъеме (GND, A, VCC, TX, RX и B) расположены так же, как и на широкодоступных кабелях FTDI USB-to-serial и коммутационных платах. В конфигурации по умолчанию контакт B используется как выход DTR (а контакт A является неиспользуемым входом), что позволяет подключать программатор напрямую к различным Arduino-совместимым платам (включая нашу A-Star 328PB Micro) и использовать это для загрузки программ на плату через последовательный загрузчик.

    Принадлежности в комплекте

    Программатор Pololu USB AVR v2.1 поставляется в полностью собранном виде с припаянными разъемами ISP и последовательного порта, а также включает аксессуары, показанные на рисунке ниже. 6-контактный кабель ISP можно использовать для программирования AVR. Двусторонний штекерный разъем 1 × 6 можно подключить к последовательному разъему, чтобы эффективно изменить его пол (что позволяет подключить этот разъем к макетной плате или соединительным проводам с розеткой).

    Pololu USB AVR Programmer v2 или v2.1 с включенным оборудованием.

    Слева направо: оригинальный USB-программатор Orangutan, Pololu USB AVR Programmer и Pololu USB AVR Programmer v2 (выглядит почти так же, как v2.1).

    Сравнение с предыдущими программаторами AVR

    Программатор Pololu USB AVR v2.1 (продукт № 1372) представляет собой замену нашего старого программатора Pololu USB AVR Programmer v2 (продукт № 3170) с тремя аппаратными улучшениями:

    • Опциональная выходная функция VCC программатора v2 (которая позволяет запитать цель AVR от программатора) не предназначена для питания нагрузок с емкостью более нескольких микрофарад. Программатор версии 2.1 имеет лучшую выходную схему VCC, поэтому он может питать платы с более высокой емкостью, что привело бы к постоянному сбросу программатора версии 2. Несмотря на то, что по-прежнему существует ограничение на емкость, которую он может выдержать, мы ожидаем, что функция вывода VCC версии 2.1 будет работать с большинством небольших целевых плат AVR с емкостью менее 33 мкФ на VCC, и мы протестировали ее с A-Star 328PB Микро.
    • Подключение программатора v2 к роботу 3pi может привести к тому, что один из двигателей на короткое время заработает на полной скорости, поскольку схема программатора для измерения VCC может непреднамеренно подтянуть один из контактов программирования 3pi (который служит входом драйвера двигателя) раньше, чем GND связь была установлена. Программатор версии 2.1 имеет улучшенную схему измерения VCC, которая ограничивает рабочий цикл этого эффекта примерно до 0,2%, поэтому двигатель не будет двигаться (но может издавать щелкающий звук частотой 25 Гц).
    • Программатор версии 2 обычно отключался, если на его вывод RST подавался сигнал 5 В, когда он работал при напряжении 3,3 В. Программатор версии 2.1 не имеет этой проблемы.

    По сравнению с оригинальным программатором Pololu USB AVR (продукт № 1300), программатор Pololu USB AVR v2.1 имеет ряд улучшений:

    • Поддержка устройств, работающих от 3,3 В (в дополнение к 5 В)
    • Вывод
    • VCC можно настроить для подачи питания 3,3 В или 5 В в маломощные системы
    • Защитные резисторы на всех линиях ввода-вывода
    • Более точная эмуляция частот ISP, обеспечиваемая STK500; вы можете использовать пользовательские интерфейсы Microchip Studio и AVRDUDE для более простой настройки частоты вашего интернет-провайдера
    • Улучшения удобства использования для последовательного интерфейса, такие как более стандартное расположение контактов (аналогично FTDI) и предварительно заполненный гнездовой разъем

    Этот программатор версии 2. 1 не включает USB-кабель и не имеет бонусной функции SLO-scope. В дополнение к этим изменениям программатор версии 2.1 отличается от оригинала многими другими деталями; обязательно обратитесь к руководству пользователя для программистов v2.x, чтобы ознакомиться с этим программатором.

    Этот товар часто покупают вместе с:

    Тонкий (2 мм) USB-кабель A — Micro-B, 6 футов, только низко/полная скорость
    Микросхема A-Star 328PB — 5 В, 16 МГц

    Программатор Pololu USB AVR

    Мы рекомендуем рассмотреть наш более новый программатор USB AVR Pololu v2.1 , а не этот программатор, поскольку он предлагает ряд улучшений (включая поддержку 3,3 В) по более низкой цене. Однако обратите внимание, что программатор v2.x не имеет бонусной функции SLO-scope, которая есть у этого программатора.

    Программатор General AVR ISP

    Программатор Pololu USB AVR — чрезвычайно компактный недорогой внутрисистемный программатор (ISP) для микроконтроллеров Atmel AVR, что делает это устройство привлекательным программным решением для AVR- на основе контроллеров, таких как наши контроллеры роботов Orangutan и модули A-Star. Программатор USB AVR подключается к USB-порту вашего компьютера с помощью входящего в комплект кабеля USB A-mini-B и связывается с вашим программным обеспечением, таким как Atmel Studio или AVRDUDE, через виртуальный COM-порт с использованием протокола AVRISPV2/STK500. Программатор подключается к вашему целевому устройству через входящий в комплект 6-контактный кабель для программирования ISP (старые 10-контактные подключения ISP напрямую не поддерживаются, но легко создать или приобрести переходник 6-контактного на 10-контактный ISP). .

    Поддерживаемые микроконтроллеры

    Программатор должен работать со всеми AVR, которые можно запрограммировать с помощью интерфейса AVR ISP, но он не тестировался на всех устройствах. Он был протестирован со всеми контроллерами роботов Orangutan и роботом 3pi. Программатор имеет обновляемую прошивку, позволяющую обновлять будущие устройства. В настоящее время он не работает с линейкой микроконтроллеров Atmel XMega.

    Программатор питается от шины питания USB 5 В и предназначен для программирования AVR, работающих от напряжения, близкого к 5 В (обратите внимание, что программатор не подает питание на целевое устройство).

    Поддерживаемые операционные системы

    Программатор протестирован под Windows XP, Windows Vista, Windows 7, Windows 8, Windows 10 и Linux. Мы предоставляем ограниченную поддержку для использования этого программатора в Mac OS X; Подробности см. в руководстве пользователя. Этот программатор не совместим со старыми версиями Windows.

    Дополнительная функция: последовательный порт TTL-уровня

    USB-программатор AVR можно использовать как адаптер USB-последовательный порт. Программатор устанавливает как два виртуальных COM-порта : один для связи с программным обеспечением для программирования и один для универсального адаптера USB-to-serial. Это означает, что вы можете легко переключаться между программированием AVR и его отладкой через последовательный порт TTL без необходимости открывать и закрывать программу терминала. В дополнение к последовательным линиям передачи ( TX ) и приема ( RX ) программатор позволяет использовать контакты A и B в качестве последовательных линий квитирования. Утилита конфигурации программатора позволяет выбрать, какая линия квитирования назначена какому контакту, и поддерживаются как входные, так и выходные линии квитирования. Программатор также дает вам доступ к регулируемой шине питания 5 В USB через 9 портов.0087 VBUS пин. Последовательный порт уровня TTL не поддерживается в Mac OS.

    Дополнительный компонент: SLO-scope

    Это устройство также может работать как двухканальный осциллограф с жесткими ограничениями (SLO-scope) с использованием аналоговых входов напряжения A и B как 1 и приложение Pololu SLO-scope для Windows. SLO-scope может измерять напряжение от 0 до ~5 В (максимальное значение ограничено напряжением шины USB) или выше, если вы используете внешний делитель напряжения, и поддерживает два режима дискретизации: 10 кГц дискретизация двух 8-битных аналоговые входы или выборка 20 кГц одного 7-битного аналогового входа и одного цифрового входа. Эта функция может помочь вам отладить ваши схемы и прошивку, наблюдая за изменениями напряжения в различных узлах. (Обратите внимание, что обратная связь SLO-scope весьма ограничена и не предназначена для замены реального осциллографа или хорошего мультиметра, который будет иметь гораздо более высокий входной импеданс, лучшее разрешение и диапазон, а также более высокую частоту дискретизации.) область не поддерживается в Mac OS или Linux.

    Входящие в комплект аксессуары

    Программатор Pololu USB AVR поставляется с 12-дюймовым (30 см) 6-контактным кабелем для программирования ISP и кабелем USB A/mini-B. Он не поставляется с программным обеспечением или документацией, но программное обеспечение (включая драйверы) и документацию можно найти на вкладке ресурсов.

    USB-программатор Pololu AVR с шестиконтактным кабелем ISP и кабелем USB A/mini-B.

    Примечание: Этот программатор поддерживает стандартное внутрисистемное программирование (ISP), которое также иногда называют внутрисхемным последовательным программированием (ICSP).

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

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