Usbasp программатор: USB AVR программатор для микроконтроллеров ATmega, ATtiny

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

 

Модуль 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 В.

USBasp программатор AVR микроконтроллеров делаем сами

В инете сказано, что USBasp — один из наиболее простых для повторения AVR USB программаторов. + требует минимум внешних компонентов, имеет несколько готовых вариантов разводки печатной платы и оболочек для программирования, а также может работать под Linux и MacOS.

То что нужно! Делаем )))

Процесс изготовления

1. Нашел схемку программатора на контроллере Mega8. Требуется минимум навестных элементов


2. Модифицировал печатную плату под свой корпус. Пришлось немного попотеть, чтоб впихнуть в корпус от сплиттера в одну линейку и МК, и USB-разъем и IDC-10. Результат превзошел мои ожидания )

3. Переносим рисунок с чудо-бумаги на плату. Дорожки немного расплылись — не беда. Исправим это с помощью иголки (булавки, или еще чего острого).

4. Процесс травления уже позади. Плата промыта и просушена.

5. Стираем растворителем тонер — получаем готовые дорожки для будущего устройства

6. Далее слесарно-монтажные работы — пилим, сверлим, точим, лудим (последовательность выбирайте сами)

7. Получилась компактная плата, пока еще без элементов.

8. Пичкаем плату нужными элементами. Пока без светодиодов и разъем IDC-10 слишком длинный (торчит из корпуса)

9. Выпаиваем Г-образный IDC-10 разъем. Вместо оплетки для лужения (и прочих премудростей) использовал обычный многожильный провод. Получилось аккуратно и быстро )))

10. Припаиваем SMD-компоненты. Вид со стороны дорожек. Все делалось паяльником на 60Вт с жалом 5мм в диаметре. Таким нужно еще наловчиться…

11. Не все резисторы получилось перевести на SMD. Вид со стороны компонентов.
Как видно, контроллер — USB — IDC-10 плотно расположены… Кварц взял обычный, благо высота корпуса позволяет.

12. А вот и корпус, куда будет помещен программатор. Очень полезная штука )

13. Устройство благополучно внедрено в «шкурку сплиттера». Компактно вышло.

14. Размер платы по сравнению с 5 рубленными «монетками»

16. Конечный итог…

Доработанная печатная плата USBasp программатора: СКАЧАТЬ в формате Lay [13,91 Kb] (cкачиваний: 413)
Программирование микроконтроллера Mega8
1. Прошиваем микроконтроллер с помощью этого программатора:
Простой LPT программатор AVR микроконтроллеров (5-ть проводков)
Заливаем файл прошивки под названием «usbasp.atmega8.2007-10-23.hex» из архива в конце статьи…

Подключаем к программатору адаптер для программирования микроконтроллеров.


Данные для самостоятельного изготовления можно взять здесь…

Печатная плата адаптера в формате lay для Sprintlayout [12,78 Kb] (cкачиваний: 681)


При подключении USB будет постоянно светиться зеленый (красный) светодиод

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

1. Можно было запрограммировать и в самом USBasp программаторе, подключив к нему простой программатор согласно распиновке. Если все собрано и запрограммировано верно, то устройство при подключении к ПК определится и «попросит» установить двайвер.


2. На что ему вежливо ответим выбрав папку со скаченными и разархивированными двайверам

3. Драйвера успешно установятся, если схема собранна верно и МК тоже прошит верно.

4. В диспетчере устройств определится программатор как: LibUSB-Win32 Device.
Радуемся, и тестируем )

Проверка работоспособности программатора

1. В качестве програмки использовал avrdude в оболочке Sinaprog1.5.5.10.
Можно использовать и приложенное к архиву оболочкуUSBASP_AVRDUDE_PROG
Для проверки доступа к Attiny13A привожу пошагово такую инструкцию. Контроллер опознан, можно заливать прошивку в Attiny13A .


Необходимые данные для повторения устройства находятся в этом архиве:

Прошивка, программа, печатка, драйвер [992,87 Kb] (cкачиваний: 1285)

Всем удачи!

USBASP — Программатор AVR ISP (синий)

