Меню

Программатор юсбасп своими руками

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

В данной статье мы опишем „шаг за шагом” этапы изготовления USBasp программатора для микроконтроллеров AVR. В отдельных статьях приведем описание установки драйверов для операционных систем Windows XP и Windows 7 (x64/x86). В конце поста размещена ссылка с необходимой документацией для изготовления программатора USBasp своими руками.

Программатор USBasp, благодаря своей простоте в изготовлении и использовании недорогих и широкодоступных элементов, стал очень популярным среди радиолюбителей. Его параметры работы не уступают профессиональным и дорогим программаторам микроконтроллеров AVR.

Основные характеристики программатора USBasp

  • Работает с несколькими операционными системами – Linux, Mac OS X и Windows – включая Windows 8!
  • Не требует внешнего питания.
  • Умеет программировать со скоростью вплоть до 5kB/s
  • Есть вариант (Switch 2) снижения скорость программирования – для процессоров с кварцем меньше 1,5 Мгц
  • Обеспечивает напряжение для программирования (Switch 1) 5 вольт
  • Указание работы программатора с помощью светодиода

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

  1. Выбор схемы/рисунка печатной платы
  2. Перенос рисунка печатной платы на фольгированный стеклотекстолит
  3. Травление печатной платы в растворе хлорного железа
  4. Сверление отверстий
  5. Монтаж элементов (пайка)
  6. Программирование Atmaga8 программатора
  7. Подключение программатора к компьютеру
  8. Установка драйверов – Windows XP, Windows 7
  9. Выбор программы с поддержкой USBasp

Существует много версий USBasp программатора, но все они основаны на главной схеме, автором которой является Thomas Fischl. Прошивка микроконтроллера программатора также является его авторством.

Оригинальная схема программатора:

В данном случае за основу была выбрана оригинальная схема. Поскольку использование перемычек в оригинальной схеме не совсем удобно, было принято решение использовать DIP переключатели. Так же были изменены некоторые значения резисторов.
Более того, в оригинальной схеме линии TxD и RxD выведены на разъем ISP, хотя это не нужно (точнее не используются на практике).

Ниже приведена схема с внесенными изменениями:

Строительство USBasp программатора

Существует много версий печатной платы данного программатора, некоторые можно найти на официальном сайте USBasp. Однако, была сделана своя на основе выше представленной схемы.

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

Ниже результат печатной платы:

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

Список элементов используемых в USBasp программаторе:

  • R1: 10к
  • R2: 180
  • R3: 100
  • R5, R6: 68
  • R7: 2к2
  • C1, C2: 22п
  • C3: 10мк
  • C4: 100н
  • LED1: Красный светодиод на 20мА
  • LED2: Зеленый светодиод на 20мА
  • D2, D3: стабилитроны на 3,6В
  • X1: Разъем USB, тип B
  • SV1: Гнездо под разъем IDC-10
  • Q1: Кварц 12МГц, корпус HC49-S
  • SW1: Dip переключатель трехпозиционный
  • IC1: Atmega8 ( ПРИМЕЧАНИЕ: Не следует использовать микроконтроллер Atmega8 — PU из-за его ограничение максимальной тактовой частотой до 8 МГц!)
Читайте также:  Ремонт заливного шланга стиральной машины своими руками

Перенос рисунка печатной платы USBasp программатора на стеклотекстолит выполнен с помощью метода ЛУТ (лазерно-утюжной технологии). Как это делать описывать не будем, поскольку данной информации в сети много.

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

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


После завершения процесса травления необходимо удалить тонер ацетоном.

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

Готовые к печати (в формате PDF) рисунок печатной платы находится в конце статьи. Вы также можете найти несколько вариантов на официальном сайте проекта.

Первый запуск USBasp программатора

Теперь, когда все детали спаяны, остается только «прошить» микроконтроллер Atmegę8 самого программатора. Для этого нужен отдельный программатор, это может быть, например, STK 200 (LPT порт), STK500 и т. д. LPT программатор подключается к USBasp через разъем IDC-10.

Обратите внимание, что распределение пинов в разъеме оригинального программатора (USBasp) находится справа, в то время как в версии, описываемой в этой статье – слева:

Распределение, показанное на рисунке справа, соответствует тем, которые применяет компания Atmel в своих оригинальных программаторах. Такое распределение уменьшает риск возникновения помех во время программирования в случае применения длинных проводов от программатора к контроллеру, так как каждая сигнальная линия экранирована массой, кроме MOSI.

На время программирования включите режим SELF путем переключения DIP переключателя № 3 в положение ON. Благодаря этому появляется возможность запрограммировать Atmega8. После завершения программирования, положение переключателя (3) должна быть переведено в состоянии OFF.

Последнюю версию прошивки можно скачать с официального сайта. Рекомендуем версию для Atmega8, которая находится в архиве: usbasp.2011-05-28.tar.gz.

Читайте также:  Ремонт двухтактного двигателя триммера своими руками

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

  • # для Atmega8: HFUSE=0xC9 LFUSE=0xEF
  • # для Atmega48: HFUSE=0xDD LFUSE=0xFF

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

Установка драйверов USBasp программатора

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

  • Установка драйверов для программатора USBasp под Windows XP
  • Установка драйверов для программатора USBasp Windows 7 x64/x86

Программы для работы программатора USBasp

Самой популярной программой, поддерживающей программатор USBasp, это консольная программа AVRdude. Так же существует множество производных программ, использование которых намного удобнее. Они представлены в статье Сравнение программ для поддержки программатора USBasp.

Скачать прошивку, рисунок печатной платы и драйвер USBasp программатора (unknown, скачано: 2 691)

Источник

Изготовление и настройка программатора USBASP

Здравствуйте, уважаемые коллеги SW19 и просто те, кому интересна электроника.
Эта статья будет посвящена изготовлению программатора USBASP своими руками. Собрать его решил просто из спортивного интереса, так как детали давно лежали и заняться было не чем. Он предназначен для прошивки микроконтроллеров фирмы Atmel. Схема проста, как 3 копейки и требует только внимательности и аккуратности. Я не стал мудрствовать и нашёл схему в интернете:

По ней и будем собирать наш программатор.
Там же брал и все файлы для изготовления программатора. Продолжим дальше. Использовать будем микроконтроллер (далее МК) Atmega8 – 16PU, можно Atmega8A.

Печатную плату я переделал под корпус, который был в наличии у меня. Заказывал его на Али.
Вот ссылка, где брал: http://ru.aliexpress.com/item/New-Plastic-Electronic-Project-Box-100x60x.
Изготавливать печатную плату будем по технологии ЛУТ. Что это такое описывать тут не буду, так как в интернете полно статей на эту тему. Переносим рисунок печатной платы на текстолит.
У меня получилось как- то так:

Травим наше творение в хлорном железе:

Тогда я ещё не знал про перекись водорода, лимонную кислоту и соль, ну да ладно. Делаем так, как знаем.

Получаем такой результат:

Сверлим отверстия. Я сверлил моторчиком с латунной цангой. Тоже брал с Али. Кому интересно, вот ссылка на сей девайс:
http://ru.aliexpress.com/item/12V-Motor-0-5-3mm-Small-Electric-Drill-Bit.

Потом лудим обычным паяльником, предварительно покрыв нашу плату ЛТИ-120.

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

Читайте также:  Ремонт акпп хонда аккорд своими руками

Список деталей для нашего программатора:

МК Atmega8 – 16PU 1шт.
Панелька под МК DIP 28 1шт.
Кварцевый резонатор на 12 Мгц 1шт.
Стабилитрон BZV85C3V6(1N4729A) 2шт.
Резистор 10 Ком 1шт.
Резистор 68 ом 2шт.
Резистор 390ом 2шт.
Резистор 270 Ком 1шт.
Резистор 1,5 Ком 1шт.
Конденсатор 18 пф 2шт.
Конденсатор 100 нф 1шт.
Конденсатор 10 мкф 16в 1шт.
USB разъём USBB-1J 1шт.
Разъём ISP 10 штырей 1шт.
Джампер 3шт.
Светодиод красный 1шт.
Светодиод зелёный 1шт.

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

Далее по возрастающей. Последними запаиваем разъёмы, панельку под МК, светодиоды, кварцевый резонатор.

В итоге получаем вот такой вот вид:

Теперь прошьём наш МК. Мой компьютер не имеет LPT и COM портов, поэтому будем прошивать USB программатором. В моём случае это TL866CS, брат-близнец нашего WizardProg 87. Брал его тоже на Али, но ссылка, к сожалению не сохранилась.

Подключаем программатор к компьютеру. Запускаем программу для работы с программатором.
Она от WizardProg 87, полностью русифицирована и полностью дружит с нашим китайским девайсом.

Выбираем наш МК из списка. В данном случае это Atmega8A.

Нажимаем на кнопочку «Размещение ИМС», для того, чтобы посмотреть, как установить наш МК в панель программатора:

И устанавливаем наш микроконтроллер:

Выбираем прошивку, которую будем записывать в память МК:

Выставляем фьюзы так, чтобы получилось как у меня на фото, смотрим, где обведено красным маркером:

Будьте внимательны при настройке фьюзов! В разных программаторах они могут быть инверсными! Это значит, что там где у меня стоит галочка, в Вашем может её и не быть! Это важно! Неправильная настройка фьюзов может привести к полному залочиванию МК!
Далее прошиваем нашу Atmega8 – 16PU.

Проверяем наш МК программатором на наличие ошибок после записи прошивки, так называемая варификация:

Всё успешно прошилось.

Теперь собираем наш программатор и проверяем. Подключаем его к ПК через кабель USB.
Ставим драйвера.

У меня всё получилось с первого раза. Далее собираем всё в корпус. Где его взять – написано в самом начале статьи. И оформляем, чтобы было понятно, что куда подключать.

Вид готового программатора, подключённого к ПК.

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

Источник