Делаем сами Arduino Uno Mini. Делаем Arduino с нуля Что можно сделать из arduino

Держа в руках оригинальную плату Ардуино, в голове зародилась мысль о сборке её клона. Посидев, подумав над проектом, было решено уместить все на односторонней плате, а для связи с компьютером снабдить плату микросхемой FT232RL. Во избежание вывода из строя USB порта компьютера, из-за превышения потребляемого тока, я решил пожертвовать возможностью питания от USB, но более детально об этом ходе чуть позже.

Итак, дорогие читатели, представляю вашему вниманию нашу версию клона Ардуино. Встречайте Paduino FT232RL

Как уже говорилось выше, плата имеет недостаток - лишена возможности питания от юсби порта. Однако, благодаря использованию микросхемы FT232RL, на плате присутствует выход 3.3В. Также к доп. функционалу хочется отнести наличие джампера автоматической загрузки (ENABLE), а также джампера (JP LED13), позволяющего отключить не всегда используемый светодиод подключенный к пину под номером 13.

Также, вдобавок к уже имеющемуся выходу Vin на Arduino, был добавлен выход VTG INPUT . На мой взгляд, стандартный вывод Vin имеет ряд недостатков, хотя с другой стороны плюсов. К недостаткам можно отнести потерю напряжения на диоде (0.6-0.8 вольта), также при запитывании Arduino не от разъема питания, а непосредственно от гребенок мы теряем защиту от переполюсовки т.к. выход Vin на схеме расположен после защитного диода. На выводе VTG INPUT мы же всегда имеем напряжение равное входному без каких либо потерь, а также при запитывании Arduino через гребенки функционал защиты от переполюсовки сохраняется т.к. на схеме выход расположен перед защитным диодом. К достоинствам вывода Vin можно отнести то, что при правильно поданном питании на нем всегда будет плюс, в противном же не будет ничего, в то время как на VTG INPUT либо минус либо плюс.

Смыслом данной модификации является возможность питания самодельных мотр шилдов представленных на этом сайте и нашего клона Arduino от одного источника питания без каких либо потерь питающего напряжения.

Так, как ФТшка в данной сборке использует только землю и сигнальные линии USB порта, то, полистав даташит, повесим на неё обвязку в следующей конфигурации:

В этот раз все этапы изготовления я пропущу. Из процесса изготовления приложу только фото протравленной и залуженной платы до начала монтажа элементов.

Пару слов об FT232RL. Микросхемка довольно таки мелких размеров. Для того чтобы вы смогли оценить свои силы, привожу фото ФТшки на десятикопеечной монетке.

Приставляем Фтшку к плате, отцентровываем, смачиваем ножки флюсом, берем на жало паяльника припой в очень малом количестве, и быстро проходимся по каждой ножке. Если вы в пайке новичок, и еще не научились паять быстро, в одно касание, советую делать интервал в 10-15 секунд после каждой ножки.

Что касается размеров, то Paduino выходит не на много больше оригинальной Arduino.

Все, с изготовлением разобрались. Для работы в среде Arduino в память контроллера осталось лишь залить bootloader .

После заливки бутлоадера, нам уже ничто не мешает приступить непосредственно к программированию.

Для начала необходимо скачать среду Arduino. Скачать последнюю версию можно на сайте производителя .

Подключаем наш клон к компьютеру, при наличии интернета устройство должно определиться автоматически.

Если при подключении драйвер на FT232RL не уcтановился в автоматическом режиме, тогда скачаваем драйвер на свою ОС с сайта производителя FTDI.

В комментариях к статье, человек указал на возможность конфликта новых драйверов на FT232RL с сайта производителя. В связи с этим лучше установить драйвер из среды Arduino IDE (arduino-1.0.5-windows\arduino-1.0.5\drivers\FTDI USB Drivers)