USBasp — внутрисхемный USB-программатор для контроллеров Atmel AVR. Он просто состоит из ATMega88 или ATMega8 и пары пассивных компонентов. Программатор использует USB-драйвер только для прошивки, специальный USB-контроллер не требуется. USBasp — недорогой программатор для микроконтроллеров AVR. Он использует чисто программную реализацию протокола связи USB и может быть легко использован с ноутбуками.

Особенности

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

В Linux и MacOS X драйвер ядра не требуется.Для Windows требуется драйвер для USBasp:
usbasp-windriver.2011-05-28.zip (70 КБ)

Программатор будет работать с широким спектром микроконтроллеров Atmel AVR

  1. Мега серия
  2. ATmega8 ATmega48 ATmega88 ATmega168 ATmega328
  3. ATmega103 ATmega128 ATmega1280 ATmega1281 ATmega16
  4. ATmega161 ATmega162 ATmega163 ATmega164 ATmega169
  5. ATmega2560 ATmega2561 ATmega32 ATmega324 ATmega329
  6. ATmega3290 ATmega64 ATmega640 ATmega644 ATmega649
  7. ATmega6490 ATmega8515 ATmega8535
  8. Крошечная серия
  9. ATtiny12 ATtiny13 ATtiny15 ATtiny25 ATtiny26
  10. АТтини45 АТтини85 АТтини2313
  11. Классическая серия
  12. АТ90С1200 АТ90С2313 АТ90С2333 АТ90С2343 АТ90С4414
  13. АТ90С4433 АТ90С4434 АТ90С8515
  14. АТ90С8535
  15. CAN серии
  16. АТ90КАН128
  17. Серия ШИМ
  18. АТ90ПВМ2 АТ90ПВМ3
  • 1 устройство USBasp
  • 1 ленточный кабель

Драйвер для Windows можно найти в разделе загрузок.

Программирование микроконтроллера AVR — программатор USBASP — Robo India || Учебники || Изучите Ардуино |

Руководство по использованию USBASP Programmar для записи шестнадцатеричного файла в микроконтроллер AVR.

Введение: Программист Robo India USBASP.

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

Важные особенности:

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

Установка:

Установите USBASP как простое USB-устройство.

Скачать : Драйверы 32 и 64 бит

Вот замечательное руководство по установке USBASP на Windows 8. нажмите здесь

Загрузка шестнадцатеричного файла в микроконтроллер AVR:

Для передачи шестнадцатеричного файла на контроллер требуется программное обеспечение для доступа к USBASP. В Интернете доступно множество программ. Программное обеспечение, которое мы находим простым в использовании со всеми функциями, — это Prog ISP .

Скачать: 

Примечание: устанавливать Prog ISP не нужно, просто разархивируйте файл и щелкните исполняемый файл progisp.exe , чтобы запустить программу.

Настройка оборудования:

Подключите USBASP к плате микроконтроллера AVR с помощью 6-контактных разъемов, где 5 В необязательно, если ваша плата уже питается от внешнего источника 5 В, снимите перемычку (вкл./выкл. vcc).

Устранение неполадок:

Prog ISP покажет ошибку в случае:

  1. Питание не подается на целевой контроллер.
  2. неправильное подключение к целевому микроконтроллеру.
  3. USBASP не обнаружен.

Примечание: держите перемычку (J1) всегда подсоединенной.

Начало работы с программой ISP:
  • Выберите чип: Выберите микроконтроллер для загрузки шестнадцатеричного файла.
  • Загрузить Flash:  Эта вкладка используется для выбора шестнадцатеричного файла. Нажмите на эту вкладку, чтобы открыть окно просмотра и выбрать шестнадцатеричный файл.
  • Окно задач:  Выберите операцию, которую хотите выполнить. Основные операции, необходимые для записи шестнадцатеричного файла, показаны выше.
  • Авто:  Нажмите на эту вкладку, чтобы начать запись шестнадцатеричного файла вместе со всеми операциями, отмеченными в поле задачи.
  • Предохранитель:  Эта вкладка используется для открытия окна Предохранитель , как показано ниже, где вы можете прочитать или записать нижнее и верхнее значения предохранителей.
 Шаги для загрузки шестнадцатеричного файла:
  1. Установить программатор USBASP.
  2. Подключить оборудование.
  3. Выберите микроконтроллер в ProgISP.
  4. Загрузить шестнадцатеричный файл.
  5. Щелкните вкладку Авто, чтобы передать код.
