Site Loader

Содержание

Программаторы для AVR | avr

Меня часто спрашивают, чем прошивать AVR-ки, поэтому тут решил выложить ссылки на программаторы.

[Программаторы AVR с интерфейсом USB]

AVR-Doper. Программатор, поддерживающий протокол STK500 (это значит, что с ним совместим большой набор утилит для программирования, в том числе AVR Studio и AVRDUDE), может поддерживать последовательное ISP-программирование, а так же высоковольтное HVSP программирование. Прошивает почти все известные чипы AVR. Можно изготовить самому, схема не очень сложная, есть готовые прошивки, исходный код полностью открыт. Для работы под Windows нужен драйвер, который есть в комплекте с исходным кодом.
AVRISP-MkII. Клон одноименного программатора Atmel, также поддерживает протокол STK500. Нет HVSP, но зато кроме ISP, поддерживает интерфейсы
TPI
и PDI, поэтому может прошивать также более современную серию микроконтроллеров XMEGA. Так же как и AVR-Doper, поддерживается многими популярными программами. Схема очень простая, шьет вообще весь ассортимент AVR (плюс XMEGA), поэтому этот программатор — хороший кандидат на самостоятельное изготовление или покупку. Схема простейшая, исходный код открыт, его можно скомпилировать практически на любой чип AVR с аппаратным интерфейсом USB. Для работы под Windows нужен драйвер, который есть в комплекте с исходным кодом. В качестве утилиты программатора лучше всего использовать AVR Studio версии 4.19.
mkII-slim. Еще один клон того же программатора AVRISP-mkII, для которого разработана печатная плата, так что его можно собрать в домашних условиях. Этот программатор имеет встроенный стабилизатор на 3.3V и позволяет перемычкой переключать напряжение программируемого чипа — 3.3V или 5V.
AVR Dragon. Популярный, не очень дорогой программатор и внутрисхемный отладчик Atmel, его клоны можно найти на eBay по ценам порядка 40 .. 50 долларов. Поддерживается AVR Studio, IAR Embedded Workbench и многими другими популярными средами программирования. Самому изготовить можно даже и не пытаться (исходного кода нет, схемы нет и она сложная, открыт только протокол STK500), но если у Вас есть деньги и желание серьезно заняться программированием — то купить AVR Dragon нужно обязательно. Для работы под Windows нужен драйвер, который устанавливается вместе с AVR Studio.
Atmel AVR JTAGICE mkII. «Тяжелая артиллерия» для программирования и отладки AVR. И ISP-программатор, и внутрисхемный эмулятор (JTAG, debugWIRE) в одном флаконе. Пользуюсь этой штукой давно, и вполне доволен. Работает через COM-порт и по USB. Стандарт де-факто (его понимает даже avrdude), хорош всем, кроме цены. Программы с которыми работает — AVR Studio, консольная штатная прога, avrdude. Поддерживаются интерфейсы отладки
debugWire
и JTAG, программируется весь ассортимент AVR, но нет поддержки высоковольтного программирования HVSP. Дорогое решение, поэтому рекомендовать для покупки трудно, а повторить самому нереально. Для работы под Windows нужен драйвер, который устанавливается вместе с AVR Studio.
USBasp. По-настоящему «народный» USB-программатор — из-за дешевизны изготовления, простоты схемы и открытых исходников его делают все кому не лень. USBasp стал уже стандартом де-факто и поддерживается большим количеством утилит программирования. Есть множество вариантов изготовления (ссылки смотрите на сайте автора), его также делают на продажу многие компании. Некоторые китайские поделки — клоны USBasp — можно купить на ebay или dealextreme по ценам порядка 4 долларов, однако его качество может оказаться очень плохим, поэтому будьте внимательны. Программатором USBasp поддерживается только интерфейс программирования ISP. Для работы под Windows нужен драйвер (есть на сайте автора). Протокол USBasp применяется для многих USB-бутлоадеров (благодаря открытости и простоте).
USBtinyISP. Полностью открытый проект с исходниками. Имеет 2 ISP-коннектора — на 6 pin и на 10 pin. Используется чип ATtiny2313-20P, схема очень простая.
USB AVR programmer. Не написано, что клон AVR910, но очень похож на него. Сделан на FT232BM и ATtiny2313. Полностью открытый проект — со схемой и исходниками.
AVRminiProg. Он же AVRminiISP, AVRminiJTAG, AVRminiDragon. Если автор не обманывает, то поддерживается программирование и отладка из AVR Studio.
vusbtiny. Наверное самый маленький в мире ISP-программатор с интерфейсом USB, и самый простой. 

[Другие программаторы AVR, подключающиеся через COM и LPT]

Эти программаторы уже не так актуальны сегодня, потому что в компьютерах и особенно в ноутбуках портов COM и LPT уже не встретишь.

STK500. Разработка Atmel (ATSTK500). Подключается через COM-порт, поддерживает ISP и HVSP программирование. Очень серьезный инструмент, однако сегодня уже устарел. Схема и протокол открыты, но исходников firmware нет (firmware поставляется вместе с AVR Studio версий 4.11 build 401 и более поздних, находится в файле Atmel\AVR Tools\STK500\STK500.ebn — его можно напрямую прошить в At90s8535 или Mega8535 программатором наподобие AVR910). Заявлено, что прошивает все чипы Atmel в DIP-корпусах, поддерживает параллельное программирование. Подключается к компьютеру через COM-порт, работает вместе с AVR Studio, поддерживает отладку. Есть также клоны STK500 (некоторые подключаются к USB, так как имеют в себе мост USB-COM). Есть также некоммерческие проекты, например HVProg.
HVProg. Клон STK500, усовершенствованный проект Evertool Мартина Томаса. Совместим с AVR Studio, исходный код и схема открыты.
Serial AVR programmer (AVRProg). Очень простой ISP-программатор, подключающийся к COM-порту. Программа свободная, исходники и схема прилагаются. Есть даже версия,работающая с КПК — http://kazus.ru/forums/showthread.php?t=13574.
PicProg+. Производитель Фитон. Очень качественный программатор, подключающийся через LPT. Кроме AVR, шьет большой ассортимент микросхем и микроконтроллеров. Управляющая программа работает под MS-DOS. Программа К сожалению, авторы проект забросили, и программатор больше не обновляется и не поддерживается. А жаль, продукт был очень хороший.
ChipProg+. Тоже универсальный программатор от Фитона. Более современная версия, есть варианты с подключением по LPT и по USB. Программа управления работает под Windows. На мой взгляд, программа управления сыровата, и по функционалу и удобству уступает доисторической оболочке PicProg+, которая работала на MS-DOS. К сожалению, разработчики наплевательски относятся к вопросам пользователей по эксплуатации программатора, и не обращают внимания на запросы о добавлении поддержки новых чипов. Поэтому лучше этот программатор не покупать.
PonyProg. Весьма популярный и качественный ISP программатор с открытой принципиальной схемой. Подключается по COM и USB через переходник.
UniProF. Программатор «на проводках», очень простой, подключаемый либо к COM, либо к LPT. Схемы как таковой нет, настолько она простая. Работает только со «своей» программой, исходников которой нет.
AVReAl. Утилита программирования, работающая на Windows, Linux и FreeBSD. Программу можно использовать с коммерческой или некоммерческой целью, но её тексты закрыты, т. е. она бесплатна (freeware), но не свободна (free software). Утилита поддерживает одну из разновидностей схем «на проводках», но более продвинутая — позволяет использовать не только LPT-адаптеры, но и USB-адаптеры, сделанные на основе микросхем FT2232C, FT2232L, FT2232D, FT2232H, FT4232H, FT232H. Для получения более подробной информации прогуглите слово AVReAL.