Открываем скачанную идешку и выбираем плату. Плата будет отображаться как Arduino NG or older w/ATmega 8 при использовании контроллера ATmega 8, либо как Arduino NG or older w/ATmega 168 при использовании ATmega168.

Затем выбираем COMport к которому подключена плата. У меня кабель определился под девятым номером.

Для проверки работоспособности зальем в контроллер тестовую программку-мигалку, выполнив следующие действия

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

Если все заработало, то поздравляю вас. Вы собственноручно собрали полноценный клон USB Arduino.

В архиве лежит шаблон под ЛУТ и список деталей.

Открываем изображение => Печать => Во всю страницу

Для облегчения распайки smd компонентов с обратной стороны платы, где нет маркировки, приведу картинку.

Хочется отметить, что на smd конденсаторах нет маркировки номиналов, но для облегчения распайки на картинке я их нанес. 104 - 0,1 мкФ, 22 - 22пФ.

На мой взгляд собирать UNO именно в том виде, в котором она представлена в оригинале нет смысла. Я всегда пользуюсь вот этой схемой:

Тут все вообще без гемора – просто 1 микросхема и кварц. Правда, в отличие от Arduino UNO, нет защиты по питанию и USB – соответственно заливка скетчей немного сложнее. Давайте разбираться.

Копируем Arduino uno – питание

Во-первых в этой схеме только одно напряжение – то, которым питаешь микроконтроллер. В arduino uno есть стабилизатор – ей подаешь 5 вольт, она еще и 3.3 выдает на соседний пин. За всю мою практику мне ни разу не понадобилось сразу и 5, и 3.3 вольта в одной схеме. То есть используется либо 5, либо 3.3, но никогда вместе. Все девайсы, экраны и датчики, рассчитанные на 3.3, всегда втыкались 5 вольт и все работало. Естественно надо прочитать даташит (документацию) на эти самые датчики, возможно у вас что-то мегачувтсвительное к входному напряжению и ему реально нужно 3.3 вольта. Тогда можно поставить стабилизатор напряжения и снизить до 3.3 вольт. Как обычно есть пара способов:

Вообще с питанием много всяких извращенных схем, но это основные подходы.

USB для нашего UNO

Тут тоже есть два подхода. Есть такая штука, называется ISP:


Это такой разъем)) Для того, чтобы заставить работать наш новый UNO, нужен микроконтроллер. Если ты просто пойдешь в магаз и купить Atmega326 ты конечно будешь молодец, но работать сразу это все не будет – в нее надо зашить загрузчик Arduino. для этого как ни странно нужна вторая Arduino. Уже рабочая Хз где ты ее достанешь, купишь в Китае или попросишь у друга погонять. В принципе подойдет любая. Назовем ее условно программатор. А подключать надо так:

pin name: not-mega: mega(1280 and 2560) reset: 10: 53 MOSI: 11: 51 MISO: 12: 50 SCK: 13: 52

pin name : not - mega : mega (1280 and 2560 )

reset : 10 : 53

MOSI : 11 : 51

MISO : 12 : 50

SCK : 13 : 52

Если вы достали где-то в качестве программатора Arduino Mega то используйте для подключения последний столбец. Если программатором служат другие ардуины – тогда второй. В первом столбце указаны ноги вашей новой купленной атмеги. Далее в рабочую ардуино (программатор) заливаем скетч из образцов с названием ArduinoISP:

И вот тут у нас два варианта:

  1. Можно прошить загрузчик и тогда в дальнейшем наш микроконтроллер можно прошивать через Serial порт и вторая ардуина-программатор нам больше не нужна.
  2. Либо можно прошивать через программатор сразу наш скетч без загрузчика – и тогда у нас после запуска будет все работать быстрее на пару секунд. Это делается с помощью меню файл –> загрузить через программатор

Если с вторым вариантом все ясно.. То первый требует разъяснений. Жмем Инструменты – Программатор – Arduino. А потом Инструменты – Записать загрузчик.