Учебники по теме:

Загрузка загрузчика Arduino в микросхему AVR

Если у вас есть какие-либо вопросы, напишите нам по адресу  [email protected]

С уважением и благодарностью
Команда разработчиков контента
Robo India
http://roboindia.ком

Программатор USBasp AVR | ElectroPeak

Описание
Программатор AVR и 8051 ISP — недорогой программатор на базе USB. Прост в использовании, работает с AVRDude и тщательно протестирован на рабочем столе Windows, Linux. Это программатор ISP (внутрисистемный программатор), поэтому вы можете запрограммировать целевой микроконтроллер, не снимая его с макетной платы.
USBISP — это устройство, которое используется для программирования микроконтроллеров с возможностями ISP.На одном конце есть USB-порт, а на другом — разъемы ISP. Например, первое устройство, которое вы видите, это USBASP. Второй — AVRISP.
Внутрисистемное программирование (ISP), также называемое внутрисхемным последовательным программированием (ICSP), представляет собой возможность программирования некоторых программируемых логических устройств, микроконтроллеров и других встроенных устройств, когда они установлены в полной системе, а не требует чипа. программируется перед установкой в ​​систему.
USBasp — это адаптер ICSP, который позволяет устанавливать новые загрузчики и микропрограммы на обычные микроконтроллеры AVR, например, используемые в платах, совместимых с Arduino.

Работает на нескольких платформах. Linux, Mac OS X и Windows тестируются.
Никаких специальных контроллеров или компонентов SMD не требуется.
Скорость программирования до 5Кбайт/сек. Опция
SCK для поддержки целей с низкой тактовой частотой (< 1,5 МГц).
Запланировано: последовательный интерфейс для цели (например, для отладки)
Позволяет читать или записывать EEPROM микроконтроллера, прошивку, плавкие биты и биты блокировки
С питанием и программированием двух индикаторов
Встроенная защита от перегрузки по току
Поддержка 5 В и 3.Источник питания 3 В для целевой платы

Особенности
Встроенный чип ATMega8(L)
Индикаторы питания и состояния
Источник питания USB-порта
Встроенная защита от короткого замыкания, защита от перегрузки по току
Возможность питания целевой платы (5 В/ 3,3 В)
Поддерживает чипы S51 и AVR
Быстрый и стабильный Стандартный интерфейс IDC 10PIN
Подходит для 32-битных / 64-битных компьютерных систем WIN8.1 / 8/7 / XP.
Нет необходимости устанавливать драйверы
PIN-код: 10 PIN
Длина кабеля: 20 см
Размер модуля: 65 мм х 22 мм х 12 мм

Поддерживаемые чипы:
51 серии: AT89S51, AT89S52 ,, AT89S53, AT89S8252
AVR Series: Attiny12 (L), ATTiny13 (V), ATTiny15 (L), ATTiny24 (V), ATTiny25 (V), ATTiny26 (L), ATTiny2313 (V), ATTiny44 (V), ATTiny45 (V), ATTiny84 (V), ATTiny85 (V), AT90S2313 (L), AT90S2323 (L), AT90S2343 (L), AT90S1200 (L), AT90S8515 (L), AT90S8535 (L), ATMEGA48 (V), ATMEGA8 (L), ATMEGA88 (V), ATMEGA8515 (L), ATMEGA8535 (L), ATMEGA16 (L), ATMEGA162 (V), ATMEGA163 (L), ATMEGA164 (V), ATMEGA165 (V), ATMEGA168 (V), ATMEGA169 (V), ATMEGA169P (V), ATMEGA32 (L), ATMEGA324 (V), ATMEGA325 (V), ATMEGA3250 (V), ATMEGA329 (V), ATMEGA3290 (V), ATMEGA64 (L), ATMEGA640 (V), ATMEGA644 (V), ATMEGA645 (V), ATMEGA6450 (V), ATMEGA649 (V), ATMEGA6490 (V), ATMEGA128 (L), ATMEGA1280 (V), ATMEGA1281 (V), ATMEGA2560 (V), ATMEGA2561 (V), AT90CAN32, AT90CAN64, AT90CAN128, AT90PWM2 (B ), AT90PWM3(B) и т.д.

