Опубликовано

Как выбрать ардуино

Платформа Arduino Ethernet на основе ATmega328, взятая с Uno, может подключаться к сети Ethernet,функциональность необходимая во множестве проектов. Физически, платформа Arduino Ethernet имеет те же14-дискретных входов / выходов, как Arduino Уно, с темисключением, что 4 используются для управления модулем Ethernet и встроенным считывателем микро-SD карт, ограничиваяколичество доступных выводов.

Интересноотметить, что Arduino Ethernet имеет дополнительный модуль POE (Power Over Ethernet). Эта опция позволяет Arduino Ethernet питаться непосредственно от сети Ethernet, без необходимости использования внешнегоисточника питания при условии, что питание POE подключено на другом конце кабеля Ethernet. Без POE Arduino должен быть запитан с помощью внешнего источника питания.

Еще одно отличиеот других плат Arduino — это отсутствие разъема USB. Потому что довольно много места занято разъемом Ethernet, зато устройство поддерживает коммуникации черезобычные выводы.

Arduino Mega 2560

Arduino Mega 2560

лиш немного длиннее, чем Arduino Uno, но она имеет значительно больше каналов ввода — вывода. Она имеет в общей сложности 54 цифровых линий ввода / вывода и 16 аналоговых входов. Она также имеет большое количество флэш-памяти: 256 КБ, что позволяет хранить большие программы, чем Uno. Она также имеет немалую SRAM и EEPROM: 8 КБ и 4 КБ, соответственно. Она также имеет 4 аппаратных UART порта, что делает ее идеальной платформой для коммуникаций с несколькими устройствами параллельно.

Платы Arduino Mega используются там, где необходимо большое количество входов и выходов.

Arduino Mini

Платформа Arduino Mini это крошечное устройство, используемое в проектах, требующих максимальной экономии места. Она содержит 14 цифровых входов / выходов и 4 аналоговых входных контакта. (Еще четыре доступны, но не выведены.) Устройство настолько миниатюризировано, что не имеет ни USB-разъема, ни регулятора мощности ни даже гребёнки для подключения периферии. Программирование осуществляется с помощью внешнего USB или RS232 через TTL последовательный адаптер.

Arduino Micro

Контроллер Arduino Micro

полностью соответствует своему названию; это одна из самых маленьких плат из линейки Arduino. Несмотря на свой небольшой размер, она все же имеет большое количество входных и выходных выводов; она имеет 20 цифровых каналов ввода / вывода, из которых 7 могут быть использованы как выходы ШИМ. Она также имеет 12 аналоговых входов. Микро не спроектирована, для наращивания подсоединенными шилдами, но у её такое расположение выводов гребенок, что её удобно размещать непосредственно на макетной плате.

Arduino Due

Контроллер Arduino Due отличается от всех Arduino тем, что он спроецирован не на базе AVR, а на чипе Atmel SAM3X8E архитектуры ARM Cortex-M3. Этот передовой микроконтроллер работает на частоте 84 МГц и является полноценным 32-разрядным устройтвом. Он имеет большое количество дискретных и аналоговых входов / выходов: 54 цифровых канала (12, из которых могут быть использованы в качестве ШИМ) и 12 аналоговых входов. На плате предусмотрены 4 UART, порт SPI, интерфейс Twin-Wire, а так же включает в себя порт JTAG.

Платформа Arduino Due имеет более высокие требования пи питанию и питается от 3,3 В. Будьте осторожны, чтобы не подать 5 В на любой из выводов: в противном случае, вы можете спалить плату. При выборе шилда расширения для Due, убедитесь, что он поддерживает питание 3.3 В.

Arduino Due невероятно мощный Arduino. Due имеет на борту 512 КБ флэш-памяти и в суммарно 96 КБ SRAM. Он может обрабатывать крупнейшие программы на высокой скорости. Если вам нужны мощные вычислительные процессы, то эта Ардуина для вас.

LilyPad Arduino

LilyPad Arduino — довольно интересное устройство. Оно выпадает из привычных стереотипов об обычном Arduino, потому что имеет не прямоугольную, а круглую форму. Во-вторых, оно не поддерживает механические соединения с шилдами. Оно предназначено для, небольших автономных устройство. Круглая форма продиктовала то, что разъемы равномерно распределены по окружности, и его небольшой размер (2 дюйма в диаметре) делает его идеальным для переносных устройств. Это устройство легко спрятать, и несколько производителей разработали устройства, специально для LilyPad: экраны, датчики света, даже коробки для батарей питания, которые могут быть зашиты в ткань. Для того, чтобы сделать LilyPad как можно меньше и как можно легче, на сколько возможно, были принесены некоторые жертвы. У LilyPad нет регулятора напряжения на борту, так что ему для питания будет необходимо обеспечить по крайней мере 2,7 вольт, и не более 5,5 вольт; в противном случае, будет пшик.

Arduino Pro

Контроллер Arduino Pro заявлен в двух версиях, на основе ATmega168 и ATmega328. Версия 168 работает на 3,3 В с тактовой частотой 8 МГц, а версия 328 работает на 5 В и частоте 16 МГц. Обе версии имеют 14 цифровых входов / выходов и 6 аналоговых входов. Контроллер имеет разъем питания батареи JST, переключатель для выбора между режимами питания, и пространство, отведенное для модуля питания, при необходимости. На плате нет порта USB, но вместо него используется кабель FTDI для программирования.

Arduino Pro отличается от большинства других Arduino тем, что являясь отдельной самостоятельной макетной платой, он также может быть использован для расширения функционала других контроллеров в качестве шилда. Он выпускается без портов и привычных гребёнок. Все цифровые и аналоговые входы и выходы расположены по краям платы, сохраняя стандартное для Ардуино расположение отверстий, готовых к припаиванию гребенок или проводов, по необходимости. Вместо использования для прототипирования новых проектов, Arduino Pro больше направлен на окончательный монтаж в готовой продукции. Arduino Pro не разрабатывался самим Arduino, а был разработан и запущен в производство фирмой SparkFun Electronics.

Arduino Robot

Arduino Robot, это попросту говоря, Arduino на колесах. В его состав входят две платы контроллеров — один управляет двигателями на борту, а другой обрабатывает сигналы датчиков. Управляющий контроллер дает команды плате управления двигателями о том, что делать.

Управляющая плата контролируется чипом ATmega32u4, с 32 КБ флэш, 2,5 КБ SRAM и 1 Кбайт EEPROM памяти. Она также имеет внешнее I2C EEPROM устройство, обеспечивая больше места для хранения информации. На борту есть компас, динамик, три светодиода, клавиатура на пять кнопок и ЖК-экран. Она также имеет три вывода под пайку для внешнего I2C устройства. Она также имеет отдельные каналы ввода / вывода, с пятью цифровыми входами / выходами, шестью ШИМ и четырьмя аналоговыми входами. Оставлено место для восьми аналоговых входов (для датчиков расстояния, ультразвуковых датчиков или других) и шести дискретных входов / выходов для других устройств (четыре из которых могут быть использованы для аналогового входа).