После этого отключаем Arduino и теперь нам понадобится USB to ttl serial Converter. После того, как мы его достали, его надо подключить к reset, d0 (rx), d1(tx) нашей только что прошитой атмеги.

Суть та же, только не забудьте добавить резистор и конденсатор на reset (см. первый вариант).

После этого все будет прошиваться точно так же, как и обычная ардуина.

Часть № 1. Предисловие

Идея и направление проекта

Всем передаю своё огромное приветствие и желаю того, чтобы прочтение моей учебной статьи не потратило ваше драгоценное время впустую. В этой статье (уроке) я хочу предложить каждому читателю один из многих дешёвых способ изготовления своей arduino платформы в домашних условиях своими руками, какими бы они ни были. Также представлю несколько плат дополнений к нашему микроконтроллеру.

Все радиолюбители и профессионалы когда-то начинали учиться паять, мастерить небольшие устройства, читать электрические схемы, ну и другое. Например, я, узнав об arduino и её возможностях, практически сразу же собирался её купить, но, понимая, в какую копеечку мне это обойдётся, я решил приобрести все химические средства и реактивы для изготовления собственной печатной платы, так как она является самой удачной перспективой в данном случае. Собственные печатные платы можно делать быстро, удобно, и за дешёвые стоимость химических компонентов.

Часть № 2. Разработка и проектирование проекта

Способом изготовления печатных плат является в нашем случае (лазерно-утюжная технология изготовления печатных плат). Тем самым необходимо составить список того, чего необходимо:

1) Стеклотекстолит (100x200 мм на все случаи жизни);
2) Флюс для пайки с тонкой кисточкой;
3) Хлорное железо (250 г.);
4) Жидкое олово (100 мл или больше, неважно, его намного хватает);
5) Лазерный принтер (желательно с новым картриджем);
6) Обычная бумага тонкая A4;
7) Сверло для сверления отверстий в плату;
8) Паяльник мощностью 25 - 30 Вт;
9) Утюг, лучше всего, советский.


В целом, все эти компоненты, не считая конечно принтер, будут стоить вам около двухсот рублей, но этих компонентов хватит на 15-20 небольших плат, если, конечно, экономить.

Теперь же необходимо обсудить детали насчет деталей для сборки самого микроконтроллера:
1) - ATmega328P PU;
2) - Светодиоды, кнопки, штырьки на плату (все дешевые) и прочее (для удобства);
3) - Программатор.

Все эти компоненты тоже будут теоретически стоить около 200 - 300 рублей. В итоге, можно сказать, что, чтобы собрать собственный arduino микроконтроллер, надо потратиться примерно в сумме 300-400 рублей (конечно же считая сколько химических компонентов необходимо для изготовления одного микроконтроллера).

Следующим шагом будет являться разработка и проектирование проекта микроконтроллера, то есть такие её стадии, как:

  1. Подготовка всех компонентов на своём рабочем столе;
  2. Изготовление шаблона печатной платы и очистка стеклотекстолита очистителем или растворителем;
  3. Распечатка шаблона печатной платы на стеклотекстолите при помощи лазерного принтера;
  4. Обработка и травление, собственно, печатной платы;
  5. Снова же очистка и обработка печатной платы очистителем или растворителем (я использую уайт-спирит);
  6. Обработка печатной платы в растворе солей олова(лужение дорожек печатной платы необходимо для того, чтобы схема оставалась рабочей на долгое время);
  7. Сверление отверстий сверлом;
  8. Установка в отверстия печатной платы электронных компонентов;
  9. Обработка отверстий флюсом и разогревание паяльника;
  10. Пайка компонентов;
  11. И, наконец, подготовка к работе компьютера и микроконтроллера и прошивка arduino ide.