AVR910 совместимые программаторы. AVR910 хорош тем, что поддерживается avrdude, Atmel AVR Studio и CodeVision, а протокол, схема и исходники firmware открыты. Плох тем, что изначально программатор разрабатывался для COM-порта, поэтому для прикручивания к USB нужен чип типа FT232, либо искать схему и прошивку на основе библиотеки V-USB (старое название AVR-USB). Клонов AVR910 расплодилось много. Вот несколько ссылок:

— Программатор микроконтроллеров AVR / 89S совместимый с AVR910 (на основе V-USB. Автор PROTTOSS, чип ATmega8)
— Программатор для AVR (чип ATtiny2313, на основе COM-порта и/или FT232)
— мой порт AVR910 (на основе исходников PROTTOSS) на чип ATmega16. Позволяет на недорогой макетной плате AVR-USB-MEGA16 собрать свой программатор.
— AVR910 — Programmer fur AVR-Prog und avrdude — еще один клон AVR910, список поддерживаемых программ большой — AVR Studio (Windows), AVRProg (Windows), OSP II (Windows), AVR Codevision (Windows), WinAVR GCC (Windows), AVRDUDE (Linux, Windows, Solaris), UISP (Linux), AVR-Prog (Linux), Palm AVR (Palm PDA), AVRP (Linux, Windows, Amiga), BascomAVR (Windows), KontrollerLab (Linux).

STK200+/300 — совместимые программаторы [2]. Позволяют по очень простой схеме собрать программатор, подключаемый через порт LPT. Программатор Kanda Systems STK200/STK300 поддерживается многими оболочками для программирования: IC-Prog, PonyProg, UniProf, CodeVisionAVR C Compiler.

Olimex. Хорошие, недорогие, компактные программаторы и отладчики AVR (с подключением по USB) предлагает компания Olimex [1]. Компания надежная, в Россию высылает быстро.

[Ссылки]

1. Программаторы ISP и JTAG-отладчики компании Olimex.
2. Простейшие программаторы AVR, статья на radiokot.ru и на eldigi.ru.

Модуль RC119M. Программатор для Atmel USBasp совместимый

Спаянная печатная плата с инструкцией в упаковке.
  Данный программатор предназначен для внутрисхемного программирования Atmel AVR микроконтроллеров. Подключается к USB порту персонального компьютера, имеет возможность подачи питания на программируемое устройство, выбора частоты программирования, работоспособен под управлением операционных систем Linux, Mac OS X и Windows.
Принципиальная схема

  Устройство является аналогом программатора USBasp (см. прим. [1]), может быть собрано с использованием микроконтроллеров ATmega8/ATmega48, и не требует дополнительных контроллеров USB-шины. Для осуществления возможности выбора частоты программирования, предусмотрена перемычка JP1, замкнув которую, частоту ISP порта можно понизить с 375 кГц до 8 кГц. Это необходимо при программировании микроконтроллеров, тактовая частота которых меньше 1,5 МГц. Перемычка JP3 предназначена для подачи питания на программируемое устройство. Для защиты USB порта от перегрузки или короткого замыкания, применён быстродействующий предохранитель F1, с током срабатывания 250 мА. Разомкнув перемычку JP2, можно понизить напряжение питания программатора с 5 В до 3,3…3,6 В, это может быть необходимо при программировании устройств с напряжением питания 3,3 В (см. прим. [2]).
  Для индикации режима работы устройства предназначены светодиоды D3 и D4: D3 индицирует подачу питания на устройство, а D4 — чтение/запись программируемого микроконтроллера. Причём напряжение на D4 подаётся немного раньше начала процесса чтения/записи, что может использоваться как сигнал для включения дополнительных буферов с тремя состояниями для преобразования уровней сигналов.

Схема расположения элементов
 
Назначение выводов порта программирования (вид со стороны деталей)

 Программное обеспечение поддерживаемое программатором:
  • 1. AVRDUDE, начиная с версии 5.2 (Рекомендуется);
  • 2. BASCOM-AVR, начиная с версии 1.11.9.6;
  • 3. Khazama AVR Programmer;
  • 4. eXtreme Burner — AVR.

  • Для поддержки средой AVR Studio 4, программатор может быть выполнен STK500-совместимым. Для этого, его необходимо запрограммировать альтернативной программой, которая может быть найдена на ЭТОМ САЙТЕ

 Список поддерживаемых микроконтроллеров:
  AT90S2313, AT90S2323, AT90S2343, AT90S4422, AT90S4434, AT90S8515, AT90S8535;
  ATTINY13, ATTINY15, ATTINY2313, ATTINY24,ATTINY25, ATTINY26, ATTINY261, ATTINY28,
  ATTINY44, ATTINY45, ATTINY61, ATTINY84, ATTINY84, ATTINY85, ATTINY861;
  ATMEGA103, ATMEGA128, ATMEGA1280, ATMEGA1281, ATMEGA16, ATMEGA161, ATMEGA162, ATMEGA163, ATMEGA164, ATMEGA169,
  ATMEGA32, ATMEGA324, ATMEGA325, ATMEGA3250, ATMEGA329x ATMEGA48,
  ATMEGA64, ATMEGA640, ATMEGA644, ATMEGA645, ATMEGA6450, ATMEGA649x,
  ATMEGA8, ATMEGA8515, ATMEGA8535, ATMEGA88;
  (Список может изменяться, в зависимости от применяемого ПО)

 Характеристики:
  • Номинальное напряжение питания: 5 В;
  • Номинальный ток потребления: 25 мА.

 Комплект поставки:
  • Собранный модуль;
  • Инструкция по эксплуатации.

 Примечания: Примечания:
   [1]. Описание, схема, драйвер, скомпиллированная программа для микроконтроллеров ATmega48/ATmega8 и её исходный код могут быть найдены на ЭТОМ САЙТЕ.
   [2]. Только для ATmega48. ATmega8 не поддерживает напряжение питания ниже 4,5 В.

Миниатюрный USB программатор для AVR микроконтроллеров / Хабр

Как театр начинается с вешалки, так программирование микроконтроллеров начинается с выбора хорошего программатора. Так как начинаю осваивать микроконтроллеры фирмы ATMEL, то досконально пришлось ознакомится с тем что предлагают производители. Предлагают они много всего интересного и вкусного, только совсем по заоблачным ценам. К примеру, платка с одним двадцатиногим микроконтроллером с парой резисторов и диодов в качестве обвязки, стоит как «самолет». Поэтому остро встал вопрос о самостоятельной сборке программатора. После долгого изучения наработок радиолюбителей со стажем, было решено собрать хорошо зарекомендовавший себя программатор USBASP, мозгом которого служит микроконтроллер Atmega8 (так же есть варианты прошивки под atmega88 и atmega48). Минимальная обвязка микроконтроллера позволяет собрать достаточно миниатюрный программатор, который всегда можно взять с собой, как флэшку.


Автором данного программатора является немец Thomas Fichl,

страничка

его разработки со схемами, файлами печатных плат и драйверами.

Раз решено было собрать миниатюрный программатор, то перерисовал схему под микроконтроллер Atmega8 в корпусе TQFP32 (распиновка микроконтроллера отличается от распиновки в корпусе DIP):

Перемычка J1 применяется, в случае если необходимо прошить микроконтроллер с тактовой частотой ниже 1,5МГц. Кстати, эту перемычку вообще можно исключить, посадив 25 ногу МК на землю. Тогда программатор будет всегда работать на пониженной частоте. Лично для себя отметил, что программирование на пониженной скорости на доли секунды дольше, и поэтому теперь перемычку не дёргаю, а постоянно шью с ней.
Стабилитроны D1 и D2 служат для согласования уровней между программатором и USB шиной, без них работать будет, но далеко не на всех компьютерах.
Светодиод blue показывает наличие готовности к программированию схемы, red загорается во время программирования. Контакты для программирования выведены на разъем IDC-06, распиновка соответствует стандарту ATMEL для 6-ти пинового ISP разъема:

На этот разъем выведены контакты для питания программируемых устройств, здесь оно берется напрямую с USB порта компьютера, поэтому нужно быть внимательным и не допускать кз. Этот же разъем применяется и для программирования управляющего микроконтроллера, для этого достаточно соединить выводы Reset на разъеме и на мк (см. красный пунктир на схеме). В авторской схеме это делается джампером, но я не стал загромождать плату и убрал его. Для единичной прошивки хватит и простой проволочной перемычки. Плата получилась двухсторонняя, размерами 45х18 мм.

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

Прошивка управляющего микроконтроллера

Итак, после сборки устройства осталось самое важное — прошить управляющий микроконтроллер. Для этих целей хорошо подходят друзья у которых остались компьютеры с LPT портом 🙂

Простейший программатор на пяти проводках для AVR

Микроконтроллер можно прошивать с разъема программирования, соединив выводы Reset микроконтроллера (29 нога) и разъема. Прошивка существует для моделей Atmega48, Atmega8 и Atmega88. Желательно использовать один из двух последних камней, так как поддержка версии под Atmega48 прекращена и последняя версия прошивки датируется 2009 годом. А версии под 8-й и 88-й камни постоянно обновляются, и автор вроде как планирует добавить в функционал внутрисхемный отладчик. Прошивку берем на странице немца. Для заливки управляющей программы в микроконтроллер я использовал программу PonyProg. При программировании необходимо завести кристалл на работу от внешнего источника тактирования на 12 МГц. Скрин программы с настройками fuse перемычек в PonyProg:

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

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

Установка велась на машину с системой Windows 7 и никаких проблем не возникло. При первом подключении к компьютеру выйдет сообщение об обнаружении нового устройства, с предложением установки драйвера. Выбираем установку из указанного места:

Выбираем папку где лежат дрова и жмем Далее

Мигом появится окно с предупреждением о том, что устанавливаемый драйвер не имеет цифровой подписи у мелкомягких:

Забиваем на предупреждение и продолжаем установку, после небольшой паузы появится окно, сообщающее об успешном окончании операции установки драйвера

Все, теперь программатор готов к работе.

Khazama AVR Programmer

Для работы c программатором я выбрал прошивальщик

Khazama AVR Programmer

. Замечательная программка, с минималистичным интерфейсом.


Она работает со всеми ходовыми микроконтроллерами AVR, позволяет прошивать flash и eeprom, смотреть содержимое памяти, стирать чип, а также менять конфигурацию фьюз-битов. В общем, вполне стандартный набор. Настройка фьюзов осуществляется выбором источника тактирования из выпадающего списка, таким образом, вероятность залочить кристалл по ошибке резко снижается. Фьюзы можно менять и расстановкой галок в нижнем поле, при этом нельзя расставить галки на несуществующую конфигурацию, и это тоже большой плюс в плане безопасности.

Запись фьюзов в память мк, как можно догадаться, осуществляется при нажатии кнопки Write All. Кнопка Save сохраняет текущую конфигурацию, а Load возвращает сохраненную. Правда я так и не смог придумать практического применения этих кнопок. Кнопка Default предназначена для записи стандартной конфигурации фьюзов, такой, с какой микроконтроллеры идут с завода (обычно это 1МГц от внутреннего RC).
В общем, за все время пользования этим программатором, он показал себя с наилучшей стороны в плане стабильности и скорости работы. Он без проблем заработал как на древнем стационарном пк так и на новом ноутбуке.

Скачать файл печатной платы в SprintLayout можно по этой ссылке

Ну вроде все, если возникнут вопросы, постараюсь ответить.

Обзор программатора 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)

Собираем USB-программатор для AVR из ATmega328P и FT232

Из заметки Как собрать Arduino прямо на макетной плате вы можете помнить, что Arduino так легко и просто программируется благодаря залитому в его микроконтроллер бутлоадеру. Но использование бутлоадера не всегда удобно, так как он занимает лишнюю flash-память в микроконтроллере, тормозит при его запуске, не говоря уже о том, что в новые микроконтроллеры его нужно каждый раз прошивать. И ведь можно обойтись без него, если один раз обзавестись программатором.

Покупать готовый программатор, например, USBASP, как-то не спортивно. Да и используемые в нем 10-и пиновые IDC-разъемы я нахожу не особо удобными. В Arduino используется 6 пинов, значит нужен переходник. На макетке в два ряда пины вставить не получится, значит нужен еще один переходник. Да и ждать готовый USBASP из Китая долго. Можно было бы спаять свой. Но покупать используемую в нем ATmega8 специально для программатора не хотелось. Использовать же прошивку USBASP на ATmega328P у меня, увы, не получилось. Не исключаю, что просто руки кривые.

Так или иначе, решил попробовать сделать свой программатор. Долгой историей его разработки утомлять вас не буду, приведу лишь краткую версию. Так, в частности, выглядел первый работающий прототип:

В нижней части вы видите сам программатор, в верхней — микроконтроллер, который он программирует. Приведенный программатор представляет собой обыкновенную Arduino Uno, собранную из SMD компонентов. В нее заливается уже знакомый нам скетч ArduinoISP, превращающий Arduino в программатор. Новым для нас здесь является только чип FT232. Ранее мы уже использовали готовые USB-UART преобразователи на его базе, но в собственной цепи FT232 мы еще не использовали.

Что к чему у этой микросхемы подключается подробнейшим образом описано в даташите [PDF]. Притом, понадобились не все пины, только 1 (TX), 4 (VCCIO, к плюсу), 5 (RX), 7 (GND), 15 (USB D+), 16 (USB D-), 18 (GND), 20 (VCC), 21 (GND), 25 (AGND, к земле), 26 (TEST, к земле). Вжух, и с микроконтроллером можно общаться по USB через виртуальный последовательный порт!

Рассыпуха, используемая мной в программаторе:

Окончательный вариант программатора, вид сверху:

Вид снизу:

То, что текст на обратной стороне слегка сполз — это косяк Резонита. Думаю, проект просто криво импортнулся из EAGLE в используемый ими какой-то другой софт, и этого никто не заметил.

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

Первый способ — сделать это до впаивания, через переходник из TQFP32 в DIP. Такой переходник вы можете заметить на фотографии прототипа. Он легко изготовляется при помощи ЛУТ или пленочного фоторезиста и довольно часто пригождается. Так что, если у вас данного переходника еще нет, самое время им обзавестись. Затем прошивка с (опционально) бутлоадером Arduino заливаются, как обычно.

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

Как вы, вероятно, уже знаете, существует утилита avrdude, предназначенная специально для общения с программатором. К сожалению, использовать ее напрямую не очень удобно. Поэтому в дополнение к программатору я также написал небольшую обвязку для avrdude на Python. На момент написания эти строк скрипт умел следующее:

$ avrisp
Usage: /home/eax/bin/avrisp <dump|upload|info|set-fuses> [fuses-name]
Possible [fuses-name] values: arduino, atmega328p-1mhz, atmega328p-8mhz

Другими словами, он умеет заливать и дампить прошивку, отображать информацию о микроконтроллере, в частности, текущие fuse bits, а также выставлять предопределенные fuse bits — дэфолты для Arduino, заводские дэфолты для ATmega328P, при которых используются внутренние часы на 8 МГц и стоит флаг Divide clock by 8, и те же fuse bits, только без названного флага. Подробнее о fuse bits вы можете прочитать в полном даташите по ATmega328P [PDF] на странице 348, в секции 31.2. Но будьте осторожны! Выставив не те fuse bits, можно перевести микроконтроллер в такое состояние, в котором вы потом не сможете до него достучаться обычными средствами.

Если в своих проектах вместо кварцевого резонатора вы решите использовать часы микроконтроллера, учтите, что для этого в ранее использованном нами файле arduino.mk понадобится закомментировать строку:

# BOARD_BUILD_FCPU := $(call readboardsparam,build.f_cpu)

… а в Makefile дописать частоту микроконтроллера, например:

# для фьюзов с именем atmega328p-1mhz
BOARD_BUILD_FCPU := 1000000

