LPT и USB Программатор AVR микроконтроллеров
Первым шагом по освоению микроконтроллера для каждого наверняка является сборка программатора. Купить программатор тоже можно, но за совсем неразумные деньги, как по мне. Рассмотрим работоспособный программатор для AVR’ок, которым я пользуюсь вот уже 4-й год. В свое время PonyProg 2000 показал отец, программа мне очень понравилась, и было решено делать под нее программатор. Порывшись на сайте программы, обнаружил простую схему программатора LPT порта (COM порты я не рассматриваю по причине легкости их горения от статики):
Ее повторение не займет более часа, но гарантирует целостность вашего LPT порта и совместную работу с Pony Prog 2000. Микросхема 74HC244 – буфер. Резистор R1 – 100k, конденсатор C1 – 0.1мкФ. Диод D1 – любой кремниевый. LPT разъем типа «папа». Теперь разберемся с ISP разъемом, который будет использоваться для программирования. Выводы MISO, MOSI, SCK, RESET – управляющие, вывод LED – к нему подключается светодиод, который сигнализирует чтение/запись прошивки в микроконтроллер, VDD и GND соответственно +5В и земля.
Для подсоединения микроконтроллера удобно использовать шлейф на 10 проводов и соответствующий IDC, но это дело вкуса и каждый сам решает, как ему нравиться, главное не делать его слишком длинным, во избежание наводок. У меня получилось вот так:
Для тех, у кого по тем или иным причинам нету LPT порта и лень бегать к соседу зашить прошивку могу посоветовать толковый USB программатор (сайт проекта prottoss.com). Достаточно просто повторить схему и правильно прошить управляющий контроллер (для этого, как ни крути понадобиться LPT или COM порт). Вот такой USB программатор собрал себе:
Перейдем к программной части. В начале говорилось, что программировать мы будет с помощью Pony Prog 2000.
Первое включение и калибровка:
При первом использовании программатора не забываем корректно его настроить: Setup->Interface setup, в появившемся окне выбирай LPT порт, к которому подключен программатор, выбираем AVR ISP API в выпадающем списке, а флажки Polarity of control lines не трогаем, оставляем пустыми. Далее калибруем все это дело Setup->Calibration. Все, теперь мы можем с помощью нашей макетной платы программировать AVR'ки.
Выбор среды для написания программ:
Теперь осталось выбрать, в какой среде писать программы и на каком языке. Рекомендую писать на С, если не критичен размер и скорость выполнения программы.
Его освоение намного легче ассемблера, но знание ассемблера незаменимо для написания коротких и быстрых программ, понимания работы микроконтроллера. Я пишу свои программы в связке бесплатных программ AVR Studio 4 и WinAVR и очень доволен результатом, но здесь на вкус и цвет товарищей нет, выбор за вами.
Почти успех =) => =(
Спаял вроде все как на схеме)
Тоесть не вроде а так и есть)
Только вместо D1 поставил ИК диод незнаю скажется ли как то другово под рукой не было)
Первая проблема когда пытался прошить с настройкой AVR ISP API (LPT2 другово немог выбрать)
выбивало 16 ошибку, типа нет порта
После того как поменял настройки на AVR ISP I/O LPT1 выбило ошибку -24 типа я незнаком с вашим девайсом)
И пытается прошивать . . . пока без результатно(((
подскажите в чем проблема?
Слышал вроже нужно менять какие то настройке в биос?
так вот какие?7?
поздравьте с приобретением!
купил нечто миниатюрное, на usb, без корпуса и без всяких bells&whistles, в инструкции сказано что это аналог stk500, может определяться как avr910, но у меня определился как avr doper.
пока никуда не подключал - при попытке чтения фьюзов программа пишет programmer is not responding.
подозреваю, что так и должно быть.
теперь собственно вопрос. на самой плате есть разъемы на 6 и на 10 штырьков, но кабель - только на 10. для прошивки микроконтроллера мне надо только ножки к штырькам mosi, vcc, rst, miso и ground подключить? остальные могут пины микроконтроллера могут висеть свободными?
Для программирования МК
Для программирования МК требуется подключить к программатору MOSI, MISO, SCK, RESET и подать питание. Остальные можно не трогать. Смотри доку на программатор, какие из тех пинов нужно вывести.
тыкс
он отказывался у меня работать как avr910, как stk500, как stk500v1, зато прочитал фьюзы как stk2, и прошил флешку за пару секунд. попробую дособирать свой дивайс и запустить его))
микруха прошита!
CV AVR
Всю жизнь заливаю свои Тиньки таким LPT буферком через CodeVision, по мне довольно удобный Loader в нём встроен, просто выбираешь "STK 200/Kanda sys" и шьёт и читает...
В AVR Studio тоже встроенный
В AVR Studio тоже встроенный есть для AVR910. Здесь уже скорее на вкус и цвет что больше нравиться.
первый раз, первый программатор, боюсь что-либо спалить)
Доброго времени суток всем!
Подскажите пожалуйста, а Выводы MISO, MOSI, SCK, RESET – управляющие, нужно напрямую подсоединять к МК или как здесь
Я имею ввиду через резисторы выводы MISO, MOSI, SCK, RESET подтягивать к питанию и земле надо?
Дело в том, что у меня мега16, там вывод RESET инверсный, сброс по нулю будет по идее, мне R3 на землю бросить?
Спасибо если кто откликнется!
p.s. Диплом с МК попался, а я не шарю:) Хочу разобраться, но тонкостей очень много...
У меня MOSI, MISO, SCK
У меня MOSI, MISO, SCK напрямую подключены к программатору. Но если не поленишсья и подтянешь к +5В ничего страшного не произойдет.
А вот Reset обязательно подтянуть к +5В. Иначе долго будешь глюки отлавливать.
Спасибо!! Буду пробовать,
Спасибо!!
Буду пробовать, здесь без личного опыта не продвинешься:)
Все понятно, вот только зачем
Все понятно, вот только зачем тогда нужен usb?
Когда нет LPT порта как
Когда нет LPT порта как обычно в новых компах и ноутах а тем более нетбуках.
прога
Я кстати юзаю программатор так называемый 5 проводков, и прогу UniProf Вот уже несколько лет, и все отлично!
Прога
5 проводков тоже имеют право на жизнь, себя не комфортно ощущаю, когда с ПК-шными портами работаю без развязки :)
Шью 5 проводами уже не первый
Шью 5 проводами уже не первый год прямо из CVAVR в котором и кодю.
а CVAVR будет работать с
а CVAVR будет работать с таким программатором ?
программатор
С таким - Нет.
С пятью проводками - да.
CV AVR не советую если начинающий. Пиши лучше в AVR Studio.
У меня аналог AVR910 c
У меня аналог AVR910 c prottoss.com замечательно работает с CVAVR. В настройках выбирается "AVR910" номер COM и в бой, а вот с AVR Studio не получается его подружить...
По ветке выше смотри
По ветке выше смотри, обсуждение именно "пяти проводков" идет))
А на фотке какраз и есть программатор от проттоса, у меня у самого такой есть собранный, но я им не пользуюсь очень он тормозной, да и проблемы с ним были. Шил нормальный код а по итогу зашивался какой-то левак! И криво потом работала программа микроконтроллера. Может я там что-то запорол, но дальше не стал разбираться так как у меня есть мой "5 проводков" - надежный и относительно скоростной.