Впрочем, весь процесс может проходить в течении 2-3 часов, смотря на то, какие у кого навыки в изготовлении собственных печатных плат и к пайке электронных компонентов. Итак, пришло время сказать вот такое выражение: " В теории всё понятно, а как на деле". А то мы, радиолюбители и профессионалы, не только ради теорий и знаний занимаемся электроникой.

Часть № 3. Реализация проекта

Все этапы работы я покажу по фото и опишу их с помощью комментариев.

Также необходимо начертить схему для печатной платы.

Кнопка потребуется для сброса системы,светодиод присоединен к выводам 13-ый пин ATmega328P PU и земля для индикации состояния микроконтроллера, кварцевый резонатор нужен именно 16 МГц, так как при меньшей частоте микроконтроллер либо будет работать медленно и даже очень, либо вовсе работать не будет. Пять проводов находящихся на верхней стороне схемы необходимы для программирования через программатор или arduino uno. Питаться схема может по двум проводам либо на дне печатной платы, на двух штырьках, либо два крайних штырька на её поверхности.

Теперь начну подробнее описывать аспекты каждого из этапов.

1) На этом этапе необходимо подготовить все компоненты для создания печатной платы. Ножницы необходимы для того, чтобы разрезать стеклотекстолит. Перчатки, соответственно, для чистоты рук и гигиены. На рисунке также имеется уже готовая печатная плата с необработанной поверхностью. Тряпка нужна для обработки печатной платы (на втором этапе). Стол лучше, конечно, выбрать другой, по ровнее.

2) Уайт-спирит наливаем в контейнер объемом, как крышка, выливаем на тряпку, не ждём, пока она засохнет, и переходим к следующему действию. А затем очищаем и обрабатываем стеклотекстолит, если уж очень грязно, то придётся задействовать шкурку (бумага). Он будет готов к дальнейшей работе только после того, как он станет очищен на 100%. После оставляем будущую печатную плату высыхать, чтобы бумага со схемой не намокла и не испортила нам настроение.

3) По моему мнению, схема получилась довольно таки красивая. Все аккуратно и четко стоит на своём месте. Для того, чтобы распечатать схему на стеклотекстолите необходимо ровно положить шаблон на очищенный текстолит и начинать утюжить. Утюг стоит двигать равномерно по всей площади печатной платы, в течение времени равной не менее трёх минут. Надо ждать до того момента, когда абсолютно весь чернильный рисунок расплавит с я. И тогда отличный результат будет неизбежен.

После этой процедуры надо дождаться того, пока печатная плата, точней её температура, достигнет комнатной и опустить плату в ёмкость с тёплой или горячей водой. Несколько минут подождать, и потом, держа в ладони печатную плату, только большим пальцем снимать приклеенную бумагу. После очистки надо убрать воду с печатной платы.

4) На этом этапе меньше всего будет хлопот. Потребуется только лишь ваше терпение и время. Опустите печатную плату в пластиковую ёмкость с раствором хлорного железа. Растворить в ёмкости хлорное железо в воде надо в соотношении 1\2, то есть 100 мл воды теплой и 50 г. хлорного железа.Вылить в плоскую пластмассовую миску. Этим раствором можно будет пользоваться достаточно много. В течение 30-60 минут необходимо ждать, опустив печатную плату в раствор хлорного железа, пока плата протравиться, то есть лишняя медь уйдет с стеклотекстолита. Контролируйте ход травления плату. Вынимать следует при помощи пластмассового пинцета. Если процесс травления идёт долго то можно увеличить температуру раствора до 50-70 градусов, или добавить в раствор ещё хлорного железа.

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

6) Процесс на этом этапе то не является сложным, так как тут тоже требуется лишь терпение и время. Необходимо просто положить печатную плату в раствор солей олова,но не затягивать, всего лишь держать в растворе 10 минут, если передержать половину дня, то вся схема может просто отшелушится и растворится. Вообще, раствор предназначен для быстрого покрытия оловом печатных плат или медных деталей простым и технологичным способом для предотвращения окисления и подготовки поверхности под пайку в домашних условия. Раствор же использовать при комнатной температуре в полиэтиленовой посуде. Деталь надо предварительно зачистить и обезжирить, и при этом толщина покрытия составит 1 мкм. В одном литре раствора можно залудить до 50 км дм поверхности возможно многократное использование. Не рекомендуется совместное хранение свежего и отработанного раствора. Срок годности состава без ухудшения свойств до двух лет.