Программатор USBasp AVR, программа для микроконтроллеров Atmel AVR

Описание

Эти программаторы 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. Полный список доступен на вкладке характеристики.Программатор также будет работать с различным программным обеспечением, включая

.

В комплекте с программатором идет 10-контактный кабель ISP, как показано на основном фото. Программатор идеально подходит для использования с нашей отладочной платой и комплектами AVR.

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

ссылки

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

Количество контактов/проводников

10

Размер 70 x 20 x 9 мм
Поддерживаемое ПО AVRDude 5.2 или выше
Поддерживаемые микроконтроллеры Мега Серия
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 ATMEGA164A ATMEGA164A ATMEGA164A ATMEGA164P ATMEGA164PA ATMEGA164PA
ATMEGA169A ATMEGA169A 902 902 92 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 6 ATMEGA6490A ATMEGA6490P ATMEGA8515 ATMEGA8515 ATMEGA8535
Tiny Series
Attiny12 90 292 ATtiny13 ATtiny13A ATtiny15 ATtiny25
ATtiny26 Attiny45 ATtiny85 ATtiny2313 ATtiny2313A
серии Classic
AT90S1200 AT90S2313 AT90S2333 AT90S2343 AT90S4414
AT90S4433 AT90S4434 AT90S8515
AT90S8535
CAN серии
AT90CAN128
Серия ШИМ
AT90PWM2 AT90PWM3
Программатор

USBasp для Atmel AVR v1.0

Введение

Этот проект направлен на разработку и создание собственного USBasp, который можно использовать для внутрисхемного программирования микроконтроллеров Atmel AVR. Этот проект/программатор совместим со многими микроконтроллерами серии Atmega с логикой 5V. Проект с открытым исходным кодом Томаса Фишла. Приведенный ниже дизайн основан на его работе и вкладе. Идея этой версии USBasp состоит в том, чтобы спроектировать ее с использованием компонентов THT и при этом сохранить малый форм-фактор. В этом конкретном варианте разъем ISP представляет собой 6-контактный разъем, который находится непосредственно на платах Arduino, таких как Arduino UNO, MEGA, Nano и многих других платах разработки Atmega.Интерфейс USB представляет собой разъем USB Micro B, который поддерживает любой кабель Micro USB.

Основные преимущества использования USBasp:

  1. Сохраняет флэш-память, потребляемую загрузчиком
  2. Выполнение основной программы начинается сразу после включения питания микроконтроллера, задержки загрузчика нет
  3. Последовательное USB-подключение к Arduino постоянно свободно для последовательной связи
USBasp: внутрисхемный программатор для компоновки печатной платы микроконтроллера Atmel AVR

Обязательное условие

Для этого проекта полезно иметь базовые знания в области проектирования печатных плат и пайки компонентов.Это не очень сложный проект. Базовое понимание электроники также полезно для определения компонентов и правильной их сборки.

Спецификация оборудования

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

Спецификация программного обеспечения

Описание оборудования

АВР Atmega8

ATmega8 — это маломощный 8-разрядный микроконтроллер CMOS, основанный на архитектуре AVR RISC.Выполняя мощные инструкции за один такт, ATmega8 достигает пропускной способности, приближающейся к 1 MIPS на МГц, что позволяет разработчику системы оптимизировать энергопотребление в зависимости от скорости обработки.

ATmega8 обеспечивает следующие функции: 8 кбайт внутрисистемно программируемой флэш-памяти с возможностью чтения и записи, 512 байт EEPROM, 1 кбайт SRAM, 23 линии ввода-вывода общего назначения, 32 рабочих регистра общего назначения, три гибких Таймер/счетчики с режимами сравнения, внутренними и внешними прерываниями, последовательный программируемый USART, байтовый двухпроводной последовательный интерфейс, 6-канальный АЦП (восемь каналов в корпусах TQFP и QFN/MLF) с 10-битной точностью, программируемый сторожевой таймер с внутренним генератором, последовательным портом SPI и пятью программно выбираемыми режимами энергосбережения.Режим ожидания останавливает ЦП, позволяя
SRAM, таймеру/счетчикам, порту SPI и системе прерываний продолжать работу.

  • Блок-схема AVR Atmega8
  • Схема выводов AVR Atmega8
  • 3D визуализация USBasp
  • 3D визуализация USBasp

