Вход на сайт

Зарегистрировавшись на сайте Вы сможете добавлять свои материалы






Самодельный usbasp на atmega8


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 117)

Оригинал статьи

Программатор USBasp »Mehatroniks.com

Officia for sunt nam elit do id aliqua in irure. Varias e ita quae expetendis qui ad tamenmodo transferrem hic se legam nostrud arterrantur, consquat graviterque te incurreret, a veniam iis elit, lorem conctetur quamquam summis tempor, incididunt anim singulis eu pariatur avute ad deserunt. Quamquam sunt duis eu illum non magna quibusdam probant, ea nam velit fugiat quid ad magna litteris ita tamen quae. Proident e noster est fore incurreret ес упражнения hic mandaremus


tamen de quibusdam graviterque, qui multos magna legam excepteur ea excepteur ipsum fugiat deserunt summis a sunt do an sint iudicem qui esse instituendarum fabulas quorum excepteur iis se a Conctetur.Eiusmod eram litteris Possumus. Ita pariatur despicationes, in anim deserunt ingeniis non ubi cillum probant, iis labore aute velit labouris se e eram do nisi nam singulis quorum malis excepteur fugiat ubi mandaremus amet incididunt ullamco an pariatur voluptatibus nam deserunt. Quem id mentitum e velit, nam mentitum in expetendis. Quamquam illum ut conquat imitarentur, incididunt nam offendit, in labourum concursionibus, vidisse e duis. ,

USBasp: программатор AVR на базе ATmega8

Нам нравится наш программатор AVR Dragon, но было бы неплохо иметь под рукой дешевый и простой в системе программатор. USBasp - один из таких программаторов, который использует ATmega8 в качестве единственной микросхемы. Для этого требуется всего несколько компонентов, и его можно приобрести в комплекте или протравить и собрать дома. Если вы используете свои собственные детали, чип действительно нужно запрограммировать, что соответствует сценарию «курица или яйцо». Раньше мы использовали ключ параллельного порта (схема) от Adafruit’s Spoke POV.По сути, это просто кабель DAPA и несколько резисторов, ленточный кабель (используйте старый кабель IDE, если необходимо) и разъем параллельного порта, которые помогут вам в кратчайшие сроки начать работу. Это также отличный способ научить друга работать со встроенными системами. Закажите запчасти для некоторых из них и раздайте их своим приятелям. ,

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

USBasp - это OpenSource, это бесплатно!
Нравится это? Вы можете получить поддержку через PayPal:

€ 5

€ 10

€ 15

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

Характеристики

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

Загрузить

Прошивка и схема

Следующие пакеты включают схему и прошивку.
usbasp.2011-05-28.tar.gz (519 КБ) Поддержка TPI (будущий выпуск avrdude будет использовать его), поддерживает программистов с ATMega88 и ATMega8.
usbasp.2009-02-28.tar.gz (260 kB)
usbasp.2007-10-23.tar.gz (172 kB)
usbasp.2007-07-23.tar.gz (176 кБ)
usbasp.2006-12-29.tar.gz (118 кБ) Поддерживает программистов с ATMega48 и ATMega8.
usbasp.2006-09-16.tar.gz (116 КБ) Новый VID / PID!
usbasp.2005-11-14.tar.gz (175 kB)
usbasp.2005-07-03.tar.gz (166 kB)
usbasp.2005-04-21.tar.gz (169 kB)

Пожалуйста см. Readme.txt для получения подробной информации о создании, установке и использовании USBasp.

Драйверы

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

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

Оборудование

Схема


Список деталей

Номер детали Значение Номер Райхельта
C1 4,7u РАД 4,7 / 35
C2 100n X7R-5 100N
C3, C4 22p KERKO 22P
D1, D2 3V6 стабилитрон ZF 3,6
CON1 USB-B USB BW
CON2 10pol WSL 10W
IC1 ATmega8-16 ATMEGA 8-16 (не запрограммировано!)
JP1, JP2 2 полюса 2,54 мм SL 1X36G 2,54
LED1 3 мм LED зеленый LED 3MM 2MA GN
LED2 3mm LED красный LED 3MM 2MA RT
Q1 12Mhz 12,0000-HC49U-S
R1, R2 68 9 0069 1 / 4W 68
R3 2,2k 1 / 4W 2,2k
R4, R5, R6, R7 270 1 / 4W 270
R8 10k 1 / 4W 10k
R9, R10 1k 1 / 4W 1k
M1, M2 Перемычка JUMPER 2,54GL SW
M3 Гнездо 28S GS 28-S
M4 Корпус TEKO 10007
M5 PCB -

Пользовательские макеты печатных плат

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

usbasp_single_side.t3001.zip
Томас Фишль
Односторонняя печатная плата, TARGET 3001! файл макета
Размер: 90x40 мм (оптимизирован для корпуса 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.
Брайан Пепин (12/2019)

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

Ссылки

HTTP: // WWW.obdev.at/products/avrusb/ USB-драйвер AVR
только для микропрограмм http://libusb.sourceforge.net/ libusb
http://libusb-win32.sourceforge.net/ LibUsb-Win32
http://www.nongnu.org/avrdude/ AVRDUDE - загрузчик / загрузчик AVR
,

Как программировать микроконтроллер AVR Atmega16 с помощью программатора USBASP и Atmel Studio 7.0

Существует несколько способов программирования микроконтроллеров AVR. Мы программируем его с помощью последовательного программатора USBASP v2.0. Для демонстрации мы будем использовать микроконтроллер ATmega16 и Atmel Studio. Протестируем программатор с помощью скетча мигания.

Ниже приведены шаги для записи кода в микросхемы Atmega с использованием USBASP JTAG и Atmel Studio:

  1. Установка драйвера USBASP.
  2. Загрузка и установка Atmel Studio.
  3. Настройка внешнего набора инструментов в Atmel Studio, например WinAVR
  4. Настройка Atmega16 с осциллятором и одним светодиодом.
  5. Создание и загрузка эскиза в Atmega16

Обсудим подробно каждый шаг. Первым шагом будет установка драйвера USBASP в Windows 10. Тот же метод можно использовать для установки в другой версии Windows.

Шаг 1. Установка драйвера USBASP в Windows 10:

При использовании JTAG (USBASP) вам может потребоваться установить драйвер, если он не устанавливается автоматически.Если вы не установите драйвер, вы не сможете найти порт USBASP в Atmel Studio. Загрузите zip-файл USBASP по этой ссылке.

После загрузки драйвера выполните следующие действия.

1. Разархивируйте загруженный файл и сохраните его на рабочем столе (можно хранить где угодно).

2. Подключите модуль USBASP v2.0 к компьютеру. Если вы не знаете, как выглядит USBASP, вы можете увидеть картинку ниже.

3. Откройте диспетчер устройств.

4.Теперь вы можете найти подключенный USBASP Programmer.

5. Щелкните правой кнопкой мыши «USBasp» и выберите « Обновить драйвер ».

6. Выберите « Найдите на моем компьютере программный драйвер ».

7. Теперь найдите или просмотрите родительскую папку распакованного драйвера USBASP и выберите «Открыть».

8. Если программа успешно установлена, вы увидите сообщение, подобное приведенному ниже, и вам не нужно выполнять дальнейшие инструкции.

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

Чтобы отключить подпись драйвера, выполните следующие шаги :

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

2. Щелкните Restart на панели запуска, удерживая нажатой клавишу Shift.

3. Теперь ваш компьютер перезагружается, но не отпускайте клавишу Shift, пока не увидите « Дополнительные параметры » на синем экране.

4. Оставьте клавишу Shift и щелкните «Параметры запуска».

5. Нажмите «Устранение неполадок».

6. Выберите «Дополнительные параметры».

7. Когда вы выберете расширенный параметр, отобразится следующий экран с несколькими вариантами и кнопка «Перезагрузка» будет в правом нижнем углу.

8.Щелкните по кнопке «Перезагрузить».

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

10. Теперь это последний шаг по отключению подписи драйверов. Во многих вариантах в списке параметр 7 th - это «Отключить принудительное использование подписи драйверов ».

11. Чтобы выбрать эту опцию, вам нужно будет нажать кнопку с цифрой 7 на клавиатуре. Не путайте с кнопкой F7. Вам просто нужно нажать цифру 7 на вашем компьютере.

12. После выбора опции 7 th ваш компьютер перезагрузится. И вы успешно отключили подпись драйвера.

13. Теперь просто выполните шаги 1-8 выше, и драйвер USBASP будет успешно установлен.

Теперь, , мы завершили этап 1 программирования Atmega16 . Второй шаг включает настройку Atmel Studio 7.0 для загрузки скетча.

Шаг 2. Загрузка и настройка Atmel Studio:

Следуйте инструкциям ниже:

1.Загрузите Atmel Studio 7.0

2. Также вам необходимо загрузить «WinAVR» в качестве внешней цепочки инструментов для загрузки скетча с помощью USBASP. Для скачивания используйте эту ссылку.

Теперь вам нужно создать проект «Blink» в Atmel Studio 7.0. Для этого выполните шаги.

3. Подключите USBASP v2.0 к USB-порту и оставьте его подключенным все время, пока вы не начнете с ним работать.

4. Откройте Atmel Studio.

5. Перейдите в «Файл», нажмите «Создать» и выберите «Проект».

6. Теперь назовите свой проект, выберите расположение проекта и выберите компилятор «GCC C Executable Project». Нажмите «ОК» и продолжайте.

7. Теперь вам будет предложено выбрать микроконтроллер. Выбирайте свое устройство, в нашем случае это Atmega16A. Выберите и нажмите «ОК». Вы также можете запрограммировать другие микросхемы Atmega, такие как Atmega8, Atmega32 и т. Д., Используя тот же программатор USBASP AVR.

8.Теперь ваш файл main.c создан, в котором вы можете написать свой код. Но подождите и следуйте небольшим инструкциям, чтобы закончить.

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

Шаг 3: Настройка внешней инструментальной цепочки WinAVR в Atmel Studio

1. Перейдите в «Инструменты» и выберите «Внешние инструменты».

2. Вам будет предложено окно, в котором вам нужно будет добавить имя вашей цепочки инструментов.

3. В поле «Заголовок» введите имя вашей инструментальной цепочки. Это может быть все, что вы хотите назвать. В моем случае я выбрал «USBasp». Установите флажок «Использовать окно вывода» и снимите флажок «Запрашивать аргументы», как показано на снимке экрана ниже.

4. Теперь введите «Command». Это будет ваш путь «avrdude.exe». Вы получите это в установленном пути WinAvr. Просто найдите «WinAVR-20100110» на диске «C» или там, где установлен WinAvr.

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

    

6. По этой ссылке вы можете найти больше аргументов.

7. Введите указанный выше аргумент в раздел аргументов. Оставьте «Исходный каталог» как есть.

8. После заполнения всех деталей просто «Применить» и нажмите «ОК».

У вас есть , успешно созданная внешняя цепочка инструментов для загрузки эскиза .После создания набора инструментов мы протестируем, загрузив программу «blink.c». Вы можете найти файл main.c в конце руководства. Теперь скопируйте main.c в студию Atmel.

Шаг 4: Настройка Atmega16 с осциллятором и одним светодиодом

Подключите кварцевый генератор и светодиод к Atmega16. Схема подключения мигающего светодиода на Atmega16 , запрограммированном с помощью USB-программатора Atmega, приведена ниже:

Также вам потребуется подключить микроконтроллер и USBASP, как указано в схеме ниже:

Шаг 5: Создание и загрузка эскиза в Atmega16

1.Сохраните файл main.c.

2. Подключите один светодиод к контакту PORTA0 Atmega16, как показано на рисунке выше.

3. Перейдите в «Сборка» и затем выберите «Сборка Blink».

4. Если программа верна, вы не найдете никаких ошибок и получите сообщение, как показано ниже.

5. Теперь перейдите в «Инструменты» и выберите созданную внешнюю цепочку инструментов. В моем случае это «USBasp». Нажмите здесь.

6.Если вы видите сообщение об успешном выполнении, как показано ниже, значит, вы успешно загрузили эскиз. Если вы получите какую-либо ошибку, просто проверьте, тщательно ли вы выполнили все шаги, а также проверьте подключение USBASP и Atmega16.

7. Теперь вы видите, что светодиод начинает мигать. И вы успешно загрузили программу мигания с помощью USBASP v2.0 и Atmel Studio 7.0. Вы можете использовать этот метод и загружать другие скетчи с помощью USBASB.

/> ,

Смотрите также