7) Отверстия следует делать очень тонким сверлом чтобы умело и точно можно было бы припаивать электронные компоненты. Желательно чаще пользоваться флюсом или канифолью (сосновой) , так как с помощью них можно отлично паять.

8) Только лишь точная установка всех компонентов может с успехом повлиять на удобство пайки компонентов. Необходимо чётко все разместить, чтобы место осталось свободное на печатной плате и к тому же чтобы помочь самому себе, то есть тебе легче будет припаивать компоненты, если будет свободное пространство.

9) Этот пункт нет смысла описывать, так как в нём всё ясно

10) Паяйте как можно аккуратнее, если хотите получить отличный мини аналог Arduino Uno.

11) После всех предыдущих этапов я надеюсь у вас уже есть стоящий прототип и теперь можно приступать к настройке компьютера и программирования микроконтроллера.

Необходимо подключить провода именно так:

Мини аналог RST RX TX +5V GND (считая слева направо на правой картинке.)
Arduino Uno RST RX TX +5V GND

И после этого можно легко программировать микроконтроллер прямо с Arduino IDE ка Arduino Uno.

Часть № 4. Заключение

Микроконтроллерные платы получились я надеюсь у всех читателей отличными. Все эти печатные платы можно использовать для создания и разработки многих устройств или даже роботов.

Тут представлен стабилизатор напряжения на lm7805ct (5 вольт). Если он будет перегреваться, всё тепло будет идти на стеклотекстолит.

Из этого урока можно сделать вывод, что arduino можно сделать и за более дешёвую сумму чем в магазинах и я надеюсь, что эта статья не позволила вам потратить ваше время зря. Всем кто читал - спасибо, а кто будет комментировать и учитывать мои промахи, тем двойное спасибо, так как я буду признавать свои ошибки и, надеюсь, в будущем буду исправлять их.

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
МК AVR 8-бит

ATmega328P

1 DIP В блокнот
Зарубежные Светодиод 2 Зелнный и синий

Хочу представить вам свой проект-вариант широко известного контроллера Arduino.
Начну с короткой предыстории. Электроникой и радиотехникой я занимаюсь больше 10 лет. А вот интерес к микроконтроллерам появился не так давно. Изучал язык С, программировал микроконтроллеры от , успех был переменчивым. И как-то, изучая просторы интернета на тему программирования микроконтроллеров, попал на сайт www.arduino.ru . Их контроллеры мне понравились, захотелось такой себе. Поскольку паяльник «в руках держать умею», покупать контроллер отказался и начал искать в интернете информацию по самостоятельному его изготовлению, но ничего подходящего не нашел. Вариант платы, которую собирают на страницах http://robocraft.ru/blog/arduino/19.html сайта, мне не подходит, да и не сильно нравится. Хотелось с USB разъемом.

Скачал файлы схем оригинальных версий контроллера Arduino, даташит на микросхему FT232R, распечатал статью "Ардуино хоум мэйд" (ссылка выше) и думал как это все соединить, чтобы получилось то, что я хотел найти. И получилась вот такая схема:

Используемые в схеме детали:
Резисторы я использовал SMD типоразмером 0805:
- R1, R2, R4, R7 – от 300 Ом до 1 кОм (какие найдете);
- R3 – 10 кОм;
- R5, R6 – 1 кОм.