Плата двигателей полностью независима, основана на ATmega32u4, тоесть на том же чипе что и плата управления. Плата двигателей имеет в своем составе два двигателя с колесами, запитанных отдельно, пять ИК датчиков, I2C и SPI порты. Она также содержит батарейный блок, в который вставляется четыре аккумуляторные батареи типа АА, а так же содержит гнездо для подзарядки аккумуляторов на борту. Плата может быть также запитана от разъема USB, но в этой конфигурации, из каких-то соображений безопасности, двигатели при этом отключаются.

Arduino Esplora

Arduino Esplora это довольно странное устройство. Большинство плат Arduino предназначены для стационарного размещения на столе или в щите, но Esplora предназначен для держания руками. Основан ATmega32u4, геометрически не совместим с шилдами и не имеет на борту контактов для входов и выходов. Вместо этого, он выглядит и ощущается в руках как геймпад; у него есть курсор под большой палец в виде четырех дискретных кнопок, один аналоговый джойстик, а так же линейный потенциометр. В качестве обратной связи предусмотрены зуммер и трехцветный светодиод. Esplora также имеет следующие датчики: она имеет на борту микрофон, датчик температуры, разъем для подключения ЖК-экрана и трех-осевой акселерометр. У Esplora 32 Кб флэш памяти; 4 Кб используются загрузчиком. Так же имеется 2,5 Кб SRAM и 1 Кбайт EEPROM памяти. Для совместимости Esplora c другими контроллерами, предусмотрены 4 разъёма TinkerKit: с двумя входами и двумя выходами.

Arduino Yún

Платформа Arduino Yun базируется на чипе ATmega32u4, но он также имеет Atheros AR9331 на одной плате. Процессор Atheros имеет полный дистрибутив Linux, на основе OpenWRT, операционной системы распространенной в беспроводных маршрутизаторах на Linux. Плата Arduino Yun имеет встроенный Ethernet и WiFi, а также слот для micro-SD. Юн отличается от других Arduino и шилдов тем, что у него серьезная сетевая функциональность; Arduino может посылать команды в OpenWRT, и дальше продолжать обработку своего скетча. Оба процессора работают самостоятельно, существующая библиотека обмена данными облегчает коммуникацию между двумя процессорами.

Arduino Tre

Arduino Tre только планируется запустить в производство но обещает стать феноменальным монстром в сфере любительских контроллеров. До этого момента, самым быстрым Arduino был Due, на основе ARM-совместимого микроконтроллера. Tre, созданный Arduino и BeagleBoard, сочетает в себе мощность полного компьютера с гибкостью каналов ввода / вывода платформ Arduino. Tre будет иметь процессор класса Cortex-A8 под названием Sitara AM335X, работающий на частоте 1 ГГц. Этот процессор имеет доступ к 512 Мб оперативной памяти и имеет HDMI порт способный отображать Full HD (1920 х 1080). Вся эта мощь сопряжена с интерфейсом разработчика с помощью Atmel ATmega32u4 используя среду программирования Arduino, столь полюбившуюся фанатам.

Arduino Zero

Arduino Zero это новый Arduino на чипе Atmel SAM D21 микроконтроллера. У него 256 Кб флэш-памяти, 32 Кб оперативной памяти, и работает он на частоте 48 МГц. Arduino Zero предназначен для удовлетворения будущих потребностей сообщества разработчиков, предлагая дизайн, который одновременно является мощным, надежным, и достаточно гибким, который будет востребован в робототехнике и переносных проектах.

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

Для тех кому лень читать, озвучу важный вывод с некоторым опережением.
Все «размеры» и разновидности ардуино-плат абсолютно совместимы друг с другом — если вас заинтересовал проект на — ничто вам не помешает реализовать его на обычной () или (), причём ни в коде ни в схеме переделывать ничего не придётся. Можно и наоборот, например, с «меги» на «» — лишь бы выводов/памяти хватило (часто в проектах применяются откровенно избыточные платы), изучайте характеристики. Так же никакой разницы нет в выборе конкретной платы внутри размерного ряда — берём проект для () и спокойно делаем его на () и наоборот!
Тем более нет НИКАКОЙ принципиальной разницы, кто сделал эту плату и как она называется — это не айфон — качественно можно собрать такую плату и в подвале.
Ниже обо всех нюансах, подробно и с картинками.
Как известно, ардуино придумали в Италии, оригинальные платы там и делают. С них и начнём.
Оригинальные платы.
Сами итальянцы выпускают плату в нескольких основных форм-факторах:
Ardino xxx — стандартный размер, 20входо-выходов, полная совместимость со всеми шилдами.
ArdinoMega xxx — увеличенный размер, 70входо-выходов, совместимость не со всеми шилдами.
ArdinoNano xxx — уменьшеный размер, 22входо-выхода, не совместима с шилдами.
ArdinoMini ххх — ещё меньший размер, 20входо-выхоов, не совместима с шилдами, не имеет USB.
Весь итальянский зоопарк можно увидеть .
Ardino xxx

Стандартный и самый распространённый размер. Когда говорят «ардуина» («обычная ардуина») — обычно все сразу представляют именно такие платы.
Самые первые платы были в этом этом форм-факторе, соответственно именно он пережил больше всего реинкорнаций (USB-версии в хронологическом порядке выхода):
, , , , .
Вы не поверите, но ощутимая разница для пользователя наблюдается только в Леонардо=))
Сейчас на оф. сайте предлагается к покупке только Leonardo и Uno, однако интернет завален вариантами Duemilanove (наша именно её разновидность=) и не зря — всё что нужно среднему пользователю было воплощено ещё в Ardino Extreme, с тех пор поменялось крайне мало=)
Все эти платы имеют одинаковое количество входов-выходов, собранных на одинаковые разъёмы (для подключения перефирии и шилдов), программируются по USB, и имеют микроконтроллер ATMega на борту. На ранних версиях стоял , потом стали ставить , потом .
На «восьмёрке» только 3 ШИМ выхода, 8Кб под скетч 1Кб оперативки, но для многих приложений хватает=) У ATMega168 уже 6 ШИМ каналов и 16Кб под ваши нужды, а у 328-й 32Кб под программы и уже 2Кб оперативки. Кстати не вся флеш-память доступна пользователю, часть её занимает бутлоадер. На всех платах до UNO стоял чип-преобразователь USB-UART , позволяющий втыкать плату прямо в USB и программировать без программатора. При в системе появлялся виртуальный COM-порт, который и используется для программирования.
UNO