Все исходники к этой заметке, включающие в себя принципиальную схему и плату в форматах EAGLE, код скетча ArduinoISP, который я одолжил из Arduino IDE, а также скрипт avrisp.py, вы найдете в этом репозитории на GitHub. Как обычно, буду рад вашим дополнениям и вопросам!

Метки: AVR, Электроника.

Универсальный программатор AVR.

Программирование AVR микроконтроллеров.

Программаторы ChipProg ООО «КБ Фитон» программируют все AVR микроконтроллеры фирмы Atmel. Эти микроконтроллеры программируются как в параллельном режиме, так и в режиме SPI.. Программаторы ChipProg предназначены как для разработчиков AVR микроконтроллеров, так и для массового производства изделий с применением этих устройств.

Особенности программирования AVR микроконтроллеров на программаторах ChipProg:

  1. Поддержка семейств AVR микроконтроллеров: ATtiny, ATmega, ATxmega.
  2. Программирование AVR микроконтроллеров как в плате пользователя через ISP интерфейс, так и колодке программатора в параллельном режиме.
  3. Поддержка всех типов корпусов AVR микроконтроллеров от 8 до 100 выводов с помощью дополнительных адаптеров.
  4. Визуализация всех конфигурационных бит AVR микроконтроллеров в виде, представленном в описании на микросхему.
  5. Возможность программирования и допрограммирования отдельных элементов микроконтроллера, включая конфигурационные биты.
  6. Поддержка идентификаторов AVR микроконтроллеров для безопасного программирования.
  7. В параллельных программаторах контроль каждого вывода AVR микроконтроллеров на присутствие контакта.
  8. В параллельных программаторах контроль правильной установки AVR микроконтроллеров в колодку программатора.
  9. Адаптация для промышленного программирования и тиражирования AVR микроконтроллеров:
    1. 1. Встроенные средства подсчета контрольных сумм, генерации серийных номеров и строк сигнатур.
    2. 2. Встроенные средства ведения журнала программирования.
    3. 3. Возможность управления программатором из командной строки.
    4. 4. Встроенный Си подобный язык написания скриптов, позволяющий автоматизировать процесс программирования.
    5. 5. Упрощенный интерфейс пользователя.
    6. 6. Возможность управления программатором на лету.
    7. 7. Возможность управления программатором из приложения пользователя.
    8. 8. Возможность управления программатором из популярной среды автоматизации LabView.
  10. Сертификация программаторов ChipProg фирмой Atmel и рекомендация фирмы Atmel программаторов ChipProg для программирования AVR микроконтроллеров.

Программаторы поддерживающие AVR микроконтроллеры:

  1. ChipProg-481 – самый быстрый универсальный программатор, программирующий AVR микроконтроллеры как в колодке программатора, так и в плате пользователя. Программатор также поддерживает микроконтроллеры других производителей, NAND, NOR  Flash, EEPROM, EPROM и CPLD. Программатор поддерживает больше всего микросхем.
  2. ChipProg-G1 – универсальный промышленный программатор, программирующий AVR микроконтроллеры как в колодке программатора, так и в плате пользователя. Программатор также поддерживает микроконтроллеры других производителей, NAND, NOR Flash, EEPROM, EPROM и CPLD. Программатор позволяет программировать одновременно до 4 микросхем и характеризуется очень высокой скоростью.
  3. ChipProg-48 – недорогой универсальный программатор, программирующий AVR микроконтроллеры как в колодке программатора, так и в плате пользователя. Программатор также поддерживает микроконтроллеры других производителей, NAND, NORF lash, EEPROM, EPROMи CPLD. Программатор имеет примерно такой же список поддерживаемых микросхем, что и ChipProg-481, но значительно проигрывает последнему в скорости программирования микросхем Flash памяти большой емкости.
  4. ChipProg-40 – самый бюджетный универсальный программатор, программирующий AVR микроконтроллеры как в колодке программатора, так и в плате пользователя. Программатор также поддерживает микроконтроллеры других производителей, память Flash, EEPROM, EPROM.
  5. ChipProg-ISP2 – универсальный внутрисхемный программатор, программирующий AVR микроконтроллеры в плате пользователя. Программатор также поддерживает микроконтроллеры других производителей, NAND, NOR Flash, EEPROM, EPROM.

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

Размер основной платы 76×76мм, а платы коммутации 95×80мм. Они изготовлены из одностороннего фольгированного стеклотекстолита и оптимизированы для метода «утюжной» технологии. Все резисторы и неполярные конденсаторы в SMD корпусах, микросхемы – в DIP. В качестве DD3 можно использовать как устаревший AT90S2313, так и новый ATtiny2313. Причем первый даже более предпочтителен по причинам, которые будут рассмотрены ниже. В качестве DD2 очевидно можно использовать не только ATmega8535, но и AT90S8535, правда такой вариант не тестировался.

Программатор выполнен в корпусе, спаяном из фольгированного гетинакса. Плата коммутации является верхней крышкой, в ней сделаны по месту не показанные на чертеже отверстия для SB1 и HL1-HL3. Разъем СШ-7 для внутрисхемного программирования размещается на боковой стенке. Кабель связи с компьютером может иметь длину 1…1,5м. Питание осуществляется от любого сетевого адаптера с напряжением 9…15в и током до 100ма.

После сборки следует внимательно проверить правильность монтажа, отсутствие короткозамкнутых дорожек и непропаяных соединений. После этого нужно проверить наличие напряжения питания 5в на выходе DA1. Если все в порядке, можно приступать к «оживлению» устройства. Это достаточно серьезная процедура и спешить тут не следует.

Контроллер DD3 перед установкой в схему необходимо запрограммировать. Его прошивка разработана на основе Appnote AVR910: In-System Programming [5]. Первая версия этого документа датирована 1997 г. Первоначально использовался контроллер типа AT90S1200, в дальнейшем, не без активного участием радиолюбителей программа была адаптирована для AT90S2313, а ее возможности расширены [6]. В предлагаемом устройстве для записи в контроллер DD3 следует использовать доработанный автором файл прошивки isp_2313.hex из архива isp.zip.. В этом же архиве находится исходный текст этого файла isp_2313.asm и дистрибутивы печатных плат в формате Sprint-Layout 4.0.

Получается, что для того, чтобы сделать этот программатор, необходим другой программатор. Но он нужен только один раз и для этой цели можно воспользоваться упоминавшимся ранее PonyProg или обратиться за помощью к друзьям. Как уже говорилось, с одинаковым успехом можно использовать как AT90S2313, так и ATtiny 2313. Прошивка будет работать с любым из них. Однако, если на Fuse биты первого можно не обращать внимания, используя их значения по умолчанию, то для ATtiny2313 Fuse биты следует установить следующим образом: SPMEN=1, DWEN=1, EESAVE=1, SPIEN=0, WDTON=1, BODLEVEL2…0=111, RSTDISBL=1, CKDIV8=1, CKOUT=1, SUT1…0=11, CKSEL3…0=1101 (0 — запрограммирован, 1 — нет). К сожалению, фирма Atmel не предусмотрела возможность включать состояние этих бит в файл прошивки, а их неправильная установка может привести к полной неработоспособности устройства. Поэтому, в случае возникновения сомнений, следует руководствоваться фирменной документацией на контроллер ATtiny2313, а тем, у кого нет опыта в работе с программаторами предпочтительно поискать старый AT90S2313.

Установка Fuse бит ATmega8535 по умолчанию также не подходит, и, если есть возможность, их желательно предварительно запрограммировать следующим образом: S8515C=1, WDTON=1, SPIEN=0, CKOPT=0, EESAVE=1, BOOTSZ1…0=00, BOOTRST=1, BODLEVEL=1, BODEN=1, SUT1…0=11, CKSEL3…0=1111. Запрограммировать их можно будет и непосредственно в описываемом программаторе, но лучше использовать контроллер с предварительно установленными Fuse битами. Дело в том, что по умолчанию в качестве тактового установлен внутренний RC генератор на 1 мгц. Соответственно на выводе XTAL2 никакого сигнала не будет, значит и на DD3 тактовая частота подаваться не будет. А это приведет к полной неработоспособности устройства.