Описание программного обеспечения

Кикад

KiCad (произносится как «Key-CAD») — это бесплатный программный пакет для автоматизации проектирования электроники (EDA). Это облегчает проектирование схем электронных схем и их преобразование в проекты печатных плат.Он включает в себя интегрированную среду для создания схем и проектирования компоновки печатных плат, а также включает в себя инструменты для создания списка материалов, иллюстраций, файлов Gerber и трехмерных изображений печатной платы и ее компонентов.

Задиг

Zadig — это приложение для Windows, которое устанавливает стандартные драйверы USB, такие как WinUSB, libusb-win32/libusb0.sys или libusbK, для облегчения доступа к USB-устройствам.

Это может быть особенно полезно в случаях, когда:

  • необходимо получить доступ к устройству с помощью приложения на основе libusb
  • необходимо обновить универсальный драйвер USB
  • необходимо получить доступ к устройству с помощью WinUSB

Примечание. использует libusb, libusb-win32 или libusbK.

АВРДУДЕ

AVRDUDE — это утилита для загрузки/выгрузки/манипулирования содержимым ПЗУ и ЭСППЗУ микроконтроллеров AVR с использованием метода внутрисистемного программирования (ISP).

Он имеет интерфейс командной строки для загрузки и выгрузки функций / двоичных файлов (включая обработку байтов предохранителей). Поддерживает широкий спектр оборудования для программирования, от дешевых разъемов ISP, которые подключают интерфейс ISP AVR напрямую к параллельному порту компьютера (без дополнительных схем) или последовательному порту (необходимы некоторые дополнительные схемы), более продвинутые адаптеры ISP с использованием микросхемы буфера/драйвера ( например, 74HC373), вплоть до (более сложных) последовательно подключенных программаторов, таких как устройства ISP в стиле AVR910, плата Atmel STK500 и Atmel JTAG ICE mkII.Большинство популярных адаптеров поставляются предварительно определенными, добавить новый адаптер параллельного порта так же просто, как отредактировать файл конфигурации (перекомпиляция не требуется).

AVRDUDE также поддерживает USBasp в качестве устройства программирования.

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

Схема

Приведенная ниже схема проста и не содержит сложных схем.Сначала схема разрабатывается в KiCad. Файлы доступны для скачивания в конце страницы.

Основными компонентами конструкции USBasp являются микроконтроллер Atmega8, разъем USB и разъем ISP.

Поскольку у Atmega8 нет выделенного периферийного USB-устройства, контакты PD2, PB0, PB1 перепутаны для эмуляции связи по USB. Первоначальный дизайн включает 10-контактный разъем ISP с двумя контактами для UART Tx и Rx, но он практически не используется, поэтому на этой схеме эти два контакта удалены и используется 6-контактный ISP.

USBasp: внутрисхемный программатор для Atmel AVR MCU PCB Schematic

Схема печатной платы

Разводка печатной платы полностью разработана в KiCad. В KiCad также доступен 3D-вид/рендеринг печатной платы. Программатор USBasp предназначен для повышения удобства использования, уменьшения занимаемой площади и эстетики.

Заключение

Этот конкретный проект позволяет узнать о конструкции печатной платы, выборе компонентов, стоимости продукта, планировании и многом другом. Лучшее в этом проекте то, что он поощряет культуру DIY и Maker, что само по себе удивительно.Я призываю всех сделать этот проект и сделать свои собственные модули и доски для своих проектов.

Объем улучшения

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

Скачать

Спасибо за чтение этого проекта, я очень ценю ваше время и усилия.

Крошечный успех: перепрошивка USBasp

Две недели назад я писал о своем эксперименте с ATTiny10. 12-мегагерцовый 8-битный микроконтроллер, достаточно маленький, чтобы его можно было спутать с тучным муравьем. К сожалению, мне не удалось запрограммировать этого крошечного парня, поэтому на этой неделе я продолжаю свой небольшой квест по перепрошивке.

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

Чтобы проверить, были ли это причиной, я припаял ATTiny10 и WS2812 2020 к коммутационной плате SOP16. Это позволяет мне провести некоторое тестирование на макетной плате. Это также значительно упростило пайку, снизив риск перегрева компонентов.