На UNO решили заменить хардварный преобразователя USB-UART, на микроконтроллер (в более поздних ревизиях )- в него залита специальная прошивка, делающая ровно то же что и FT232.
Что это дало?
Поднялась скорость прошивки — теперь вместо ~10секунд надо ждать ~3c =)
А главное, в этот МК-конвертор можно залить свою прошивку, и превратить ардуино в мышку, клавиатуру или миди устройство… наверняка кому-то это очень надо=)
Только делается это как-то не очень по-ардуиновски, и пока крайне мало=( ИМХО, фича, совсем не для начинающих.
Так что, если ваша цель изменение протокола обмена платы и компа, вы хотите делать трушную клаву-мышь-МИДИдевайс ( вот, кстати, «не трушный» , на самой обычной ардуине=) тогда конечно вам нужна именно UNO. И если вам предстоит писать объёмную прошивку для этого (использовать исходники большого объёма), тогда нужно искать последнюю ревизию UNO — с Atmega16U2 (у неё в два раза больше памяти программ)
Да, тут ещё стоит оговориться — эта Atmega8U2/16U2 на самом деле делает не ровно то же, что FT232, она не реализует очень удобной фичи — -а, так что превратить плату в программатор таким нехитрым образом уже не получится.
Но всё же .
«стандарт» arduino 1.0 pinout
Ещё зоркие должны были заметить появление новых пинов на разъёмах UNO. Ага, появились — на «верхнем левом» коннекторе — SDA и SCL — пины , но они дублирующие (SDA и SCL и так сидят на 4 и 5 аналоговых входах) и функционал это не расширяет. Плюс «нижний левый» коннектор подрос, то же на 2 пина — резервный и IOREF. Резервный пин болтается в воздухе — никуда не подключен, а на IOREF глухо засажен на 5 вольт (). Когда-нибудь это всё, наверное пригодится… а на данный момент — старые шилды встают в UNO, как родные, новые шилды (коих пока крайне мало , ), полностью совместимы со старыми платам хотя и грозят уткнуться в неё новыми пинами — их, возможно, придётся подогнуть или откусить.
Резюмируя моё сугубо личное мнение — нет никаких поводов гоняться именно и только за UNO, кроме случая когда вы собираетесь переписать прошивку USB-UART конвертора, а если вы не знаете что это — то вам точно нет никакой необходимости именно в уне=)
всё то же про уну но по-короче=)
Leonardo
Вот это действительно шаг вперёд — всё на одном чипе, USB независим ни от UART ни вообще от каких бы то ни было пинов!
Итак, плата построена на и по сравнению с предыдущими моделями прокачалась.
На 0,5кБ увеличилась оперативка, ШИМ-выходов стало на 1 больше, аналоговых входов стало 12 (6 сидят где у всех Ардуино-плат, новые +6 разбросаны по цифровым пинам) и, как уже говорилось, разделены USB и UART.
Так же незатейливо поддерживаются, не только виртуальный ком порт, но и , гораздо проще чем это реализовано в UNO.
Ну и, конечно, разъём micro-USB=)
Правда «шаг вперёд» вышел с нюансами — долго боролись с разнообразными глюками и затягивали выход, пара всё-таки осталась (функции и ), к тому же бутлоадер теперь занимает 4кб! А ещё в любой скетч для леонардо пихается поддержка USB — blink для Duemilanove/UNO займёт 1084 байт, а для Leonardo — 4858 байт=\
Физически леонардо имеет ту же разводку что и UNO, так что так же совместим со старыми шилдами.
ArdinoMega xxx
Серия прокачанных плат (по размеру и характеристикам) представлена моделями (в хронологическом порядке): , и
В платы успешно втыкаются почти все шилды, но из-за разного (с «обычными» ардуинами) расположения выводов , шилды использующие его с цифровых пинов 11,12,13 будут не совместимы. Пример — . На SPI берётся со стандартной вилки ISP и всё отлично работает и на «мегах», и на «обычных» дуинах.
На платах куча выводов:
54 цифровых
из них 15 — с ШИМ
16 — аналоговых,
Куча памяти:
128/256кб — флэш,
8кб оперативки,
4кб еепрома
и целых 4 хардварных UART-а!
«Мега» построена на , а «2560» и «ADK» на , поэтому различаются платы обьёмом памяти, к тому же у свежих — 2560 и ADK — USB-часть выполнена на ATmega8U2 (на более поздних ревизиях 2560 — на ATmega16U2), тут всё как у УНО.
А у ADK ещё и USB-host имеется, от которого ожидается большая дружба с Android-телефонами=)
ArdinoNano

Маленькая платка с mini-USB. Шилды к ней не подходят, но сама она удобно втыкается в макетку.
Ранние версии использовали ATmega168, сейчас стоят 328.
В качестве USB-UART моста стоят FT232.
ArdinoMini

Ещё меньшая плата. (Да-да, именно, тут какой-то исторический ляп — ардуино мини, почему-то значительно меньше ардуино нано=)
Пережила — имеющих незначительные отличия в назначении некторых выводов.
С шилдами не совместима, но удобна для встраивания в законченные девайсы — ничего лишнего.
На мини нет USB — программируется она с помощью переходника USB-Serial ( на базе той же FT232).
Так же на плате стоит весьма маломощный стабилизатор, а из светодиодов — только индикатор питания и то на последних версиях=).
Есть варианты платы работающие на 3,3В и 8МГц, раньше ставили ATmega168, сейчас стоят 328.
Тээкс, разобрались с итальянскими оригиналами, пройдёмся по творчеству остальных ардуино-делов.
Проект ардуино — полностью открытый (доступна вся техническая документация необходимая для производства) и платы благополучно копируют и творчески перерабатывают все кому не лень=)
Ограничение касается только названия «Arduino» — его нельзя использовать для обзывания не итальянских плат (китайцы, естественно, плевали=) поэтому более законопослушные производители , много уже , кстати=)
Всё, что наплодили неитальянцы, можно условно разделить на три группы: «клоны», «совместимые» и «ардуино-подобные».
Клоны

Тут всё просто — берём документацию с сайта ардуино и тупо сдаём на производство, при желании изменив цвет маски и название (некоторые китайцы не желают=)
Такие платы («клоны») полностью повторяют ардуину и полностью совместимы с ней. То есть, разница между клоном и оригиналом — только в производителе (+иногда в цвете=) — соответственно различия могут быть только в качестве сборки, качестве компонентов, строгости выходного контроля. С качеством — всё на совести производителя/продавца и на ваше эстетическое восприятие/везение.
В целом, повторюсь — не айфон, никаких космических технологий для сборки таких плат не нужно, и обеспечить достойное качество вполне может средний китайский подвал=) ИМХО за оригиналом гоняться особого смысла нет.
Да, чуть не забыл, у оригинальных плат в комплекте коробочка из тонкого, экологически чистого, цветного картона. И брошюрка с заверениями об экологичности и протестированности платы, а также повествующая, о том, что производители отказываются нести ответственность за использование платы в аэрокосмических/автомобильных/военных/ядерных/медицинских целях=)
)
Совместимые