Выходов из этой ситуации может быть несколько. Первый, как уже указывалось, использовать контроллер с предварительно запрограммированными Fuse битами. Если это невозможно, придется запаять временную перемычку между выводом XTAL1(13) DD2 и XTAL2(4) DD3. Теперь кварц окажется подключенным и к DD3. Все будет работать, но… только до того момента, пока Fuse биты не переконфигурируют тактовый генератор DD2 на работу с кварцем. После этого временную перемычку нужно удалить, разумеется предварительно отключив питание. Если при установке бит была допущена ошибка, повторно этот способ может и не сработать. Но не стоит отчаиваться. В качестве крайней меры можно порекомендовать временно разорвать соединение между выводами XTAL2(12) DD2 и XTAL1(5) DD3 и подключить к DD3 второй кварц и 2 конденсатора аналогично ZQ1 и C1, C2. Или подать на вывод XTAL1 DD3 сигнал от внешнего источника необходимой частоты и амплитуды.

Теперь наступило время подключить программатор к COM порту и подать на него питание при НАЖАТОЙ кнопке SB1. Ни один из светодиодов не должен светиться. После этого нужно запустить AVR Studio. Желательно использовать версию не ниже 4.09. Все дальнейшие пояснения будут относиться к версии 4.12. После запуска в меню Tools надо выбрать AVR Prog.

Если все сделано правильно, через несколько секунд на экране появится окно, показанное ниже на рисунке слева. Нажатие на кнопку «Advanced» (в правом нижнем углу) приведет к переходу на следующее окно. Если Fuse биты были заранее запрограммированы, то выглядеть оно будет так, как показано на рисунке справа.

Waveshare ATMEL AVR Programmer USB AVRISP XPII Совместимость Atmel на AVR ISP mk2 mkII Внутрисистемный программатор поддерживает AVR Studio 4/5/6/7 или более позднюю версию: Электроника

5.0 из 5 звезд Лучший программатор для чипов AVR8 в Atmel Studio — даже лучше, если вы часто переключаетесь между AS и Arduino
Джошуа М.Левин 21 января 2017 г.

На 100% совместим с MkII, отлично работает с AS7 из коробки, поставляется со всеми необходимыми кабелями.

Этот программатор на 100% совместим с оригинальным MkII — настолько, что AS7 предлагает автоматическое обновление прошивки при подключении.

Он поддерживает функцию «чтения целевого напряжения», которая может сэкономить много времени при устранении неполадок при программировании.Если вы проверите напряжение, и оно не то, что вы ожидали, вы сразу узнаете, что нужно проверить соединение и целевой источник питания.

Также поддерживает программирование протокола TPI, что необходимо для новых микросхем XMEGA и ATTINY. Программирование TPI БЫСТРО по сравнению со старым 6-контактным ISP skool и требует всего 4 контакта.

Вы также можете заставить это устройство работать с Arduino в Windows, используя трюк с заменой USB-драйвера Zadig (Google «Arduino MkII Zadig»).

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

Если вы работаете с микросхемами AVR8 в Atmel Studio, то я думаю, что это лучший программист, включая выразительные и сложные в использовании STK. У меня есть и STK500, и STK600, но в конечном итоге я использую MkII каждый раз, если мне не нужно заниматься каким-то экзотическим программированием высокого напряжения.

Если вам нужно работать и в Arduino, и в AS7, этот программатор еще лучше, так как вы можете переключаться вперед и назад, и все просто работает (только ограничение: вы не можете оставлять инструмент «программирование устройства» открытым в AS, когда вы программируете из Ардуино).

Не тратьте время на чуть более дешевые клоны MkII — он полнофункциональный, имеет ожидаемые разъемы и работает «из коробки».

AVR Tutorial — Выбор программиста

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

Комментариев? Предложения? Напишите на форум!

Программистов легко десяток, я расскажу о 4 основных типах:

  1. Простые / базовые / Bitbang программисты
  2. Интеллектуальные программисты ISP
  3. Макетные платы
  4. Без программиста (загрузчик)

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

Программатор параллельного порта выглядит примерно так:

Вставляется в параллельный (принтерный) порт компьютера


Вы можете видеть, что серебристая часть подключается к параллельному порту, а затем есть кабель, который подключается к 10-контактному разъему ISP

Программатор последовательного порта выглядит примерно так:

Очень похож на программатор параллельного порта, но подключается к последовательному порту

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

Я предлагаю это людям, которые только начинают работать и делают очень простые вещи, но настоятельно рекомендую быстро перейти на умный программист ISP или доску для разработки.

Плюсы : Ультра дешево (10-20 долларов), легко понять, потому что программное обеспечение делает все, что исключает риск «несовместимости программиста или обновлений»
Минусы : требуется ПК с портами, компьютеры Mac не могут их использовать , если вы работаете с высоким напряжением (более 5 В), вы можете заблокировать свой порт, несколько стандартов для интерфейса программиста.

Такие программаторы можно купить в интернет-магазине adafruit.

Эти программисты подключаются к последовательному порту или USB-порту, и у них больше мозгов, чем у программистов bitbang. Они также с большей вероятностью будут работать и имеют некоторые приятные особенности.

Наиболее распространенный программатор — это AVRISP и AVRISPv2. Оба выглядят примерно так:


Фото любезно предоставлено EvilMadScientistLabs

На одном конце есть гнездо для кабеля, а 6-контактный и / или 10-контактный кабель выходит с другого.AVRISP v1 имел разъем для последовательного порта, а v2 — USB. У v1 есть оба кабеля, у v2 только 6-контактный.

AVRISPv2

можно приобрести на Digikey.com или Mouser.com за 36 долларов или около того

Мне очень понравилась версия 1, но она была снята с производства, а версия 2 не поддерживает 10-контактные кабели, поэтому я разработал свой собственный программатор под названием USBtinyISP, вы можете собрать его из комплекта примерно за 20 долларов. Об этом подробнее здесь.

Есть намного больше дизайнов ISP, многие самодельные.

Существуют десятки плат для разработки, каждая из которых немного отличается, поэтому я расскажу о двух наиболее популярных (и довольно недорогих), официально одобренных Atmel.

Первый — это STK500, который за 80 долларов — настоящий зверь. Он поддерживает практически все микросхемы Atmel со всеми различными сокетами. Он имеет кнопки, светодиоды, регулируемый генератор тактовой частоты и т. Д. Этот программатор поддерживается AVRStudio, которая является средой программирования Atmel.Поскольку это программист «де-факто», метод программирования, который он использует для связи с компьютером (называемый протоколом STK500), также является стандартным. У него есть некоторая кривая обучения, но многие люди его используют. Вы можете купить его в Digikey или Mouser.

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

Второй — AVR Dragon, который является не только программистом, но и эмулятором.Он больше похож на интернет-провайдера, чем на отладочную плату, у него есть разъемы для 6- и 10-контактных разъемов.

У меня было немного времени поиграть с ним, но люди говорят, что он хороший, и стоит всего 50 долларов. Обратите внимание, что нет разъемов для чипов.

В последние годы разработчики микроконтроллеров добавили в чип возможность программировать собственную флеш-память (часто это называется самопрограммированием). Это означает, что программа, записанная на микроконтроллер, может фактически изменить свою собственную программу.В большинстве случаев это не очень хорошая идея, программа может перезаписать себя, повредить себя и / или заставить микроконтроллер сойти с ума. Однако в некоторых случаях это может быть полезным.

Возьмем, к примеру, небольшую программу, записанную в микросхему, которая может связываться с компьютером через USB или последовательный кабель и позволять компьютеру загружать новую прошивку без использования программатора. Когда вы «обновляете прошивку» своего MP3-плеера или мобильного телефона, вот что происходит.

