![image](https://habrastorage.org/getpro/geektimes/post_images/cf0/607/778/cf06077781f95ea90a2920cd0c104384.jpg)
Посмотрев на цены готовых ардуин в нашей стране я пригорюнился.
Но потом задался вопросом… А какого черта?! Ведь там используются обычные AVR микроконтроллеры, доступные россыпью на радио рынке за нормальную стоимость.
А почему бы не собрать свое и не сидеть на готовеньком?
Тем, кому интересен процесс сборки и настройки своей простейшей Arduino, прошу под кат.
Сейчас в интернете полно ресурсов, посвященных Arduino. Но немного раздражает плоскость материала и частый копипаст. В основном большинство статей заключается только в первом знакомстве и миганием светодиодов, нет детального описания по схеме, более сложных алгоритмов и прочего. Посмотрев на это, я решил собрать свою плату и делать с ней то, что я захочу, и делать это осознанно, а не по инструкции.
Для старта я решил выбрать самый популярный контроллер Atmega8.
На нашем радио-рынке его средняя стоимость колеблется в пределах 12-18грн., в зависимости от места покупки (магазин/ларек) и от типа корпуса.
Для меня на тот момент не было проблемой в плане программирования, программатор был и LPT порт в компьютере присутствует. Но хотелось сразу сделать так, чтобы не зависеть от старого железа, поэтому была сразу прикуплена макетная плата, 50 метров провода МГТФ, россыпь мелочи и еще один контроллер ATtiny2313.
Оговорюсь, контроллеров брал сразу по несколько штук, на всякий случай.
Так как в современных ПК и ноутбуках сейчас LPT и COM днем с огнем не отыскать, было решено делать плату с USB интерфейсом. Но сразу скажу, для того чтобы это сделать, нужно все-таки будет найти или переходник с USB-COM, или же компьютер с LPT портом (USB-LPT работать не будет!). Поэтому для этих целей и была взята ATtiny2313.
Данный микроконтроллер в нашей схеме будет выступать в качестве «буфера» между нашим основным контроллером (ATMEGA8) и ПК.
Но хватит болтовни и приступим от теории к практике.
Для начала перед всеми телодвижениями нам нужно собрать программатор.
Я приведу две схемы, которые помогут в том или ином случае.
LPT программатор «5-ть проводков»
Название абсурдное, но это самый простейший программатор для наших контроллеров, суть заключается в простоте и невысокой надежности. Но для наших опытов будет достаточно.
Нам нужно:
1.LPT разъём типа «папа», а точнее 25-контактный разъём DB-25-male
2.4 резистора номиналом 100 Ом (можно в пределах от 80-250 Ом)
3.5-ти жильный провод длиной не более 20 см и, желательно, с металлизированной экранизацией.
4.Прямые руки.
Спаиваем все по такой простой схеме.
Единственное важное замечание, обязательно ставьте резисторы, так как они осуществляют защиту порта. А если без них, то, попросту, закоротив выводы, угробите порт.
О назначении выводов позже.
У вас должно выйти нечто такое.
Если компьютер с LPT так и не нашли, или же нашли, но у него уже сожгли порт, то второй программатор поможет вам.
COM – ISP (программатор Громова)
Нам нужно:
1. COM разъём типа «мама» DB-9-F
2. 3 импульсных диода (я брал д220)
3. 7 резисторов номиналом 1кОм
4. 5-ти жильный провод до 1 метра.
5. Прямые руки
Схема такая:
![image](https://habrastorage.org/getpro/geektimes/post_images/8e6/cd3/dc8/8e6cd3dc80019b4908622df0abe4b411.jpg)
Россыпь резисторов и диодов нужна для того, чтобы привести уровни сигналов COM порта (-12В, +12В) к необходимым (0, +5В).
Данная схема программатора достаточно распространена и известна как программатор Громова. Название пошло от автора программы Algorithm Builder Геннадия Громова, который и предложил такую схему.
Для старта это все, в следующей части статьи мы перейдем уже к детальной теории, сборке платы, прошивке и отладке.
Ссылки
— Сайт Громова;
— Часть материала с сайта .
UPD.: На основе ваших замечаний, и предложений будет основана вторая часть