Некоторые, наверное, более сознательные товарищи, пошли не путём копирования, а решили что-то добавить в проект (помимо своего названия и цвета маски) и повыдумывали ворох своих плат полностью совместимых с ардуино — условно их можно назвать «совместимыми переработками» (переосмыслениями=)
Например:

и ещё многие-многие=)
Как правило доработки и переработки носят довольно эстетический характер (не несут принципиальных изменений функционала или характеристик) иначе платы потеряли бы совместимость. Обычно это дополнительные разъёмы, другое расположение светодиодов и кнопок, своя разводка, применение других компонентов (в других корпусах, других размеров), другие схемы питания, сброса, USB-части.
Повторюсь, этот класс плат полностью совместим с ардуино — и шилды можно втыкать и с ИДЕ работают как родные. Ярчайший пример — указанные на оф. сайте у итальянцев плата (упрощена схема питания и убрана USB-часть) на самом деле их придумали и делает =)
Естественно, основным размером плат не ограничиваются — есть версии и мини- и нано- и мега- совместимых переработок, правда в этих случаях совместимость не такая уж важная вещь.
Тут я всё талдычу совместимо-несовместимо, пора уточнить что имеется ввиду.
Совместимость с ардуино складывается из двух вещей:
1.Совместимости с платами расширениями — шилдами. Для этого расположение и вид разъёмов должен быть как на итальянской Arduino Duemilanove/UNO. Так, например, самая что ни на есть итальянская-оригинальная «Нано» с шилдами не совместима=)
Естественно провода и скотч никто не отменял — соединить можно что угодно=)
2.Програмная совместимость. (программная часть проекта ардуино — это среда разработки(ИДЕ), библиотеки и скетчи)
На платах ардуино установлены микроконтроллеры фирмы Atmel, семейства ATMega — ATMega8/168/328 — на всех кроме Мега(ATMega1280/2560) и Леонардо(ATMega32U4).
Обычно тактируются эти МК кварцевым резонатором на 16МГц (Реже 8МГц)
Питаются МК на платах от 5В (реже 3,3В)
Загрузка скетчей происходит через бутлоадер(специальная программа-загрузчик заранее прошитая в МК), хотя в последних версиях среды появилась опция прошивки скетча через программатор, так что это уже, пожалуй, не критерий=)
Так вот, ЛЮБАЯ плата удовлетворяющая перечисленным условиям (Тип контроллера, частота, напряжение питания, наличие бутлоадера) сможет использовать все наработки сообщества Arduino — и скетчи, и библиотеки, и писать всё это можно будет в той же среде Arduino, и загружать оттуда же.
При наличии прямых рук, можно подпилить библиотеки для использования не в среде ардуино или среду для использования плат с или частотами их работы. Но вроде как у нас тут начинающие рассматриваются — какие правки среды и библиотек?!
Так что будем считать программно совместимыми только те платы, которые корректно заработают без всяких допиливаний.
Ардуино-подобные
Некоторые идут дальше и вносят более существенные изменения теряя совместимость (с шилдами) такие платы можно назвать ардуино-подобными.
К ним можно смело отнести, расположенные в официальном :
— плата для портативных устройств с питанием от литиевых батарей.
— круглая плата для «электронной одежды»
, значительно отличающаюсяя версия ардуино мини.
Всех их, тоже выдумал и клепает =)
Менее известные общественности примеры — древняя — плата для управления кучей сервоприводов. Несмотря на общие с ардуиной очертания — шилды в неё втыкать не выйдет, да и не предполагалось=)

Менее похожая на родоначальника , — для управления светодиодными матрицами,
и ни на что не похожая гибкая версия от .

Или вот ещё мегакомбайн-всё-в-одном тоже совместим лишь программно.

Собственно, как мы уже сказали, ардуино-подобной может считаться (и является) любая плата с ATMega8/168/328/32U4/1280/2560, 16/8Мгц, 5/3,3В, так что в этом месте классификация/перечесление срывается в бесконечность=)
Использованы фотографии с
По теме:
контроллер Arduino или — можно в .

Какую плату Arduino выбрать

Среди всего разнообразия плат Arduino новичку сложно выбрать подходящую. Кроме официальных плат, типа Arduino UNO, Nano, MEGA, существуют еще и ардуино-совместимые платы, типа Digispark, «Электронные войска», Seeeduino, Freeduino, Robocraft и другие. В чем их отличие и какую плату Arduino выбрать? Давайте разберемся!

Совместимость с шилдами и основные отличия

Пожалуй, эта характеристика стоит на ряду с такими как: объём памяти, тактовая частота и тип используемого микроконтроллера. Платы клоны Ардуино можно разделить по подобию с базовыми платами Arduino UNO, MEGA и прочие. Самой распространенной является UNO, собственно большинство клонов связаны, именно с ней. Совместимость с шилдами обеспечивается расположением клеммных колодок и разводкой печатной платы.

Размер платы оригинальной UNO 6.9х5.3 см, размеры плат сторонних производителей могут отличаться, но расположение клеммных колодок и расстояние между разъемами должно оставаться одинаковым. В таком случае плата будет совместима со стандартными шилдами любого происхождения.

Если речь идет в контексте «ардуино», скорее всего, именно эта версия и имеется в виду. Отличия между оригиналом и клоном могут отсутствовать, т.е. полная копия, а разницей могут быть лишь цвет покрытия платы и способ прошивки. USB-serial конвертер, на той же УНО, выполнен на микроконтроллере, тогда как на оригинальных НАНО – на 232-ой микросхеме, а на китайской – на CH340, встречаются и УНО с такими конвертерами, об этом позже.

С другой стороны в отличиях могут быть и схемы питания, и встроенные в плату дополнительные микросхемы-драйверы, защитные цепи, развязочные, расширители портов на сдвиговых регистрах и пр.

Понятие Arduino-совместимая – значит, что она совместима с программой Arduino IDE и соответствующим языком программирования, при этом она необязательно совместима с шилдами. Примером такой платы можно привести Lillypad.

Плата совместима с языком ардуино, но не совместима с шилдами. Если их нужно подключать, то нужно производить подключение вручную к соответствующим пинам. Кстати эта плата ориентирована на носимые устройства, как вариант для умной одежды. Такую плату производит компания SparkFun.

Обзор плат и советы по их применению

Большое количество модификаций и сторонних плат не является плагиатом или подделкой. Так произошло, потому что Arduino ведет открытую политику, что позволяет вносить модификацию в конструкцию и собирать наборы, со свободной комплектацией предназначенные для специализированных сфер:

  • Роботехника;

  • Автоматика;

  • Для обучения и пр.

Названия плат обычно содержат приставку «Duino», как craftduino или DCduino, а модель платы может и совпадать по названию, как та же DCduino UNO, если она дополнена – тогда будет еще одна приставки или совсем другое слово описывающее добавочные функции. Кроме выше перечисленного стоит обращать внимание на напряжение питания и логических уровней, они могут быть 3.3 и 5 В.