Например, Arduino использует загрузчик, который запрограммирован в чип на заводе Arduino. Загрузчик защищен от перезаписи. Чтобы загрузить код в Arduino, вы используете программное обеспечение Arduino, которое достаточно умен, чтобы распознавать, когда Arduino подключен.

Загрузчики

— это здорово, но вам понадобится программист ISP, чтобы установить загрузчик на чип в первый раз, если вы покупаете чип у Digikey или Mouser. Это немного проблема курицы и яйца.

Загрузчики

также не позволяют изменять плавкие предохранители (обсуждаются позже), и они занимают часть флэш-памяти, поэтому загруженные программаторы должны быть меньше.

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

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

USB-программатор для контроллеров Atmel AVR

USB-программатор для контроллеров Atmel AVR

Описание

Эти программаторы AVR основаны на дизайне USBasp Томаса Фишла и подключаются к USB-порту вашего компьютера. Они не только довольно компактны (70×20 мм), но и имеют действительно элегантный дизайн. Интерфейс USB достигается за счет использования процессора atmega8, а все остальное делается в прошивке.

Являясь проектом аппаратного обеспечения с открытым исходным кодом (OSHW), выпущенным под Стандартной общественной лицензией GNU, вы можете бесплатно загрузить схему и прошивку с веб-сайта Томаса, но тогда у вас возникнет проблема с курицей и яйцом. Чтобы загрузить прошивку USBASP на atmega8 на программаторе, да, как вы уже догадались, вам понадобится программатор AVR. Намного проще купить полностью собранный и запрограммированный.

Некоторые из функций включают:

Позволяет читать или записывать EEPROM микроконтроллера, прошивку, биты предохранителей и биты блокировки
Поддержка Windows, Mac OS X и Linux (будет работать на

Эти программаторы AVR основаны на дизайне USBasp Томаса Фишла и подключаются к USB-порту вашего компьютера.Они не только довольно компактны (70×20 мм), но и имеют действительно элегантный дизайн. Интерфейс USB достигается за счет использования процессора atmega8, а все остальное делается в прошивке.

Являясь проектом аппаратного обеспечения с открытым исходным кодом (OSHW), выпущенным под Стандартной общественной лицензией GNU, вы можете бесплатно загрузить схему и прошивку с веб-сайта Томаса, но тогда у вас возникнет проблема с курицей и яйцом. Чтобы загрузить прошивку USBASP на atmega8 на программаторе, да, как вы уже догадались, вам понадобится программатор AVR.Намного проще купить полностью собранный и запрограммированный.

Некоторые из функций включают:

Позволяет читать или записывать EEPROM микроконтроллера, прошивку, биты предохранителей и биты блокировки
Поддержка Windows, Mac OS X и Linux (будет работать в Windows 8.1)
Максимальная скорость записи 5 КБ / сек
Опция SCK с программным управлением для поддержки целей с низкой тактовой частотой (<1,5 МГц)
10-контактный интерфейс ISP (соответствует 10-контактному стандарту ISP)
Последние версии драйверов Windows полностью подписаны, поэтому вы можете без проблем использовать их в Windows Vista и более поздних версиях.Драйвер будет работать как на 32-битной, так и на 64-битной платформах. В Linux и Mac OS X драйвер ядра не требуется, просто используйте AVRdude и укажите правильный порт.

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

.

AVRdude (http://download.savannah.gnu.org/releases/avrdude/) — версия 5.2 или новее. AVRdude доступен для многих платформ.
Khazama AVR Programmer (http://khazama.com/project/programmer/) — графический интерфейс AVRdude для MS Windows
BASCOM-AVR (http://www.mcselec.com/index.php?option=com_content&task=view&id=14&Itemid=41) — версия 1.11.9.6 или более поздняя
eXtreme Burner (http://extremeelectronics.co.in/avr-tutorials/gui-software-for-usbasp-based-usb-avr-programmers/) — простое в использовании приложение с графическим интерфейсом для MS Windows.

Ссылки

USBasp — USB-программатор для контроллеров Atmel AVR (http: // www.fischl.de/usbasp/)

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

Размер: 70 x 20 x 9 мм
Поддерживаемое программное обеспечение: AVRDude 5.2 или выше

Поддерживаемые микроконтроллеры: 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

Миниатюрная серия
ATtiny12 ATtiny13 ATtiny13A ATtiny15 ATtiny25
ATtiny26 ATtiny45 ATtiny85 ATtiny2313 ATtiny2313A
Классическая серия
AT90S1200 AT90S2313 AT90S2333 AT90S2343 AT90S4414
AT90S4433 AT90S4434 AT90S8515
AT90S8535
CAN серии
AT90CAN128
ШИМ серии
AT90PWM2 AT90PWM3

[Снято с производства] Программатор USB ISP для ATMEL AVR 51 ATMega ATTiny — SainSmart.com

Торговая марка: SainSmart
[Снято с производства] Программатор USB ISP для ATMEL AVR 51 ATMega ATTiny

Артикул: 20-020-100 UPC: 6955170800582 ID товара: 11091676052 ID варианта: 45099756564

6 долларов.57 год

Какой лучший AVR ISP

ISP или внутрисистемное программирование — лучший способ программирования микроконтроллеров AVR, поскольку он позволяет программировать их по схеме.Это проще для разработки, производства и, что наиболее важно, для последующего обновления прошивки в полевых условиях. Инструмент, используемый для этого, — это провайдер AVR.

Самые простые и дешевые варианты AVR ISP используются платами Arduino. Микроконтроллер AVR, обычно ATmega328P, содержит загрузчик — отдельный фрагмент предварительно написанного кода, который занимается программированием микроконтроллера. Помимо встроенного кода Arduino, для обновления кода можно использовать бесплатные утилиты ISP, такие как PonyProg или AVRDude .На Ebay также есть несколько очень недорогих распакованных программаторов, которые можно использовать с Arduino.

Если вы вышли за рамки Arduino и используете Atmel AVRStudio или AtmelStudio и пишете на C или ассемблере, лучшим вариантом программирования является Atmel AVR ISP MKII .

Компания Atmel прекратила выпуск этого программатора, но есть несколько отличных клонов. Лучшее в нашем варианте — от Waveshare, поскольку оно полностью совместимо с оригиналом и имеет больше вариантов разъема ISP — 6-канальный, 10-канальный и подвижные провода.

Этот программатор запускается из AVRStudio и полностью интегрирован с ним, что упрощает вашу разработку, и его можно приобрести здесь. Waveshare AVRISP-MKII

Если вы серьезно относитесь к разработке, вы можете использовать вместо этого комбинированный программатор и ICE. Atmel AVR Dragon все еще производится и, как и AVRISP-MKII, работает из AVRStudio. В дополнение к функциональности ISP это также эмулятор, так что вы также можете отлаживать свой код.

Этот продукт доступен здесь — Atmel AVR Dragon

Оба этих провайдера AVR отлично подходят для разработки кода, поскольку они интегрированы в среду разработки, но это преимущество исчезает, когда ваш код завершен.AVRStudio большой и сложный, запускать его или заставлять кого-то использовать его, просто запрограммировать несколько микросхем, становится очень утомительно. Здесь вам нужен программист с собственным программным графическим интерфейсом, который можно использовать для программирования микроконтроллеров AVR без запуска Studio.

Kanda AVRISP-U — это недорогой интернет-провайдер USB AVR, имеющий проверенный программный интерфейс, предназначенный для программирования AVR. Он включает в себя буферы кода, возможность питания цели, автоматическое обнаружение цели и настройку скорости ISP.Он имеет все обычные функции чтения / программирования / проверки, которые вы ожидаете, плюс дополнительные операции, такие как серийная нумерация и байты калибровки.

Более подробная информация об этом программаторе здесь — AVRISP-U Programmer Details

Этот программатор отлично подходит для программирования небольшого объема и стандартного ISP, но для расширенных функций программирования и производственного программирования вам понадобится что-то более сложное. Если вам нужно JTAG-программирование или возможность запускать собственный программный интерфейс или тестовое оборудование с использованием DLL или командной строки, тогда программатор AVRUSB идеально подходит.Более подробная информация здесь — USB-программатор AVR с JTAG и DLL.

Для всех рассмотренных до сих пор программных решений AVR требуется ПК или ноутбук, и они не позволяют выполнять простое удаленное программирование. Если у вас есть продукты, которые были доставлены клиентам или дистрибьюторам повсюду, и вам нужно обновить прошивку, эти программисты не дадут хорошего ответа. В этом сценарии вам понадобится автономный программист, который максимально прост в использовании. Ручные программаторы Kanda AVR обеспечивают простое разрешение.

Они загружаются с ПК и после загрузки подключаются к целевому устройству, и одно нажатие кнопки обновляет целевое микропрограммное обеспечение AVR. Их можно отправлять туда, где они нужны, и их намного проще использовать в сложных условиях, чем ПК или ноутбук. Существует также версия, которая может хранить данные по 8 различным целям, что идеально подходит для настройки продукта или обновления ряда устройств.

Портативный программатор AVR Kanda

Хотя этот пост сконцентрирован на продуктах Kanda, он описывает диапазон доступных ISP AVR и должен заставить вас задуматься о правильном решении для вашей задачи программирования микроконтроллера AVR.

Другая информация о АРН

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

для Atmel (Microchip) Studio • Wolles Elektronikkiste

О посте

Если вы хотите работать с Atmel Studio (переименованной в Microchip Studio в 2020 году), вам сначала понадобится подходящий программист для загрузки ваших программ с ПК на микроконтроллер (MCU). Хорошая новость в том, что их довольно много, плохая новость в том, что программисты довольно дороги, особенно если вы хотите использовать такие функции, как отладка или HVSP (последовательное программирование высокого напряжения).

Я буду описывать только тех программистов, которые у меня есть и которые пробовали на себе. Это представители, показанные на картинке выше: AVR Dragon, Atmel-ICE и программатор USB ISP от Tremex / Diamex.

В отдельных сообщениях я дам введение в Atmel Studio 7 и покажу, как интегрировать и отлаживать скетчи Arduino, включая библиотеки, в Atmel Studio.

Какой программатор мне купить?

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

ISP : I n- S ystem- P программирование. Это стандартный метод программирования микроконтроллеров. Название связано с тем, что программирование происходит в установленном состоянии. Разъемы ISP обычно идентичны разъемам SPI. Подробнее об интернет-провайдерах здесь, в Википедии.

JTAG : стандарт J oint T est A ction G Группа для программирования микроконтроллеров.Не каждый MCU поддерживает JTAG.

debugWire : как следует из термина, с помощью этого метода возможна отладка. Вы можете запускать программы шаг за шагом, устанавливать точки останова и отслеживать переменные. Отладка в основном возможна как через ISP, так и через JTAG, но программист должен это поддерживать.

HVSP : H до V Напряжение S erial P программирование. Термин «высокое напряжение», возможно, вводит в заблуждение, это около 12 вольт.С помощью этого метода также можно восстановить микроконтроллеры с неисправными предохранителями. «Неисправные предохранители» означает, что вы выбрали настройки битов предохранителей, которые больше не позволяют программировать. Вы, так сказать, заблокировали себя, и это спасительный слесарь.

AVR Dragon

Dragon, передняя и задняя

AVR Dragon — мой личный фаворит, так как он поддерживает ISP, JTAG, debugWire и HVSP и, таким образом, максимально использует возможности Atmel Studio. За Дракона придется заплатить около 50-80 евро.И тогда вы можете быть удивлены, что даже не получили футляра за свои деньги, и что деталь тоже в каком-то смысле «недоделана». Но они взаимосвязаны.

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

Бортовое программирование с помощью Dragon

Чтобы иметь возможность программировать на плате, вы должны припаять гнездо для микроконтроллеров и контактный разъем (2 x 20) для доступа к гнезду рядом с ним.Лучше всего взять розетку ЗИФ. С контактным заголовком у вас есть выбор между «мужским» и «женским», большинство из которых, вероятно, принимает «мужской». Если вы хотите использовать HVSP, вам также необходимо припаять разъем 2 x 10 контактов.

«Необработанный» Dragon, с разъемами для контактов и разъемом ZIF

. Таким образом, прежде всего доступность и гибкость в выборе расширений делают аргумент в пользу Dragon бесполезным. Как вы можете видеть на фотографиях, я прикрутил несколько полиамидных прокладок в необработанном состоянии, чтобы плата не упиралась непосредственно в паяные соединения.К сожалению, гнездо ZIF закрывает отверстия, так что гайки больше не подходят. Однако я заметил, что проставки застревают даже без гаек (см. Следующее фото).

Как и другие программаторы, Дракон подключается к ПК через USB. В моей системе Windows 10 Дракон легко обнаруживался и мог быть выбран непосредственно в Atmel Studio 7. Никакой дополнительной установки драйвера не требовалось.

Проводка для бортового программирования

Для программирования на плате M C U фиксируется в гнезде ZIF.Микроконтроллеры выровнены в соответствии с нумерацией, напечатанной на заголовке вывода на Dragon. Теперь, в зависимости от метода и типа микроконтроллера, вы должны подключить контакты JTAG, ISP или HVSP к контактам разъема, подключенного к разъему ZIF. Это очень четко показано в руководстве пользователя AVR Dragon схематически.

Встроенное программирование — Пример: ATtiny85 через интернет-провайдера

На практике это выглядит так:

Встроенное программирование ATtiny85 через ISP

Внешнее программирование с помощью Dragon

Для внешнего программирования, e.грамм. на макетной плате можно легко ошибиться с проводкой. Распиновка порта ISP следующая:

Схема подключения к провайдеру

Вывод 1 обычно обозначается точкой или цифрой 1. Тем не менее, легко ошибиться. Поэтому я рекомендую приобрести адаптер для макетной платы, который доступен здесь или здесь в качестве варианта с разъемом 2×3 контакта.

Полезное приобретение: адаптер для макетной платы.

Также следует отметить, что Дракон не может питать MCU. Тем не менее, VCC и GND должны быть подключены, поскольку Atmel Studio проверяет, соответствует ли напряжение пределам спецификации микроконтроллеров.

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

Модуль питания для макетных плат

В качестве альтернативы я использую батарею на 9 В в сочетании с LM7805:

Блок питания 5 В с LM7805

Atmel-ICE

Программист Atmel-ICE

Atmel-ICE доступен в трех различных наборах:

  • Атмель-ICE Basic
  • Atmel-ICE (полный комплект)
  • Atmel ICE — комплект печатной платы
Базовый вариант

Базовый вариант состоит из программатора, показанного выше в белом корпусе, кабеля USB и переходного кабеля от 10-контактного 50-миллиметрового до 6-контактного 100-миллиметрового (отмечены красным на рисунке ниже).Сторона с 10 контактами на 50 милов — это несколько экзотический разъем для Atmel-ICE, а сторона с 6 контактами на 100 милов подходит для стандартного разъема ISP. Замена кабелей стоит бесстыдно дорого (20 евро!). Однажды я попытался достать детали на замену кабеля при самостоятельном изготовлении — и потерпел неудачу. Так что берегите этот кабель.

Для программирования микроконтроллеров AVR через ISP вполне достаточно Базового варианта. Цена порядка 120-130 евро.

Вариант полного комплекта

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

Адаптер полного комплекта, выделен красным: этот адаптер также доступен в базовом комплекте

. Если ничего не указано, т.е.е. только «Atmel-ICE», тогда это должен быть полный комплект, но внимательно проверьте его, если хотите его купить. Полный комплект доступен по цене ок. 180 евро — гордая наценка за кабель и небольшую плату адаптера.

Обнаженная плата — вариант PCBA

Версия PCBA — это голая плата без корпуса и без дополнительных переходных кабелей. Я бы порекомендовал это только «мастерам фриков». Его уже можно купить по цене от 80 до 90 евро, но без соединительного кабеля он бесполезен.

Характеристики Atmel-ICE

Atmel-ICE поддерживает ISP, JTAG и debugWire, но не поддерживает HVSP.Зато получится красивый, защитный корпус. Каждый должен сам знать, что для него важно.

Как и AVR Dragon, Atmel-ICE требует внешнего источника питания для целевого MCU.

Этот программатор также распознается непосредственно ПК и Atmel Studio без необходимости установки драйверов. Дополнительную информацию можно найти в Руководстве пользователя.

Программатор USB ISP

Программатор USB ISP

Программатор USB-ISP можно приобрести в компании Diamex или Tremex.Каким-то образом компании связаны, но я не совсем понял это. Как бы то ни было, на Amazon вы найдете деталь под соответствующими поисковыми запросами примерно за 20 евро. Таким образом, это самый дешевый представитель среди представленных здесь программистов. В комплекте идет USB-кабель и 10-контактный кабель для микроконтроллера.

За невысокую цену придется обойтись без отладки с помощью программатора USB ISP. HVSP тоже невозможен. С другой стороны, эта модель имеет то преимущество, что она может подавать питание на цель.Настройка выполняется с помощью микропереключателей:

.
  • 1: ВКЛ или ВЫКЛ / 2: ВЫКЛ -> Питание отключено
  • 1: ВЫКЛ / 2: ВКЛ -> Питание 3,3 В ВКЛ
  • 1: ВКЛ / 2: ВКЛ -> Питание 5 В ВКЛ

Сначала необходимо интегрировать программатор Tremex / Diamex USB ISP в Atmel Studio. Для этого вы заходите в меню на

Инструменты -> Добавить цель… -> Выбрать инструмент

Выберите ST500 и порт, затем подтвердите, нажав «Применить».Вот и все.

Для получения дополнительной информации посетите веб-сайт производителя. Если вы перейдете по ссылке, то найдете небольшое руководство в области загрузки.

Адаптер для макетной платы также может оказаться полезным приобретением для программиста USB ISP. Еще один полезный инструмент — модуль розеток ZIF, который также предлагает Diamex по цене чуть менее 20 евро. Это делает программирование микроконтроллеров даже проще, чем на плате с Dragon, поскольку больше нет необходимости в подключении отдельных контактов.В модуле сокета это умно решается путем предоставления каждому типу подключения MCU собственного разъема для соединительного кабеля.

Другие программисты

Есть еще больше программистов, совместимых с Atmel Studio. Дополнительные обзоры можно найти здесь или здесь.

Приложение Май 2020: еще одна интересная альтернатива, с которой я столкнулся позже, — это плата разработки aTeVaL 2.0. Я сообщаю об этом здесь.

USBasp — USB-программатор для контроллеров Atmel AVR

Следующие пакеты включают схему и прошивку.

(519 КБ) Поддержка TPI, поддерживает программистов с ATMega88 и ATMega8.

(118 Кбайт) Поддерживает программистов с ATMega48 и ATMega8.

В Linux и MacOS X драйвер ядра не требуется. Windows требует драйвер для USBasp. Используйте этот инструмент для установки драйвера для Windows (см. Также:

Вот список протестированных макетов печатных плат. Если вы разработали свою собственную печатную плату, сообщите мне.


usbasp_single_side.t3001.zip
Томас Фишль,
Односторонняя печатная плата, TARGET 3001! файл макета
Размер: 90×40 мм (оптимизирован для корпуса Hammond 1591ATBU)

lv_usbasp.tar.gz
Павел Шрамовский (11/2007)
С Низковольтный интерфейс .
Односторонняя печатная плата, файлы макета EAGLE, некоторые компоненты SMD

Автор: Бернхард Валле,
Двусторонняя печатная плата, файлы компоновки EAGLE, список деталей с номерами для заказа для Reichelt.de и Conrad.de
Размер: оптимизирован для корпуса Hammond 1591ATBU

http: // thomaspfeifer.net / atmel_usb_programmer.htm
Томас Пфайфер,
Односторонняя печатная плата, файлы макета PDF, компоненты SMD

Томаш Островски
Односторонняя печатная плата, файлы макета PDF и EPS, только четыре части 0805 SMD, остальные дискретные компоненты

USBasp_CH.молния
Автор: Christian Heigemeyr
Односторонняя печатная плата, с некоторыми компонентами SMD 0805, PDF-файлы
С дополнительными кнопками сброса и отключения мишени

USBasp.sch, USBasp.pcb
ComponentSide.pdf, TopSide.pdf, Schematics.pdf
по Журов Павел
Односторонняя печатная плата, формат P-CAD 2002 и файлы PDF
Крестовина TXD и RXD добавлены для разъема ISP

usbasp_gr.rar
автор: J.A. de Groot
Плата односторонняя (формат EAGLE), имеет размеры 3 на 8 см и использует только обычные компоненты.

usbasb_mg.zip
Маттиас Гёрнер,
Плата односторонняя, формат орла, с файлами PS / PDF
интегрированные разъемы для целевых микросхем ATmega8 и ATmega32

Tarball с макетом
по Ханнес Остлунд
Двусторонняя печатная плата, компоненты SMD, очень маленькие

Сергей Богданцев (01/2010)
3.Версия 3V, только ATMega48. Односторонняя печатная плата, формат макета ExpressPCB + плата разъемов для различных AVR. Без будущего последовательного интерфейса чип изначально должен быть запрограммирован другим программатором.

Eaglefiles (sch / brd) и дизайн корпуса САПР (dxf)
Ганса Хафнера, HTL Mössingerstrasse-Klagenfurt, Österreich, hans.hafner (at) htl-klu (dot) at
(01/2010)
Корпус, фрезерованный на ЧПУ (доступен файл DXF), макет Eagle, всего несколько деталей для поверхностного монтажа


Различные версии USBasp: простая в сборке версия без smd, smd и очень маленький USBasp
Свен Хедин (01/2011)
Доступны файлы Eagle.

Программатор USB Key AVR
Фабио Бальтиери (09/2011)
Очень маленький USB-ключ, как и габариты. Детали SMD.

Программатор AVR ISP
Ярослав Вадель (04/2012)
Маленький программист.Детали SMD.

Целевой проект и PDF-файлы (макет / схемы)
Мариус Шефер (09/2013)

tinyUSBboard с USBasp-совместимой прошивкой
Стефан Барвольф (04/2014)

USBasp на макетной плате с разъемом для дочерних плат контроллера.
от Фабиана Хаммеля (11/2018)

Тьяарт ван Асвеген разработал SMD-плату: файлы DIP TRACE и GERBER.
Тьяарт ван Асвеген (09/2019)

Многофункциональный (например,грамм. различные уровни напряжения, встроенный преобразователь USB в последовательный порт, разъем USB-C) Конструкция, совместимая с USBasp. AVR Programmer Github project.
Брайан Пепин (12/2019)

USBasp с разъемом ZIF и компонентами со сквозным отверстием.
Бруно (04/2020)

Плата USBasp с дополнительным 6-контактным разъемом и выбираемым целевым источником питания (3.3 В / выкл. / 5,0 В).
Марти Э. (10/2020)

Джон включил в комплект универсальную розетку на 40 контактов, на которую можно установить устройства с 8, 14, 20 и 28 контактами. Он также добавил универсальный кварцевый генератор с выходами 1, 2, 4, 8 и 16 МГц для синхронизации микросхем. Также имеется стандартный 6-контактный разъем ICSP и пользовательский светодиод, подключенный к контакту MOSI.
от Джона П.

alexxlab

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

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