Site Loader

Миниатюрный 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 Программатор — USB программатор для микроконтроллеров Atmel AVR

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

— USB Программатор микроконтроллеров AVR USBASP позволит радиолюбителю получить простой, компактный и надежный программатор всех AVR (ATMEL) микроконтроллеров с режимом последовательного программирования ISP. Этот недорогой и надежный USB программатор поддерживает прошивку всего семейства ATmega и ATtiny микроконтроллеров AVR компании ATMEL. Программатор AVR USBASP подключается к USB-порту персонального компьютера или ноутбука, что очень актуально, т.к. COM-порт для программатора существует далеко не на всех современных компьютерах, и тем более на ноутбуках. Использование USB программатора avr микроконтроллеров и его функции внутрисхемного программирования ISP дают возможность быстро и многократно перепрограммировать ваше микроконтроллерное устройство в собранном виде, не отключая его питания. При этом процесс отладки программы в микроконтроллере AVR с помощью данного программатора заметно упрощается, сокращается затрачиваемое на это время

Технические характеристики USB программатора AVR:

  • Напряжение питания программатора:                                 5 В (по USB)

  • Интерфейс подключения программатора к ПК:                   USB

  • Интерфейс подключения программатора к AVR:                  ISP (внутрисхемное программирование)

  • Программатор совместим с  OS:                                           Windows 98 / 2000 / XP / Vista / 7 / Linux

  • Габаритные размеры программатора:                                  54 х 25 x 9 мм

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

AVR Программатор USBASP поддерживает все микроконтроллеры ATMEL с режимом последовательного программирования ISP (In System Programming), это все микроконтроллеры у которых есть порт SPI (Serial Peripheral Interface):

AT90S2313, AT90S2333, AT90S2343, AT90S4414, AT90S4433, AT90S4434, AT90S8515, AT90S8535, AT90CAN128, AT90CAN32, AT90CAN64, ATmega103, ATmega128, ATmega1280, ATmega1281, ATmega1284P, ATmega128RFA1, ATmega16, ATmega161, ATmega162, ATmega163, ATmega164, ATmega164P, ATmega168, ATmega168P, ATmega169, ATmega16U2, ATmega32, ATmega324P, ATmega325, ATmega3250, ATmega328P, ATmega329, ATmega3290, ATmega329P, ATmega3290P, ATmega32U2, ATmega32U4, ATmega48, ATmega64, ATmega640, ATmega644P, ATmega644, ATmega645, ATmega6450, ATmega649, ATmega6490, ATmega8, ATmega8515, ATmega8535, ATmega88, ATmega88P, ATmega8U2, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, ATtiny10, ATtiny13, ATtiny15, ATtiny2313, ATtiny25, ATtiny26, ATtiny261, ATtiny4, ATtiny4313, ATtiny44, ATtiny45, ATtiny461, ATtiny5, ATtiny84, ATtiny85, ATtiny861, ATtiny88, ATtiny9, ATmega1286, ATmega1287, ATmega162, ATmega647, ATmega647, ATmega82.

.. 

Комплектация AVR программатора USBASP: 

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

  2. Шлейф для подключения к программируемой плате, с двумя разъемами IDC10

 

Kanda — USB программатор AVR AVR ISP для внутрисистемного программирования AVR

Выбранная категория и продукт:

Программаторы-Прожигатели » В системных программистах (ISP) » Программаторы AVR ISP » AVRUSB

Безопасный платеж


  • Программатор Fast AVR ISP, USB
  • Поддерживает ISP и JTAG, включает адаптер JTAG
  • DLL с примерами программ плюс программное обеспечение командной строки
  • Несколько программаторов с одного ПК
  • Поддерживает AT90S и все новые микроконтроллеры ISPI и JTAG AVR

Подробная информация о продукте

Аксессуары к продукту

Технический паспорт продукта

Доставка в США
Авиапочта с записью: $15,00
Fedex Express: $25,00

Код заказа
AVR4USB

0003 $149.

00

В наличии

 

Сопутствующие товары

 