Для начала однозначно брать нужно распространенную плату – Arduino UNO-подобную или Nano, первая стоит порядка 5 долларов, вторая немногим дешевле – 3-5 долларов.

Если вам встретится модель под названием Duemilanove, это полный аналог UNO. Отличия лишь в способе связи с компьютером, выше я упомянул, что на UNO она организована на дополнительном микроконтроллере – Atmega8u2, Duemilanove общается с компьютером через FT232RL.

Перейдем к обзору плат. На фото ниже это полные клоны ардуино, ниже мы рассмотрим модернизированные платы.

Iteaduino

Отличный клон UNO, главное отличие – наличие дополнительных контактов разъёма «GVS» (ground-voltage-signal). Это не совсем разъём, а скорее порядок размещения проводов в разъёме. Именно так подключаются многие датчики и прочая периферия.

Но в стандартной гребенке контакты расположены иначе, при этом вам обязательно не хватит контактов питания (Vcc и Gnd), придется скручивать провода, либо использовать беспаечную макетную плату для подсоединения. Разработчики Iteaduino предусмотрели это и решили проблему дублированием контактов типа «папа» в правильной последовательности.

Если вы не нашли такую плату – придется покупать шилд, но работать с ним не так удобно, тем более для начинающего лучше, когда деталей меньше.

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

Arduino Ethernet

Еще одна уно-подобная плата с возможностью подключения к сети по кабелю и установки микро SD-карты. Хотя и есть Ethernet-shield, но опять-таки – он увеличит объём занимаемый платой в корпусе и вес продукта. Плата совместима с шилдами, но на ней отсутствует USB-интерфейс.

Для прошивки нужно дополнительно приобрести USB-UART конвертер вот такой, например, его гребенка подходит к такой же на плате Arduino Ethernet.

Leonardo и Esplora

Модель Arduino для тех, кому нужно много аналоговых входов, для считывания аналоговых датчиков, здесь их 12, против 6 на плате УНО.

Это получилось за счет использования Atmega32u4, а не Atmega328, как на большинстве плат они подключены к пинам, те, что на UNO были цифровым: 4, 6, 8, 9, 10, 12.

Такая разводка позволяет использовать их как раньше, что даёт совместимость с платами расширения или подключать источники аналогового сигнала. ШИМ выводов здесь не 6, а 7.

Исчезла необходимость в USB-UART конвертере, в Atmega32u4 интегрирована аппаратная поддержка USB. Для работы может потребоваться дополнительный модуль PoE. Такие платы отлично подходят для создания контроллеров для ПК, он поддерживает USB HID, и может выступать в роли мыши или клавиатуры или геймпада, с соответствующей обвязкой и деталями.

Интересен Leonardo тем, что при одинаковых размерах и совместимости с UNO имеет больше функций в плане работы с ШИМ и аналоговым сигналом.

На его основе сделана Esplora – по сути плата джойстика совместимая с арудиновским кодом и возможностью программирования и создания уникального девайса. На фото ниже вы видите такую плату с дополнительным дисплеем (в комплект его нет), напоминает портативную консоль.

MEGA и DUE

Если вы собрались делать систему автоматизации для целого дома или другой объёмный проект вам не хватит выводов для подключения всех датчиков и исполнительных механизмов. На помощь придет контроллер Atmega2560, и плата ардуино с аналогичным названием, здесь есть 54 цифровых входа-выхода и 16 аналоговых. Это более, чем в 2 раза больше, чем у тех, что мы рассмотрели выше. К ней продаются соответствующие большие шилды.

UNO-шилды условно совместимы. Только нужно в библиотеках править расположение пинов, потому что их нумерация различна.

Если вам нужно еще больше возможностей, стоит сменить архитектуру. Arduino DUE построен не на МК семейства AVR8, а на ARM CORTEX-M3. Это 32-х разрядный контроллер. 54 цифровых и 12 аналоговых каналов помогут реализовать большой проект. 4 UART интерфейса, SPI, Twin-Wire, JTAG. 512 кб флеш, 96 SRAM, 32 разряда – всё это нужно для высокой скорости выполнения сложных программ.

Напомню, что у атмеги328 всего 32 кб флеш-памяти и 2 кб SRAM

ВНИМАНИЕ:

Питание и напряжение логических уровне – 3.3 В, если хотите убить DUE, подайте на неё 5 В.

Самые маленькие ардуины

Для тех, кому важна мобильность есть целый ряд официальных плат и одна весьма занимательная ардуино-совместимая. Они подходят для тех, кто хочет спроектировать скрытое устройство или носимое (портативное). Давайте рассмотрим их подробнее.

Nano

Актуальная версия – Arduino Nano v3.0. Из маленьких она наиболее удобна, для прошивки используется Mini-b USB-кабель, но китайские копии часто используют micro-USB разъём, который очень распространен для подключения смартфона к компьютеру или его зарядки.

По количеству и назначению пинов она аналогична UNO, но не совместима с шилдами. Кстати, для нано встречаются специализированные шилды (китайцы делают все, что только можно вообразить). Чаще всего китайские копии используют CH340G для связи с компьютером через USB, лично у меня на Windows 8.1 драйвер не установился автоматически, проблема решилась после 2-х минут поиска в гугле по названию микросхемы, дальше всё пошло как по маслу.

Arduino micro

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

Arduino mini – не работает по USB

Самая мелкая плата, аналогичная по функционалу «ункам» и «нанкам» — это «мини». Забавно, что самая маленькая плата, судя по названию, должна быть больше, чем «нано». Получилось наоборот. Экономия размеров достигнута за счет исключения узла связи по юсб (rs232, ch340g и подобных) и самого разъёма. Для этого есть контактные площадки для подключения по последовательному интерфейсу.

Прошивка осуществляется с помощью USB-serial (usb-uart) переходников. Если вы собираетесь заниматься микроконтроллерами – стоит его приобрести, он много где может пригодиться.

Может поставляться как с распаянными контактными площадками, так и просто приложенными в комплекте, для самостоятельной установки.

Самая мелкая Ардуино на attiny

Интересная разработка Digispark. Её форм-фактор напоминают флешку, для её прошивки не нужен кабель, она сама вставляется в USB-порт компьютера.

В вашем распоряжении всего 6 выводов(3 PWM и 4 аналоговых, I2C), 8 Кб флэш-памяти для программ, по 512 б ROM и RAM, 2 кб памяти, как обычно, заняты загрузчиком, так что вам доступно лишь 6 кб.

При прошивке 2 цифровых пина (P3, P4) задействуются под USB, но вы их можете использовать после прошивки, когда отключите от компьютера. Обратите внимание на распиновку – она написана на обратной стороне платы, на картинке справа. Для работы с ней нужно настроить IDE.

Еще несколько особенностей:

1. пин P5 – это «RESET», если подать на него логический ноль – плата перезагрузится, он же A0, т.е. первый аналоговый вход, сигнал может считываться в диапазонах более, чем 1.2 в, поскольку всё что ниже воспринимается, как «ноль» и идёт перезагрузка. Сомнительный пин вообще, но если подумать, как его использовать, и достигает ли измеряемый сигнал вообще нуля, то всё не так плохо.