Конденсаторы:
- С2, С3, С5, С13, С8, С10, С11 – SMD (0805) номиналом 0,1 мкф;
- электролиты С1, С4, С9, С12 – я использовал по 22 мкф*50 В, мне они подошли по высоте. Номинал не особо важен, не ниже 10 мкф на напряжение не ниже 10 В, кроме С9, его напряжение должно быть больше не 20 % напряжения питания внешнего источника;
- С6, С7 – керамика по 22 пф.

Светодиоды любые (форма, габариты, цвет) на ток 15-20 мА. Диод D5 – 1N4007 тоже в SMD корпусе.
Кварц – 16 МГц.

Микросхемы:
- DA1 – L7805 в корпусе ТО220;
- DD1 – FT232RL (хорошая микра, но в большем корпусе не выпускают);
- DD2 – сам наш микроконтроллер, я использовал ATmega168, можно ATmega8, думаю, что и ATmega328 тоже подойдет, главное загрузить соответствующий загрузчик (bootloader).

По итоговой стоимости точно сказать не могу (SMD компоненты не покупались, нашлись в коробочках электронщика-радиолюбителя). А затраты были следующие (г. Ростов-на-Дону): FT232RL – 200 р., ATmega168 – 220 р., L7805 – 15 р., разъемы, предохранитель, гребенки, панелька, кнопка – около 100 р.
При подключении собранного устройства к компьютеру определится новое устройство, нужно установить драйвер, указав путь к директории «FTDI USB Drivers» (в скаченной программе Arduino IDE).

С печатной платой (ПП) были некоторые проблемы, но мне помогла картинка ПП в статье. Все распиновки и расстояния разъемов совпадают с оригинальной платой ардуино, можно будет подсоединять различные arduino-совместимые платы расширения.

Назначение этого контроллера может быть самое различное – от "учебника" по программированию до создания серьезных охранных систем. Информации по его применению в интернете очень много.
Работает контроллер просто. На компьютер устанавливается программа Arduino IDE, скаченная бесплатно с официального сайта www.arduino.cc . В ней Вы пишите свою программу (скетч) для исполнения контроллером. Потом, нажимая кнопку в среде Arduino IDE "загрузить", компьютер компилирует Вашу программу в язык понятный микроконтроллеру и через виртуальный com порт, созданный микросхемой FT232R, передает ее микроконтроллеру. После загрузки программы, она начинает сразу исполняться, если не отключено питание контроллера. Также микросхема FT232R имеет выходной сигнал для автоматического перезапуска микроконтроллера, необходимого при загрузке скетча. Плата контроллера может питаться как от usb, так и от внешнего источника питания (8-25 В) для чего установлен микросхемный стабилизатор L7805. Присутствует на плате предохранитель 500 мА по +5 В от usb, чтобы не повредить usb порт при неполадках в плате контроллера. С помощью разъема ICSP можно программировать микроконтроллер внешним программатором. Кнопка, установленная на плате, сбрасывает работу микроконтроллера, и он начинает исполнение загруженной программы заново. Диод D5 защищает микроконтроллер от переполюсовки питания.

Фото готового контроллера:

Расположение некоторых деталей на фото платы не совпадает с файлом ПП, по причине совершенствования на момент создания статьи. Файл ПП в программе прилагается.

Правильно собранный и прошитый контроллер начинает работать сразу. Отмечу – что после первой (и возможно последующей) загрузки бутлоадера, начинает моргать с небольшой частотой светодиод D3.

Прошить бутлоадер готового устройства несложно. Самая сложность заключается в наличие программатора. Поскольку я имел опыт программировать микроконтроллеры, то у меня уже был собран программатор Prottoss AVR910 . Лошадка рабочая, автору 5 из 5! Далее подключаем программатор к плате ардуино, открываем программу для программирования микроконтроллеров AVR (я использовал ), открываем окно прошивки микроконтроллера, нажимаем load flash, находим наш (для ATmega168) файл прошивки в скаченном дистрибутиве «…arduino-1.0.1\hardware\arduino\bootloaders\atmega\ ATmegaBOOT_168_diecimila.hex. Далее необходимо выставить lock и fuse биты так, как показано на рисунке:

Узнать фьюз- и лок-биты для своего микроконтроллера можно посмотреть в файле: «…arduino-1.0.1\hardware\arduino\boards.txt», использовав калькулятор фьюзов для AVR (можно легко найти в интернете).
Если же у Вас нет программатора, но есть программатор у друга, соседа.., то есть другой, более быстрый и полезный способ прошить загрузчик. Для этого нужно собрать программатор . Схема рабочая и проверенная мной. Простота этого метода заключается в том, что не нужно искать прошивку микроконтроллера, выставлять фьюз и лок-биты. При подключении этого программатора к компьютеру с установленными драйверами и подключенным программируемым МК, Вы, выбрав в программе Arduino IDE порт, на котором «сидит» программатор и свою прошиваемую плату и подключенный программатор, просто нажимаете на кнопку во вкладке сервис «прошить загрузчик» и радуетесь.

Если же у Вас присутствует проблема "яйца и курицы", то я посоветую собрать вот этот программатор (сам его не собирал, но думаю вешь хорошая). Или погуглить интернет на тему AVRISP-mkII. Еще вложу архив с информацией по этому программатору с файлами и описанием.

Про альтернативный метод прошивки бутлоадера можно почитать .
Теперь (с устанвленными драйверами на компьютере, открываете программу Arduino IDE, во вкладке «Сервис» наводим курсор на вкладку «плата» и выбираем свое устройство (в моем варианте это – Arduino Diecimila or Duemilanove w/ ATmega168). Далее, там же, выбираем порт к которому подключен контроллер (можно посмотреть в диспетчере устройств компьютера). Реализуем свои мысли в скетче и радуемся работе контроллера!

Все возникшие вопросы присылайте в личку.
Плату контроллера разработал и успешно использует ростовский радиолюбитель Ананьев Валерий . Логин на сайте:

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
DD1 ИС USB интерфейса 1 В блокнот
DD2 МК AVR 8-бит

ATmega168

1 В блокнот
DA1 Линейный регулятор

L7805AB

1 ТО220 В блокнот
D1-D4 Светодиод 4 Любые на ток 15-20 мА В блокнот
D5 Выпрямительный диод

1N4007

1 SMD В блокнот
Q1 Кварцевый резонатор 16 МГц 1 В блокнот
С1, С4, С9, С12 Электролитический конденсатор 22мкФ 50В 4 В блокнот
С2, С3, С5, С8, С10, С11, С13 Конденсатор 0.1 мкФ 7 SMD (0805) В блокнот
С6, С7 Конденсатор 22 пФ 2 Керамический В блокнот
R1, R2, R4, R7 Резистор От 300 Ом до 1 кОм 4 SMD (0805)

Arduino – это потрясающая электронная платформа для создания радиолюбительских проектов. Она проста в использовании и намного дешевле профессиональных отладочных плат.



Но Arduino можно сделать еще дешевле, не приобретая заводскую плату, а сделав ее самостоятельно. И в этом материале будет рассказано, как сделать Arduino своими руками, используя компоненты из местного радиомагазина.


Шаг 1: компоненты



Для Arduino нам понадобятся:


Микроконтроллер ATmega 168
Плата для прототипирования (440 или 840 контактов)
Провода сечением 22 AWG
Регулятор напряжения 7805
Два светодиода
Два резистора 220 Ом
Один резистор 10 КОм
Два конденсатора 10 мкФ
Осциллятор 16 МГц
Два конденсатора 22 пФ
Кнопка
Штыревой разъем
Конвертор интерфейсов RS232-USB на 3.3 В

Шаг 2: организация цепи питания


В первую очередь нам нужно подвести питание для нашего микроконтроллера. Для этого мы воспользуемся регулятором напряжения 7805 на +5 В. На рисунке показана схема соединения.



Чтобы регулятор работал правильно, входное напряжение должно быть больше +5 В, например, в качестве источника подойдет батарейка +9 В. Питание заводится на красный (+) и черный (-) квадраты. Затем следует конденсатор на 10 мкФ. Поскольку он является электролитическим, то нужно соблюдать полярность. Как правило, вывод анода (+) длиннее вывода катода (-). Также большинство конденсаторов маркируются полосой на стороне катода. Дальше идут два провода, которые «перебрасывают» питание на другую часть платы. Затем следует регулятор напряжения. Здесь также нужно не ошибиться с полярностью. Если смотреть на него с фронтальной стороны, то левый контакт будет входом (Vin), средний землей (GND), а правый выходом (Vout). К выходу также, соблюдая полярность, подключаем конденсатор 10 мкФ.


Для большего удобства использования линии питания «перекинем» ее на левую сторону платы:



Также хорошей идеей является добавление светодиодного индикатора, позволяющего узнать, подключено ли в данный момент питание или нет. Подключение светодиода производится через резистор 220 Ом (на рисунке промаркирован двумя красными и одной коричневой полосами). Резистор соединяем с анодом (обычно длинный вывод) светодиода. Катод заводим на землю.



Шаг 3: выводы Arduino


Теперь нам нужно взять микроконтроллер. В данном случае используется ATmega 168 компании Atmel, но можно взять и ATmega 328. ATmega 328 работает на той же скорости и имеет тоже назначение выводов, но у нее в два раза больше флеш-памяти и памяти EEPROM.


Назначение выводов для Arduino можно наблюдать на следующем рисунке:



Шаг 4: подключаем компоненты


Подключение рассмотрим сначала относительно одной стороны микроконтроллера, затем другой стороны. Схема для стороны выводов 15-28:



Заведите землю на вывод 22. Затем питание на вывод 21 (аналоговое опорное напряжение для АЦП) и вывод 20 (питание для АЦП). На оригинальной плате Arduino вывод для светодиода обозначается как Pin 13, но по отношению к микроконтроллеру это будет вывод 19. Поэтому на 19-й вывод заводим анод светодиода, а его катод через резистор 220 Ом подключаем на землю. При программировании следует помнить, что для зажигания светодиода нужно ссылаться на 13-й вывод (Pin 13).


Теперь перейдем к противоположной стороне (выводы 1-14):



К выводу 1 подключите кнопку. Она будет использоваться для сброса микроконтроллера. Прежде чем записывать новый скетч в Arduino, нужно будет нажимать на кнопку сброса. От соединения кнопки с выводом 1 должен быть подключен резистор 10 КОм на питание. А второй контакт кнопки должен быть заземлен. Вывод 8 (GND) также должен быть заземлен, а вывод 7 (VCC) должен быть подключен к питанию. Осциллятор 16 МГц подключается к выводам 9 и 10. От него также идут конденсаторы 22 пФ на землю.


С левой стороны изображения присутствует разъем для программирования. Функционал выводов, начиная с крайнего левого следующий: GND, NC, 5V, TX, RX, NC. NC значит никуда не подключен. Вывод RX подключаем ко второму выводу контроллера, а TX к третьему. Теперь можно программировать эту самодельную плату Arduino.


Шаг 5: Программирование



Теперь нам понадобится плата конвертера интерфейсов USB-TTL. В качестве конвертера может выступать, например, FT232RL. После подключения данного переходника к выводам TX и RX, а также линии питания +5В нужно запустить среду разработки Arduino IDE и выбрать пример (раздел Example sketch files) Blink из подраздела Digital. Теперь нужно выбрать активный COM-порт USB-переходника, например, COM1 или COM9. Далее в зависимости от используемого микроконтроллера нужно выбрать плату (раздел Tools/Board): Arduino Decimila, Duemilanove or Nano w/ATmega128 или Arduino Duemilanove w/ATmega328.