USB AVR ISP In System Programmer

 

  • 0 Портативный программатор AVR90

    Стартовый USB-программатор брелоков AVR

     

    AVR ISP MKII Программатор (ISP, Xmega, TDI)


    Подробная информация о продукте

    USB программатор AVR с ISP и JTAG

    AVR In System Programmer (AVR ISP) для порта USB на ПК. Упакован с дополнительными функциями для ATtiny, AT9Микроконтроллеры 0S и ATmega AVR. Этот программатор USB AVR питается от шины USB, поддерживает низкое напряжение, очень быстрый и поддерживает JTAG , а также AVR ISP. Версии для командной строки и DLL доступны бесплатно.

    Основные характеристики


    • Новая более быстрая версия — ATmega128 Программирование/проверка за 19 секунд
    • Программное обеспечение включает интерфейс JTAG и адаптер для программирования JTAG.
    • Версии DLL и командной строки доступны бесплатно — см. страницы поддержки
    • Программатор AVR с питанием от шины USB
    • Несколько AVR ISP с 1 ПК
    • Соответствует требованиям по питанию USB, включая сон
    • Поддерживает протокол USB v1.1 и Совместимость с USB версии 2.0
    • Прямые драйверы USB, а не виртуальный последовательный порт
    • Программирует микроконтроллеры AVR от 1,8В до 5В
    • Использует стандартный 10-канальный целевой интерфейс Kanda AVRISP
    • Доступен 6-сторонний адаптер ISP
    • Опция программирования AVR JTAG и адаптер в комплекте
    • Автоматический запуск программы при вставке опции
    • Загружает производственные файлы Atmel ELF
    • Редактировать предохранители на экранах предохранителей или в шестнадцатеричном формате

    Поддержка ОС Windows

    Поддерживает Windows 2000, XP, VISTA, Windows7, Windows8, Windows 10, Win11 — 32- и 64-разрядные версии.

    Windows 98 и ME поддерживаются до версии программного обеспечения v2.1.7, доступной на наших страницах поддержки. Эта версия программного обеспечения НЕ будет обновляться в будущем.
    Win 95 и более ранние версии Win98 должны работать с обновлением Microsoft USB до версии 2.1.7

    NT4 НЕ поддерживается, так как Microsoft не обновила поддержку ядра и нет доступных драйверов

    Функции программного обеспечения


    • каждый программатор AVR
    • Выберите программатор AVR ISP или JTAG из выпадающего списка
    • Полная поддержка AVR Fuse и Lockbit на удобном для пользователя экране с улучшенными значениями по умолчанию для улучшения обнаружения устройств
    • Или Редактировать предохранители как шестнадцатеричные значения
    • Буферы Flash и EEPROM с цветовой кодировкой можно редактировать в Hex и ASCII
    • Определяемая пользователем серийная нумерация во Flash или ЭСППЗУ
    • Полная поддержка контрольной суммы CR16/32, XOR 16/32
    • Гибкие возможности автоматического программирования
    • Функция сброса всплывающего окна при ошибке предотвращает игнорирование ошибок — можно отключить
    • Режим Plug and Program — программатор запускается автоматически при обнаружении новой цели, если этот режим установлен. Теперь с улучшенным интерфейсом для идентификации программиста и операции.
    • Полная проверка или только проверка страниц с данными для дополнительной скорости
    • НОВИНКА На экране источника тактового сигнала используется тип тактового сигнала, а не биты Fuse для упрощения установки правильного тактового сигнала.
    • NEW поддержка двоичных файлов, а также Intel Hex, Motorola и т. д.
    • Чтение байтов калибровки
    • Загрузить файлы ELF, включая настройки устройств, предохранителей и битов блокировки

    AVRUSB Содержимое


    • USB Программатор AVR ISP — 66 x 66 x 28 мм (2,6 х 2,6 х 1,1 дюйма)
    • 1,8 м USB A (ПК или концентратор) к Кабель USB B (программатор)
    • Кабель для программирования длиной 1 м с 10-контактным разъемом Kanda целевой интерфейс
    • Загрузка бесплатного программного обеспечения, включая все обновления
    • Адаптер интерфейса AVR JTAG

    Поддержка микроконтроллера AVR — AVR ISP


    • Старые версии AVR: AT90S2313, AT90S2323, AT990S2333, AT90S2343
    • 40021 9002 433, АТ90С8515, АТ90С8535, АТмега103
    • АТ90КАН128, АТ90КАН32, АТ90КАН64
    • АТ90ПВМ2/3, АТ90ПВМ316
    • АТ90УСБ1286, АТ90УСБ646
    • ATmega128, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1
    • ATmega16, ATmega161, ATmega162, ATmega163, ATmega164, ATmega165, ATmega168, ATmega169
    • ATmega16M1, ATmega16U2, ATmega16U4
    • ATmega2560, ATmega2561
    • ATmega32, ATmega323, ATmega324, ATmega325, ATmega3250, ATmega328, ATmega329
    • ATmega3290, ATmega32C1, ATmega32M1, ATmega32U2, ATmega32U4, ATmega32U6
    • ATmega48, ATmega64, ATmega640, ATmega644, ATmega645, ATmega6450, ATmega649
    • ATmega6490, ATmega64C1, ATmega64M1
    • ATmega8, ATmega8515, ATmega8535, ATmega88, ATmega8U2
    • ATtiny13, ATtiny1634, ATtiny167, ATtiny1634
    • ATtiny2313, ATtiny24, ATtiny25, ATtiny26, ATtiny261
    • ATtiny4313, ATtiny43U, ATtiny44, ATtiny45, ATtiny461, ATtiny48, ATtiny441
    • ATtiny84, ATtiny85, ATtiny861, ATtiny87, ATtiny88, ATtiny828, ATtiny841
    • Поддерживаются все микроконтроллеры P (PicoPower),PA, PB, V, L и A AVR.

    Поддержка микроконтроллера AVR — JTAG

    Только более новые устройства AVR ATmega с 40 или более контактами имеют интерфейс JTAG.

    • ATmega16, ATmega162, ATmega164, ATmega165, ATmega169, ATmega16U4
    • ATmega32, ATmega324, ATmega325, ATmega3250, ATmega329, ATmega3290, ATmega32U4, ATmega32U6
    • ATmega406, ATmega64, ATmega128, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561
    • ATmega640, ATmega645, ATmega6450, ATmega649, ATmega6490, ATmega640, ATmega644
    • АТ90КАН32, АТ90КАН64, АТ90КАН128
    • АТ90УСБ1286, АТ90УСБ162, АТ90УСБ646, АТ90УСБ82
    • Поддерживаются все варианты микроконтроллеров P (PicoPower), PA, PB, V, L и A AVR.

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

    6-ходовые адаптеры

    Теперь у нас есть адаптеры для преобразования стандартного 10-контактного разъема Kanda в другие 6-контактные разъемы.
    6-контактный DIL-адаптер
    6 односторонних проводов
    6-контактный разъем Micromatch
    Программатор поставляется с JTAG-адаптером

    Дополнительная информация

    Обзор серии программаторов Kanda AVR

    Руководство по схемам AVR ISP для получения схем рекомендуемых схем AVR ISP (новое окно).

    Документация

    техническое описание

        

    информация о поддержке


    Они откроются в новом окне.


     

    Информация для заказа

    Программатор USBASP AVR — Future Electronics Egypt

    Дом — Программатор USBASP AVR

    Заголовок по умолчанию — LE 85. 00


    USBasp — внутрисхемный USB-программатор для контроллеров Atmel AVR. Он основан на дизайн-проекте USBasp Томаса Фишла. Интерфейс USB достигается за счет использования процессора atmega8, а все остальное делается в прошивке.

    Прошивку можно бесплатно загрузить с встроенного USB-программатора для контроллеров Atmel AVR. Он основан на веб-сайте Томаса Фишла. Вы можете скачать драйверы для Windows отсюда, чтобы без проблем использовать их в Windows Vista и более поздних версиях. Драйвер будет работать как на 32-битных, так и на 64-битных платформах. Для Linux и Mac OS X драйвер не требуется, просто используйте AVRdude и укажите правильный порт.

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

    Особенности

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

    Рабочее ПО

    • AVRdude — версия 5.
  • alexxlab

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

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