2. Забудьте о мониторинге порта, Serial отсутствует как таковой, поэтому отладку платы с компьютера проводить не получится. Этого можно и избежать – если больше времени уделить проектированию, ну или использовать внешние измерительные приборы – контрольные лампы, мультиметры, осциллографы.

Заключение

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

Алексей Бартош

Обзор плат ардуино \ Arduino

Платформа Arduino Ethernet на основе ATmega328, взятая с Uno, может подключаться к сети Ethernet,функциональность необходимая во множестве проектов. Физически, платформа Arduino Ethernet имеет те же14-дискретных входов / выходов, как Arduino Уно, с тем исключением, что 4 используются для управления модулем Ethernet и встроенным считывателем микро-SD карт, ограничивая количество доступных выводов.

Интересно отметить, что Arduino Ethernet имеет дополнительный модуль POE (Power Over Ethernet). Эта опция позволяет Arduino Ethernet питаться непосредственно от сети Ethernet, без необходимости использования внешнего источника питания при условии, что питание POE подключено на другом конце кабеля Ethernet. Без POE Arduino должен быть запитан с помощью внешнего источника питания.

Еще одно отличие от других плат Arduino — это отсутствие разъема USB. Потому что довольно много места занято разъемом Ethernet, зато устройство поддерживает коммуникации через обычные выводы.

Заказать на Алиэкспресс Езернет шилд

Arduino Mega 2560

Arduino Mega 2560

лиш немного длиннее, чем Arduino Uno, но она имеет значительно больше каналов ввода — вывода. Она имеет в общей сложности 54 цифровых линий ввода / вывода и 16 аналоговых входов. Она также имеет большое количество флэш-памяти: 256 КБ, что позволяет хранить большие программы, чем Uno. Она также имеет немалую SRAM и EEPROM: 8 КБ и 4 КБ, соответственно. Она также имеет 4 аппаратных UART порта, что делает ее идеальной платформой для коммуникаций с несколькими устройствами параллельно.

Платы Arduino Mega используются там, где необходимо большое количество входов и выходов.

Заказать на Аилэкспресс Мега 2560 R3 с кабелем и коробкой (официал)

Заказать на Аилэкспресс Мега 2560 R3 сама плата (дешевый вариант)

Arduino Mini

Платформа Arduino Mini это крошечное устройство, используемое в проектах, требующих максимальной экономии места. Она содержит 14 цифровых входов / выходов и 4 аналоговых входных контакта. (Еще четыре доступны, но не выведены.) Устройство настолько миниатюризировано, что не имеет ни USB-разъема, ни регулятора мощности ни даже гребёнки для подключения периферии. Программирование осуществляется с помощью внешнего USB или RS232 через TTL последовательный адаптер.

Заказать на Алиэкспресс Arduino Mini ATMEGA328P

Arduino Micro

полностью соответствует своему названию; это одна из самых маленьких плат из линейки Arduino. Несмотря на свой небольшой размер, она все же имеет большое количество входных и выходных выводов; она имеет 20 цифровых каналов ввода / вывода, из которых 7 могут быть использованы как выходы ШИМ. Она также имеет 12 аналоговых входов. Микро не спроектирована, для наращивания подсоединенными шилдами, но у её такое расположение выводов гребенок, что её удобно размещать непосредственно на макетной плате.

КУпить на Алиэкспресс

Pro Micro arduino ATmega32U4 5 В/16 МГц

Arduino Due

Контроллер Arduino Due отличается от всех Arduino тем, что он спроецирован не на базе AVR, а на чипе Atmel SAM3X8E архитектуры ARM Cortex-M3. Этот передовой микроконтроллер работает на частоте 84 МГц и является полноценным 32-разрядным устройтвом. Он имеет большое количество дискретных и аналоговых входов / выходов: 54 цифровых канала (12, из которых могут быть использованы в качестве ШИМ) и 12 аналоговых входов. На плате предусмотрены 4 UART, порт SPI, интерфейс Twin-Wire, а так же включает в себя порт JTAG.

Платформа Arduino Due имеет более высокие требования пи питанию и питается от 3,3 В. Будьте осторожны, чтобы не подать 5 В на любой из выводов: в противном случае, вы можете спалить плату. При выборе шилда расширения для Due, убедитесь, что он поддерживает питание 3.3 В.

Arduino Due невероятно мощный Arduino. Due имеет на борту 512 КБ флэш-памяти и в суммарно 96 КБ SRAM. Он может обрабатывать крупнейшие программы на высокой скорости. Если вам нужны мощные вычислительные процессы, то эта Ардуина для вас.

Купить на Алиэкспресс Ардуино ДУЕ

Arduino nano V3.0 — маленькая, самодостаточная, разъемо-совместимая с макетками плата на микроконтроллере ATmega328. Она более-менее совпадает по функциональности с Arduino Duemilanove/Uno, но имеет другой форм-фактор. Arduino Nano недостает только разъема питания и вместо стандартного использует Mini-B USB кабель (есть в комплекте). Реплика оригинальной итальянской платы, производство Китай.

Для подключения к компьютеру используется микросхема CH340G (ссылка на драйвер внизу).

Driver ch 340

Питание

Arduino Nano может быть запитана от Mini-B USB разъема, 6-20В нерегулируемого внешнего источника питания (пин «Vin») или 5В стабильного внешнего питания (пин «5В»). Питание автоматически переключается на источник с более высоким напряжением.

Память

ATmega328 имеет 32 кБ памяти (из них 2 кБ занято загрузчиком), 2кб SRAM и 1кБ EEPROM.

Характеристики

  • Микроконтроллер: ATmega328
  • Рабочее напряжение: 5В
  • Входное напряжение (рекомендованное): 7-12В
  • Цифровых входов/выходов: 14 (из которых 6 могут быть использованы как ШИМ)
  • Аналоговых входов: 6
  • Сила тока на входах/выходах: 40 мА
  • Сила тока для 3.3В выхода: 50 мА
  • Память: 32 кБ из которых 2кБ используется бутлоадером
  • SRAM: 2 кБ
  • EEPROM: 1 кБ
  • Частота: 16 МГц
  • Купить на Алиэксресс Arduino nano без кабеля

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

Общие сведения

Arduino Uno — это устройство на основе микроконтроллера ATmega328 (datasheet). В его состав входит все необходимое для удобной работы с микроконтроллером: 14 цифровых входов/выходов (из них 6 могут использоваться в качестве ШИМ-выходов), 6 аналоговых входов, кварцевый резонатор на 16 МГц, разъем USB, разъем питания, разъем для внутрисхемного программирования (ICSP) и кнопка сброса. Для начала работы с уcтройством достаточно просто подать питание от AC/DC-адаптера или батарейки, либо подключить его к компьютеру посредством USB-кабеля.