К сожалению, это не решило проблему. Я так и не смог загрузить прошивку на ATTiny. Пришло время переключить внимание на следующего подозреваемого: флешер USBasp.

Для программирования ATTiny10 я попытался использовать прошивальщик USBasp, купленный на AliExpress.Я использовал этот флешер для программирования своих электрокарт, так что я знаю, что он работает. Единственная разница между ATTiny85 электрокарты и ATTiny10 заключается в том, что последний использует протокол TPI вместо протокола ISP для программирования.

После небольшого сеанса Google я нашел веб-сайт проекта USBasp. Помимо некоторых интересных технических деталей, этот веб-сайт также предлагает загрузку прошивки. И тут я заметил, что поддержка TPI была доступна только в самой новой прошивке. Может в моем дешевом китайском USBasp была какая-то старая прошивка? Время для обновления!

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

Затем я использовал Arduino Uno в качестве программатора. Для этого я загрузил скетч ArduinoISP в Uno. Этот скетч доступен в разделе скетчей «Примеры» среды разработки Arduino IDE. Затем я подключил USBasp к Arduino, используя следующую конфигурацию контактов:

.
  ARDUINO --- USBasp

 5В ------- 2 (VCC)
ЗАЗЕМЛЕНИЕ ------- 10 (ЗЕМЛЯ)
 13 ------- 7 (СКК)
 12 ------- 9 (МИСО)
 11 ------- 1 (МОСИ)
 10 ------- 5 (СБРОС)
  

(Обратите внимание, что синий индикатор USBasp не загорится после его подключения.Я вернусь к этому позже…)

Чтобы проверить, работает ли соединение, я использовал следующую команду в своем терминале macOS:

  avrdude -c avrisp -P /dev/cu.usbmodem14201 -b 19200 -v -p m8
  
  • avrdude — это утилита для загрузки/выгрузки/управления содержимым ПЗУ и EEPROM микроконтроллеров AVR.
  • Флаг -c указывает, какой программатор используется. В данном случае это Arduino usni, настроенный как программатор avrisp .
  • С помощью -P я указываю, к какому порту подключена Arduino Uno. В моем случае это порт /dev/cu.usbmodem14201 , но в вашем случае он может иметь другое имя/путь.
  • Далее я указываю скорость связи с помощью флага -b . В данном случае 19200 бод.
  • Чтобы получить обратную связь, я включаю подробный режим с помощью -v .
  • И последнее, но не менее важное: я указываю тип AVR, который я хочу запрограммировать.Так как мой USBasp имеет ATMEGA8A, я указываю часть m8 , используя -p . Если вы опустите флаг -p, вы получите список всех поддерживаемых AVR.

После выполнения этой команды avrdude попытается связаться с микроконтроллером USBasp с помощью Arduino avrisp.

Отлично! Это работает! Пришло время заняться настоящей работой: прошить USBasp новой прошивкой. Сначала я скачал последнюю версию прошивки по адресу: http://www.fischl.de/usbasp. В данном случае последняя прошивка была usbasp.2011-05-28.tar.gz . После загрузки и извлечения файла (просто дважды щелкнув его в поисковике macOS) я перешел к папке usbasp.2011-05-28/bin/firmware , которая содержит нужную мне прошивку: usbasp.atmega8.2011-05. -28.hex .

Загрузка прошивки на USBasp почти такая же команда, как и раньше:

  avrdude -c avrisp -P /dev/cu.usbmodem14201 -b 19200 -v -p m8 -U flash:w:usbasp.atmega8.2011-05-28.hex
  

В этом случае я добавил флаг -U для выполнения операции с памятью:

  • Я хочу выполнить операцию на flash части микроконтроллера.
  • Я хочу записать, поэтому указываю флэш-память записи с флагом w .
  • И самое главное: я определяю имя шестнадцатеричного файла прошивки (который находится в текущей папке)

Нажимаем Enter и надеемся на лучшее…

Да! Кажется, это сработало! 🙂 Раз уж после прошивки загорелся синий светодиод, то действительно чувствуется, что произошло что-то хорошее. Светодиоды всегда улучшают ситуацию, верно?!

