Еще одним несложным, в плане изготовления, является COM программатор. При условии использования альтернативного режима COM порта Bitbang, отпадает необходимость в преобразовании интерфейса RS232 COM порта в SPI, необходимый для программирования. Остается только привести уровни сигналов COM порта (-12В, +12В) к необходимым (0, +5В). Это и делает
схема COM программатора для AVR микроконтроллеров:
Данная схема программатора достаточно распространена и известна как программатор Громова. Название пошло от автора программы Algorithm Builder Геннадия Громова, который и предложил такую схему.
Чтобы собрать программатор Громова нам нужно следующее:
Диоды КД522, КД510, 1N4148 или им подобные. Резисторы можно использовать любые, какие найдете. В качестве шлейфа можно использовать IDE шлейф. При подключении шлейфа, для более устойчивой работы программатора, каждый «сигнальный» провод должен чередоваться с «земляным» проводом. Это позволит уменьшить уровень помех наводимых в линиях и за счет этого увеличить длину программирующего провода. Длина шлейфа должна быть в пределах 50 см. Еще нужен разъем для подключения к программируемому устройству.
Для внутрисхемного программирования Atmel рекомендует стандартные разъемы:
Если Вы планируете серьезно заняться микроконтроллерами, сделайте разъемы стандартными. Для разового программирования устройства я рекомендую использовать разъемы BLS «мамы» на программаторе (такими разъемами к материнской плате подключаются кнопки и светодиоды корпуса компа — именно их я и взял) и штырьки PLS «папы» на плате. Это позволяет максимально упростить разводку платы устройства, так как штырьки для программатора устанавливаются в непосредственной близости возле ножек микроконтроллера. Ножки MOSI, MISO, SCK у микроконтроллеров AVR всегда расположены вместе, поэтому для них можно применить строенный разъем. Отдельно делаем подключение для «земли»-GND и «сброса»-Reset.
Собрать COM программатор не составит труда:
Я сознательно не даю печатной платы под этот программатор, так как схема проста и возня с разводкой и травлением платы просто себя не оправдывает.
Для того чтобы наш COM программатор заработал нужна программа для программирования через COM порт, плата устройства к которой мы подключим программатор и тестовая прошивка для микроконтроллера.
Общие рекомендации:
— Так как режим Bitbang нестандартный для COM порта компьютера, то возможны сбои в работе (хотя у меня такого не было). Особенно это касается ноутбуков. Как вариант решения этой проблемы можно рекомендовать «поиграться» настройками COM порта (скорость, биты данных, варианты управления потоком, величины буфера …).
— Отдельный разъем для «земли» желательно подключить первым, чтобы уравнять потенциалы «земли» программируемого устройства и компьютера. Для тех, кто не знает, если у Вас компьютер включен в обычную розетку, без заземляющего контакта, то в виду особенности фильтра блока питания компьютера, на корпусе компьютера всегда присутствует потенциал в 110В.
Заключение:
— COM программатор Громова простой и надежный. Я не перестал пользоваться им даже собрав USB программатор (если какой либо микроконтроллер перестает программироваться USB программатором я обязательно перепроверю его на программаторе Громова).
— Так как программатор Громова собран на пассивных элементах он не требует для себя питания. Мало того, из-за паразитного питания, микроконтроллер можно запрограммировать вообще не подключая к нему источника питания! Хотя так программировать я не рекомендую, но сам факт интересен.
— Для пользователей Algorithm Builder есть приятный бонус! Этот программатор можно использовать для внутрисхемной отладки кристалла (программный JTAG).
Ссылки:
Сайт Геннадия Громова, автора Algorithm Builder
Кабель подключен к юнипрофу?
Галочка «тормоз» стоит?
Чаще всего это помехи который ловит кабель. Для их уменьшения можно уменьшить кабель (эт если он длиннее 30-45см, иначе не поможет), применить для программатора экранированный кабель и еще нужно ставить керамический конденсатор на ножки питания микроконтроллера.
Поделитесь пожалуйста опытом. Программатор определяется через раз, то есть в принципе работает. Может в компе что-нибудь подкрутить типа какие-нибудь сервисы по-отключать.
А такой вопрос. Щас у меня на столе уже два устройства полностью смонтированных в DB-9 разъёмах. Пока что я знаю кто из них Громов, а кто переходник r-232 to uart. Но представьте 10 таких разъёмов, и из всех торчит шлейф… Как можно пометить не только что это за устройство, но и последовательность выводов проводов
Я думаю, от 500 Ом до 3кОм должно быть нормально, но лучше, чтобы были ближе к 1кОм (проверено временем)
В каких пределах можно изменить значения резисторов, чтобы и для СОМ порта безопасно и программатор работал?
А по мылу можно? Так не хочется яську устанавливать 🙁
Напиши в аську. Просто совет нужен
Сделай. Для отладки устройств, UART отличная штука.
Я считаю себя вообще нубом в электронике) Поэтому упорно её изучаю. Кстати Ком программатор я спаял, залил внутри всё горячим клеем. Шлейф где 30-40 см. Думаю нормально. Говорили и про шлейфы в длинну комнаты. Сейчас хочу сделат отладочную плату под 2313. Но уж очень нравится устройство USB To UART. Думаю начну делать всё таки его.
ICQ: 1-255-семь43
Поглядел.
Библиотека Qtouch только для Touch-контроллеров. Я не нашел поддержки микроконтроллеров AVR серии. Я думаю, ATMEL не даст возможности выбора альтернативы между Touch-контроллерами а AVR микроконтроллерами. И знаете почему? Правильно! Touch-контроллеры стоят раза в три дороже!
P.S. А хотя нет, нашел упоминание про тини и меги. Но насчет юзабельности ничего не могу сказать. И опять же, не вижу смысла во впаривании дорогих Touch-контроллеров если это-же можно сделать на Тиньке.
Поглядим.
Про библиотеку речи не идет — это готовые устройства.
А разве не проще взять любой МК Атмел и библиотеку Qtouch. Это намного лучше, чем такая самопальная библиотека. И доком больше. Как мне сказали можно сделать не только кнопки, но и линейные и круговые слайдеры. Там есть и автоподстройка, и шумоподавление, и много чего еще.
Конечно посоветую! Собирай платку http://www.getchip.net/posts/060-drajjver-sensornojj-klaviatury-touch-me-na-attiny2313/
Она совсем не сложная и на ее базе будет много разный устройств. Очень хорошо для обучения.
Что посоветуешь? Просто я пробовал программатор 4 раза собирать. Не получается. Щас по твоей статье собрал, думаю должно начать работать. Но нужен какой то проект для начинающего. Посоветуешь?
Может купить одну и попробовать что-то соорудить на ней?
Они продаются. Но только поверхностного монтажа
Все равно маловато. Если при подключении питания к «голому» микроконтроллеру он греется — однозначно сгорел. Купи лучше несколько ATTiny2313 — для обучения самое то.
Ошибка 1 кОм
Примерно 20 Ом. Пойду новый МК покупать. Он у меня стоит аж 260 рублей)
ATmega16APU нормально работает от 5в.
Судя по описанию — сгорел микроконтроллер. Какое сопротивление между ножками Vcc и GND?
Добрый вечер ГетЧип.
Я спаял этот программатор, при подключении ничего Юнипроф не нашёл. А МК начал дико греться. Питал от компа, +5 на VCC. МК — ATmega16APU. Может он низковольтный? Или уже сгорел? Греется прямо по центру МК, очень резко. Эффект укола иголкой.
Проверить как прожегся МК очень просто — нужно прочитать его содержимое. В унипроге кроме этого можно сравнить содержимое микроконтроллера с файлом-прошивкой.
Купил МК ATtiny2313 и мегу8 оба сразу определились , значит бело в мк было , большое спасибо за помощь и еще, как проверить пожег ли я мк или нет?
Купил МК ATtiny2313 и мегу8 оба сразу определились , значит бело в мк было , большое спасибо за помощь и еще, как проверить пожег ли я мк или нет?
Очень возможно, что МК из паяльной станции заблокирован для чтения/записи, или у него включено параллельное программирование(что тоже не даст определятся микроконтроллеру через SPI-программатор).
К обычному кварцу конденсаторы 15-30пФ подключены?
Лучше бы обзавестись новым микроконтроллером, тем-же ATtiny2313 (а лучше купить сразу несколько — все равно поначалу надо на чем то учится).
не запуская программу включив питание на мк , питание на пинах
vcc — gnd — 5.73v
vcc — RST — 5.7v
vcc — mosi — 5.61v
vcc — miso — 5.72v
vcc — SCK — 5.71
-Порт выбран правильно,галочку ставил
-Конструкция 1в1 как тут показанно
-МК шился выдерну со старой паяльной станции , подкючил обычный кварц под рукой был только 25Мгц(щас нашел на 14)
-Щас попробую на другом компьютере
-Питание от отдельного комп БП +5в , земля с програматора, питание на мк есть
Унипрог сам программатор и не должен видеть, только пару МК+программатор.
— В унипрог правильный COM-порт выбран? Поставьте в унипрог галочку «тормоз».
— Проверьте еще раз собранную конструкцию программатора на ошибки. (Напряжения на выходах программатора разные в зависимости от конкретного железа компа, режима работы ком порта — на них не нужно ориентироваться).
— Микроконтроллер до этого не шился? Если да, то возможно фьюзы прошиты на внешний кварц а в плате http://www.getchip.net/posts/prostaya-otladochnaya-plata-dlya-ustrojjstv-avr-atmega4888168-s-chasovym-kvarcem/ стоит часовой — с ним не прошьется. В этом случае нужно поставить обычный кварц с частотой больше 1МГц.
— Если есть другой COM порт — можно попробовать через него. Если есть возможность попробовать работоспособность на другом компе — попробуйте.
— Питание микроконтроллера 5в?
подключаю по теме http://www.getchip.net/posts/prostaya-otladochnaya-plata-dlya-ustrojjstv-avr-atmega4888168-s-chasovym-kvarcem/ в уни прог пишет uknnown и табличка вскакивает *МК не откликнулся.Проверьте порт и подключение.* , собирал 1 в 1 не пашет ( подскажите что может быть
Помогите пожалуста, собрал программатор громова но подключаю к ATMega8 все по схемам , в унипрог не видит програматор ни мк , можете сказать сколько вольт на всех контактах программатора
Это не программатор а преобразователь USB-UART. Но идея правильная! При помощи такого готового преобразователя можно заделать USB программатор.
Собственно говоря я так и сделал. Для Algorithm Builder стандартная схема USB программатора содержит FT232RL преобразователь, но цена этой микросхемы не мелкая да и довольно редкая она в продаже. Вот я и купил USB шнурок для мобилки и заменил им FT232RL — получилось намного дешевле плюс USB разъем и шнурок в качестве бонуса 🙂
доброго времени суток..
я тоже заинтересовался контроллерами, давно читаю разные форумы, вот что мне попалось про изготовление программатора: http://avr.ru/solution/device/usbuart
Никогда задержкой не пользовался — не знаю как оно работает.
Все таки USB программатор неизбежен :)?
Пробовал. Выставлял макс. задержку — 50 — нажимаю ещё раз F2 — снова в поле ввода значение по-умолчанию — это нормально?
«COM порт — к нему особых требований нет… Да, использовать переходник USB-COM не удастся — то есть оно теоретически работает… Но страшно медленно.» это фраза от создателя UniProf http://avr.nikolaew.org/progr.htm.
Попробуй поставить галочку «Тормоз» и поиграться с установкой задержки записи «F2» при программировании через переходник — может что-то и получиться.
MCS9835 работает ещё хуже, чем ЮСБ переходник. В башне лпт и ком нет.
Как так получилось что у тебя в башне нет ни одного COM порта (MCS9835 вроде в ноутбук не засунеш)?
Ну тогда точно придется делать USB программатор 🙂
MCS9835 не захотел работать. Безобразие(
ещё где-то был PCI адаптер ком, там по идее полная эмуляция?
Этот программатор, однозначно, не будет работать через переходник ЮСБ-ком, так как для программирования используется нестандартный режим работы COM порта — переходники так работать не могут (разве что он сделан на микросхеме FT232RL).
Через пару статей будет статья о том как сделать простой USB программатор (вот только определюсь какой из них будем делать).
Живу далеко не в большом городе. У нас с МК проблема, заказывать — долго ждать, ох эта почта…эти Атмега32 заказывал. Вроде не спалил. ЛПТ нет никак. вообще( Друга не хочется напрягать каждый раз. МК вроде бы жив, но программатор похоже не работает(или он не совместим с моим переходником ЮСБ-ком). Ещё запасная есть, но не хочу спалить сразу и её)
МК должен начинать выполнять программу при подключении к программатору ком?
P.S. Очень интересует вопрос про переходник.
Если есть LPT порт сделай программатор на нем. Работает деревянно — попробуй перепроверить-запрограммировать свою мегу им.
Вообще, для начала, лучше мучать ATtiny2313 — не так жалко палить 🙁 (хотя совет уже не в тему).
Кто-нибудь тестировал этот программатор с переходником юсб-ком?
Похоже своими неумелыми руками спалил свою Atmega32(
В старой книжке про сопряжение простых ацп с компьютером через RS-232 пользовались такой связкой — Пин-ком-порта -> резистор 7.2 kОм -> стабилитрон на 4.7 вольт параллельно и к входу АЦП. Там тоже должны были быть уровни 0 и 5 Вольт. Собирал, как не странно — работало без сбоев даже на переходнике ЮСБ-ком(хоть и страшно медленно). Уровни сигналов после резистора и стабилитрона были 0.7 вольт — «0», ~4,6вольт — «1»
Собрал сначала по схеме со стабилитронами — микроконтроллер не обнаруживался вашей программой, но сигнал ресет на МК шёл. Перепроверил ещё раз — не работает. Сделал 1 в 1 эту схему. При подаче питания микроконтроллер не стал выполнять свою программу(моргание 1м светодиодом), результат тот же, что и с первой схемой. Взрывов и дыма не наблюдал)
Возможно Вы и правы. Я как то не задумывался над реализацией данного шнура. Но мне кажется в таком случае будут проблемы с выходными цепями портов микроконтроллера, плюс токи стабилизации и закорачивания (отрицательного сигнала RS-232)будут значительными. Я думаю, автор (Геннадий Громов) при разработке программатора учел все нюансы, может поэтому этот шнурок и пользуется популярностью.
А не надёжнее ли будет вместо делителя напряжения использовать стабилитроны на 4.7 вольт?
Ссылочку посмотрел . Сложноват . Но все равно деваться некуда , скоро
кроме USB ничего не останется …
Наверное, Вам нужно обратить внимание на AVR910-клоны программаторов и сразу в USB варианте. Неплохой вариант можно посмотреть у протоса http://prottoss.com/projects/AVR910.usb.prog/avr910_usb_programmer.htm
Так как у Вас уже есть LPT программатор, то проблем с изготовлением не будет.
Сижу на 5 проводках . Начал делать STK200+/300 на SN74HC244N .
Мой LPT порт уже не печатает , но пока прошивает . Первый раз мне
самому сделали STK200 и в один прекрасный день мой Tecra 8100 завыл ,
еле успел с другой комнаты чтобы отключить . Подошел к AVR только
через 2 месяца .
Давно хотелось сделать программатор на СОМ и USB портах . Программирую
на CodeVisionAVR 2.04.4a . Там есть тип программатора на СОМ порте
«Atmel AVRProg(AVR910)» . Ваша схема понравилась своей простотой .
Но как ей удобно воспользоваться , находясь на CodeVision , не знаю .
Не обязательно этой , а любой другой , по возможности такой же простой , но которую можно было бы увидеть на CodeVision .
Точнее какой программатор на СОМ порте можно посоветовать при работе с
CodeVision .
Спасибо за ответы в письме .