В отличие от всех предыдущих плат Ардуино, Uno в качестве преобразователя интерфейсов USB-UART использует микроконтроллер ATmega16U2 (ATmega8U2 до версии R2) вместо микросхемы FTDI.

На плате Arduino Uno версии R2 для упрощения процесса обновления прошивки добавлен резистор, подтягивающий к земле линию HWB микроконтроллера 8U2.

Изменения на плате версии R3 перечислены ниже:

  • Распиновка 1.0: добавлены выводы SDA и SCL (возле вывода AREF), а также два новых вывода, расположенных возле вывода RESET. Первый — IOREF — позволяет платам расширения подстраиваться под рабочее напряжение Ардуино. Данный вывод предусмотрен для совместимости плат расширения как с 5В-Ардуино на базе микроконтроллеров AVR, так и с 3.3В-платами Arduino Due. Второй вывод ни к чему не подсоединен и зарезервирован для будущих целей.
  • Улучшена помехоустойчивость цепи сброса.
  • Микроконтроллер ATmega8U2 заменен на ATmega16U2.

«Uno» (в переводе с итальянского — «один») назван по случаю предстоящего выпуска Arduino 1.0. Совместно с Arduino 1.0 данные устройства будут базовыми версиями Ардуино. Uno — эталонная модель платформы Arduino и является последней в серии USB-плат; для сравнения с предыдущими версиями, см. список плат Arduino.

Характеристики

Микроконтроллер ATmega328
Рабочее напряжение
Напряжение питания (рекомендуемое) 7-12В
Напряжение питания (предельное) 6-20В
Цифровые входы/выходы 14 (из них 6 могут использоваться в качестве ШИМ-выходов)
Аналоговые входы 6
Максимальный ток одного вывода 40 мА
Максимальный выходной ток вывода 3.3V 50 мА
Flash-память 32 КБ (ATmega328) из которых 0.5 КБ используются загрузчиком
SRAM 2 КБ (ATmega328)
EEPROM 1 КБ (ATmega328)
Тактовая частота 16 МГц

Схема и исходный проект

Файлы EAGLE: arduino-uno-Rev3-reference-design.zip (ПРИМЕЧАНИЕ: совместимо с версиями Eagle не ниже 6.0)

Схема: arduino-uno-Rev3-schematic.pdf

Примечание: В файлах проекта Ардуино могут фигурировать микроконтроллеры ATmega8, 168 или 328. Например, в последних моделях используется микроконтроллер ATmega328, но на схеме может быть указан микроконтроллер ATmega8. Это не является ошибкой, поскольку все три микросхемы полностью совместимы между собой по выводам.

Питание

Arduino Uno может быть запитан от USB либо от внешнего источника питания — тип источника выбирается автоматически.

В качестве внешнего источника питания (не USB) может использоваться сетевой AC/DC-адаптер или аккумулятор/батарея. Штекер адаптера (диаметр — 2.1мм, центральный контакт — положительный) необходимо вставить в соответствующий разъем питания на плате. В случае питания от аккумулятора/батареи, ее провода необходимо подсоединить к выводам Gnd и Vin разъема POWER.

Напряжение внешнего источника питания может быть в пределах от 6 до 20 В. Однако, уменьшение напряжения питания ниже 7В приводит к уменьшению напряжения на выводе 5V, что может стать причиной нестабильной работы устройства. Использование напряжения больше 12В может приводить к перегреву стабилизатора напряжения и выходу платы из строя. С учетом этого, рекомендуется использовать источник питания с напряжением в диапазоне от 7 до 12В.

Ниже перечислены выводы питания, расположенные на плате:

  • VIN. Напряжение, поступающее в Arduino непосредственно от внешнего источника питания (не связано с 5В от USB или другим стабилизированным напряжением). Через этот вывод можно как подавать внешнее питание, так и потреблять ток, когда устройство запитано от внешнего адаптера.
  • 5V. На вывод поступает напряжение 5В от стабилизатора напряжения на плате, вне независимости от того, как запитано устройство: от адаптера (7 — 12В), от USB (5В) или через вывод VIN (7 — 12В). Запитывать устройство через выводы 5V или 3V3 не рекомендуется, поскольку в этом случае не используется стабилизатор напряжения, что может привести к выходу платы из строя.
  • 3V3. 3.3В, поступающие от стабилизатора напряжения на плате. Максимальный ток, потребляемый от этого вывода, составляет 50 мА.
  • GND. Выводы земли.
  • IOREF. Этот вывод предоставляет платам расширения информацию о рабочем напряжении микроконтроллера Ардуино. В зависимости от напряжения, считанного с вывода IOREF, плата расширения может переключиться на соответствующий источник питания либо задействовать преобразователи уровней, что позволит ей работать как с 5В, так и с 3.3В-устройствами.

Память

Объем флеш-памяти ATmega328 составляет 32 КБ (из которых 0.5 КБ используются загрузчиком). Микроконтроллер также имеет 2 КБ памяти SRAM и 1 КБ EEPROM (из которой можно считывать или записывать информацию с помощью библиотеки EEPROM).

Входы и выходы

С использованием функций pinMode(), digitalWrite() и digitalRead() каждый из 14 цифровых выводов может работать в качестве входа или выхода. Уровень напряжения на выводах ограничен 5В. Максимальный ток, который может отдавать или потреблять один вывод, составляет 40 мА. Все выводы сопряжены с внутренними подтягивающими резисторами (по умолчанию отключенными) номиналом 20-50 кОм. Помимо этого, некоторые выводы Ардуино могут выполнять дополнительные функции:

  • Последовательный интерфейс: выводы 0 (RX) и 1 (TX). Используются для получения (RX) и передачи (TX) данных по последовательному интерфейсу. Эти выводы соединены с соответствующими выводами микросхемы ATmega8U2, выполняющей роль преобразователя USB-UART.
  • Внешние прерывания: выводы 2 и 3. Могут служить источниками прерываний, возникающих при фронте, спаде или при низком уровне сигнала на этих выводах. Для получения дополнительной информации см. функцию attachInterrupt().
  • ШИМ: выводы 3, 5, 6, 9, 10 и 11. С помощью функции analogWrite() могут выводить 8-битные аналоговые значения в виде ШИМ-сигнала.
  • Интерфейс SPI: выводы 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). С применением библиотеки SPI данные выводы могут осуществлять связь по интерфейсу SPI.
  • Светодиод: 13. Встроенный светодиод, подсоединенный к выводу 13. При отправке значения HIGH светодиод включается, при отправке LOW — выключается.

В Arduino Uno есть 6 аналоговых входов (A0 — A5), каждый из которых может представить аналоговое напряжение в виде 10-битного числа (1024 различных значения). По умолчанию, измерение напряжения осуществляется относительно диапазона от 0 до 5 В. Тем не менее, верхнюю границу этого диапазона можно изменить, используя вывод AREF и функцию analogReference(). Помимо этого, некоторые из аналоговых входов имеют дополнительные функции:

  • TWI: вывод A4 или SDA и вывод A5 или SCL. С использованием библиотеки Wire данные выводы могут осуществлять связь по интерфейсу TWI.