Теперь, самое главное… не будьте как я: не забудьте открыть/отключить самопрограммирующуюся перемычку JP2 на задней панели USBasp! Когда он подключен/замкнут, ESPasp не сможет функционировать.

Итак, после повторного подключения ATTIny10 к USBasp пришло время самой интересной части. Сможет ли Arduino IDE прошить ATTiny10 с помощью ATTiny10Core?

Как насчет того, чтобы просто выбрать программатор USBasp и нажать кнопку «Загрузить»?

ДА! Это сработало! 🙂

Если вы хотите узнать больше об этом процессе перепрошивки, обязательно прочитайте отличный пост Роджера Кларка на эту тему…

Для меня пришло время начать работу над прошивкой, чтобы заставить работать этот светодиод WS2812 2020.Не пропустите, поэтому следите за моим блогом или подписывайтесь на меня в Twitter или Instagram .

Универсальный адаптер для Arduino/ATmel USBasp программатор

Некоторое время назад я изготовил адаптер сокета для своего USBasp программатора для использования с восьмиконтактными микроконтроллерами ATtiny85 DIP. Для его создания я использовал плату прототипа RadioShack Catalog #: 276-150, 8-контактный разъем, несколько контактов и проводов. Просто, легко и это делает работу. Кстати, программатор Betemcu.cn USBasp легко доступен на eBay менее чем за 9 долларов, включая почтовые расходы.Он использует дизайн Томаса Фишла и работает безупречно.

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

Я собирал детали через eBay, чтобы минимизировать расходы. Наиболее важным был 40-контактный разъем ZIF для больших или тонких микросхем. Это стоило 2,95 доллара США, включая доставку.Я купил его у продавца eBay grand_sky. Мои однорядные штыревые полосы 1X40 стоят по 20 центов каждая (1,95 доллара за 10) у продавца eBay в Гонконге wulor, но многие люди продают их. Мои 1 × 40-контактные 2,54-мм однорядные штыревые разъемы стоили 32 цента каждый. Материал для моей односторонней печатной платы был заказан у продавца eBay abcfab по 52 цента за плату размером 4X6 дюймов.

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

Макет печатной платы состоит из нанесения на ламинированную медью плату кислотоупорного рисунка, представляющего участки, которые должны удерживать медь после травления в кислотном растворе (травителе).Участки медной ламинированной плиты, подвергшиеся воздействию травителя, растворятся, а участки под кислотостойким рисунком останутся нетронутыми. Приведенный ниже макет позитива напечатан в перевернутом виде на специальной бумаге, которая легко высвобождает тонер при нагревании. Тонер для лазерных принтеров представляет собой тонкоизмельченный полимерный пластик, сплавляемый с бумагой под действием тепла. Хитрость «метода с тонером» заключается в том, чтобы заставить тонер переноситься с бумаги на ламинированную медью доску после ее повторного нагрева. Есть несколько бумажных растворов для «метода тонера», одни лучше других.

Независимо от типа используемой бумаги, процесс заключается в размещении позитивного лазерного отпечатка обратного изображения с касанием тонера металлической поверхности чистой ламинированной медной доски, а затем применении тепла и давления для отделения тонера от бумаги, что позволяет ему перенесите на медную ламинированную доску и приклейте к ней. В качестве источника тепла я использовал обычный утюг для одежды, хотя ламинатор, предназначенный для удостоверений личности, успешно используется с одним коммерческим продуктом. Ламинатор не будет работать с лазерными принтерами марки Brother, поскольку температура плавления тонера слишком высока для ламинатора.С лазерными принтерами марки Brother вы должны использовать утюг для одежды — , хотя , я рассматриваю утюг для зашивания ковров, продаваемый Northern Tools и Amazon, потому что он имеет прямоугольную форму и более высокую контролируемую температуру.

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

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

Вы можете получить правильный размер копии шаблона травления выше ЗДЕСЬ.

Готовая плата показана ниже.

ПРИМЕЧАНИЕ : Извлеките уроки из моей ошибки и установите гнездо ZIF так, чтобы ручка была обращена к в сторону от гнезда .

0 comments on “Usbasp программатор: USB AVR программатор для микроконтроллеров ATmega, ATtiny

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

Ваш адрес email не будет опубликован.