Когда я начинал заниматься МК AVR, мне хватало программатора известного как "5 проводков", но его минусы очевидны: необходимость внешнего питания, отсутствие защиты, отсутствие параллельного порта в нетбуке и т.п.
В этой статье я расскажу, как собрать программатор, который максимально прост и относительно дешев, но при этом, поддерживается всеми современными ОС (GNU LINUX, WINDOWS, MAC OSX) через программу avrdude.
Но сперва нужен программатор (да, рекурсия, нужен программатор чтобы сделать программатор), если у вас он есть, то пропускаем следующий пункт, если же вы новичок в AVR, то стоит сперва сделать 5 проводков.
Для программатора понадобятся:
- 1 разъём DB-25
- 4 резистора 100-220 Ом
- обрезки провода
Паяем по схеме, и откладываем.
Теперь список деталей для программатора VUSBTiny:
- кусок стеклотекстолита 51х18
- шлейф на 10 проводов
- разъём IDC-10
- ATTiny 45/85
- разъём USB
- 2 стабилитрона 3v6
- 2 резистора 68 Ом
- 2 резистора 100-220 Ом или перемычки
- резистор 1к5
- термоусадка (как корпус)
Принципиальная схема VUSBTiny:
МК можно прошить до запайки или после сборки, через разъём j2.
avrdude -c usbtiny -p t45 -e -V -U flash:w:usbtiny.hex \\прошивка
avrdude -c usbtiny -p t45 -V -U lfuse:w:0xe1:m -U hfuse:w:0x5d:m -U efuse:w:0xff:m \\фъюз-биты
ВАЖНО! Поменяйте -p t45 на -p t85 если вы используете aTiny85, а -c usbtiny на -с свой программатор!
Печатную плату можно изготовить по ЛУТ или фоторезистивной технологии, за неимением лазерного принтера я выбрал 2-ой вариант.
Шаблон выглядит примерно так:
Далее: печатаем, режем, клеем фоторезист, экспонируем, проявляем, травим, моем, сверлим, паяем, обжимаем разъём и усаживаем трубку. Дальше прошейте, (если вы не сделали этого ранее) через разъём j2.
Готово! Получается что-то похожее на:
Для проверки я изготовил переходник под attiny2313 (очень удобно), втыкаем j2 потом usb:
И проверяем работоспособность:
Стоимость программатора получилась около 350р.
Ниже вы можете скачать исходники, драйвера и печатные платы в формате LAY
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот | |
---|---|---|---|---|---|---|---|
Программатор "5 проводков" | |||||||
Резистор | 100 Ом | 4 | 220 Ом | Поиск в магазине Отрон | |||
Разъём | DB-25 | 1 | Поиск в магазине Отрон | ||||
Программатор "VUSBTiny" | |||||||
IC1 | МК AVR 8-бит | ATtiny45 | 1 | ATtiny85 | Поиск в магазине Отрон | ||
D1, D2 | Стабилитрон | 1N4729A | 2 | Поиск в магазине Отрон | |||
Резистор | 68 Ом | 2 | Поиск в магазине Отрон | ||||
Резистор | 1.5 кОм | 1 | Поиск в магазине Отрон | ||||
J1 | Разъём | USB | 1 | Поиск в магазине Отрон | |||
J2 | Разъём | IDC-10 | 1 | Поиск в магазине Отрон | |||
Скачать список элементов (PDF)
Прикрепленные файлы:
- vusbtiny.rar (170 Кб)
Комментарии (35) | Я собрал (0) | Подписаться
Для добавления Вашей сборки необходима регистрация
Но... девайс работать у меня не хочет. При подключении Windows выдает сообщение, что устройство не опознано (device unknown)
Вот вывод программы usbview на данный девайс:
[COLOR=Navy]Device Descriptor:
bcdUSB: 0x0000
bDeviceClass: 0x00
bDeviceSubClass: 0x00
bDeviceProtocol: 0x00
bMaxPacketSize0: 0x00 (0)
idVendor: 0x0000
idProduct: 0x0000
bcdDevice: 0x0000
iManufacturer: 0x00
iProduct: 0x00
iSerialNumber: 0x00
bNumConfigurations: 0x00
ConnectionStatus: DeviceFailedEnumeration
Current Config Value: 0x00
Device Bus Speed: Low
Device Address: 0x00
Open Pipes: 0[/COLOR]
Как продиагностировать, чего оно хочет?
С уважением shved
P.S. Не выкидывай залочинные тиньки, я видел на просторах интернета пару проектов высоковольтных программаторов и фъюз-докторов.
По поводу правильности сборки - косяков не нашел.
Имею подозрение что возможно провод длинный (стандартный 1,8м),
Кстати линукс его тоже не распознает - пишет только messages.log, что подключено устройство Hi-Speed, без идентификации.
Как-то на днях попробую с короткими проводами
P.S. будьте осторожны, не повторяйте моих ошибок
_http://www.ladyada.net/make/usbtinyisp/download.html
avrdude -P lpt1 -c stk200 -p t45 -e -V -U flash:w:usbtiny.hex прошивка
avrdude -P lpt1 -c stk200 -p t45 -V -U lfuse:w:0xe1:m -U hfuse:w:0x5d:m -U efuse:w:0xff:m фъюз-биты
Можно прошивать и другими программами.
- нормальный разъем ISP-10 вместо шлейфа (он может легко отвалиться)
- добавление возможности запитки схемы от usb (джампер от +5 USB до 2 ноги ISP-разъема)
- индикацию подключения (светодиод с резистором от 2 ноги ISP до земли, даже через 1кОм светит ярко, хотя ток около 7мА потом поставлю побольше)
- добавление небольшой защиты по выходу (резисторы 56 Ом между ISP и контроллером, защита слабенькая но лучше чем ничего да и разводить проще)
- замена всех компонент кроме светодиода и стабилитронов (просто под рукой не было и опять же разводить легче) на SMD
- добавление конденсатора 0,1мкФ от питания до земли (не обязательно но лишняя защита от помех не помешает тем более тактируется не от кварца а от 64МГц RC-генератора, который менее стабилен, лучше перестраховаться).
Стоит контроллер ATtiny85 с прошивкой от 45-го. Артем интересовался можно ли. Можно, контроллеры отличаются только объемом памяти (правда всей).
[Автор]
[Автор]