Помимо перечисленных на плате существует еще несколько выводов:

  • AREF. Опорное напряжение для аналоговых входов. Может задействоваться функцией analogReference().
  • Reset. Формирование низкого уровня (LOW) на этом выводе приведет к перезагрузке микроконтроллера. Обычно этот вывод служит для функционирования кнопки сброса на платах расширения

Смотрите также соответствие выводов Arduino и ATmega328. Распиновка для микроконтроллеров ATmega8, 168 и 328 идентична.

Связь

Arduino Uno предоставляет ряд возможностей для осуществления связи с компьютером, еще одним Ардуино или другими микроконтроллерами. В ATmega328 имеется приемопередатчик UART, позволяющий осуществлять последовательную связь посредством цифровых выводов 0 (RX) и 1 (TX). Микроконтроллер ATmega16U2 на плате обеспечивает связь этого приемопередатчика с USB-портом компьютера, и при подключении к ПК позволяет Ардуино определяться как виртуальный COM-порт. Прошивка микросхемы 16U2 использует стандартные драйвера USB-COM, поэтому установка внешних драйверов не требуется. На платформеWindows необходим только соответствующий .inf-файл. В пакет программного обеспечения Ардуино входит специальная программа, позволяющая считывать и отправлять на Ардуино простые текстовые данные. При передаче данных через микросхему-преобразователь USB-UART во время USB-соединения с компьютером, на плате будут мигать светодиоды RX и TX. (При последовательной передаче данных посредством выводов 0 и 1, без использования USB-преобразователя, данные светодиоды не задействуются).

Библиотека SoftwareSerial позволяет реализовать последовательную связь на любых цифровых выводах Arduino Uno.

В микроконтроллере ATmega328 также реализована поддержка последовательных интерфейсов I2C (TWI) и SPI. В программное обеспечение Ардуино входит библиотека Wire, позволяющая упростить работу с шиной I2C; для получения более подробной информации см. документацию. Для работы с интерфейсом SPI используйте библиотеку SPI.

Программирование

Arduino Uno программируется с помощью программного обеспечения Ардуино (). Для этого из меню Tools > Board необходимо выбрать «Arduino Uno» с микроконтроллером, соответствующим вашей плате. Для получения более подробной информации см. справкуи примеры.

ATmega328 в Arduino Uno выпускается с прошитым загрузчиком, позволяющим загружать в микроконтроллер новые программы без необходимости использования внешнего программатора. Взаимодействие с ним осуществляется по оригинальному протоколу STK500 (описание, заголовочные файлы C).

Тем не менее, микроконтроллер можно прошить и через разъем для внутрисхемного программирования ICSP (In-Circuit Serial Programming), не обращая внимания на загрузчик; более подробно об этом см. соответствующие инструкции.

Исходный код прошивки микроконтроллера ATmega16U2 (или 8U2 на платах версии R1 и R2) находится в свободном доступе. Прошивка ATmega16U2/8U2 включает в себя DFU-загрузчик (Device Firmware Update), позволяющий обновлять прошивку микроконтроллера. Для активации режима DFU необходимо:

  • На платах версии R1: замкнуть перемычку на обратной стороне платы (возле изображения Италии), после чего сбросить 8U2.
  • На платах версий R2 и выше — для упрощения перехода в режим DFU присутствует резистор, подтягивающий к земле линию HWB микроконтроллера 8U2/16U2.

После перехода в DFU-режим для загрузки новой прошивки можно использовать программное обеспечение Atmel’s FLIP (для Windows) или DFU programmer (для Mac OS X и Linux). Альтернативный вариант — прошить микроконтроллер через разъем для внутрисхемного программирования ISP с помощью внешнего программатора, однако в этом случае DFU-загрузчик затрется. Для получения более подробной информации см. эти инструкции, составленные пользователями.

Автоматический (программный) сброс

Чтобы каждый раз перед загрузкой программы не требовалось нажимать кнопку сброса, Arduino Uno спроектирован таким образом, который позволяет осуществлять его сброс программно с подключенного компьютера. Один из выводов ATmega8U2/16U2, участвующий в управлении потоком данных (DTR), соединен с выводом RESET микроконтроллера ATmega328 через конденсатор номиналом 100 нФ. Когда на линии DTR появляется ноль, вывод RESET также переходит в низкий уровень на время, достаточное для перезагрузки микроконтроллера. Данная особенность используется для того, чтобы можно было прошивать микроконтроллер всего одним нажатием кнопки в среде программирования Ардуино. Такая архитектура позволяет уменьшить таймаут загрузчика, поскольку процесс прошивки всегда синхронизирован со спадом сигнала на линии DTR.

Однако эта система может приводить и к другим последствиям. При подключении Uno к компьютерам, работающим на Mac OS X или Linux, его микроконтроллер будет сбрасываться при каждом соединении программного обеспечения с платой. После сброса на Arduino Uno активизируется загрузчик на время около полсекунды. Несмотря на то, что загрузчик запрограммирован игнорировать посторонние данные (т.е. все данные, не касающиеся процесса прошивки новой программы), он может перехватить несколько первых байт данных из посылки, отправляемой плате сразу после установки соединения. Соответственно, если в программе, работающей на Ардуино, предусмотрено получение от компьютера каких-либо настроек или других данных при первом запуске, убедитесь, что программное обеспечение, с которым взаимодействует Ардуино, осуществляет отправку спустя секунду после установки соединения.

На плате Uno существует дорожка (отмеченная как «RESET-EN»), разомкнув которую, можно отключить автоматический сброс микроконтроллера. Для повторного восстановления функции автоматического сброса необходимо спаять между собой выводы, расположенные по краям этой дорожки. Автоматический сброс также можно выключить, подключив резистор номиналом 110 Ом между выводом RESET и 5В; для получения более подробной информации см. соответствующую ветку форума.

Защита USB от перегрузок

В Arduino Uno есть восстанавливаемые предохранители, защищающие USB-порт компьютера от коротких замыканий и перегрузок. Несмотря на то, что большинство компьютеров имеют собственную защиту, такие предохранители обеспечивают дополнительный уровень защиты. Если от USB-порта потребляется ток более 500 мА, предохранитель автоматически разорвет соединение до устранения причин короткого замыкания или перегрузки.

Физические характеристики

Максимальная длина и ширина печатной платы Uno составляет 6.9 см и 5.4 см соответственно, с учетом разъема USB и разъема питания, выступающих за пределы платы. Четыре крепежных отверстия позволяют прикреплять плату к поверхности или корпусу. Обратите внимание, что расстояние между цифровыми выводами 7 и 8 не кратно традиционным 2.54 мм и составляет 4 мм.

Дальше расмотрим характеристики Arduino Nano.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *