sonyps4.ru

Проекты на arduino uno. Проекты Arduino для всех

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

Arduino Nano - это полнофункциональное миниатюрное устройство на базе микроконтроллера ATmega328 (Arduino Nano 3.0) или ATmega168 (Arduino Nano 2.x), адаптированное для использования с макетными платами. По функциональности устройство похоже на Arduino Duemilanove, и отличается от него размерами, отсутствием разъема питания, а также другим типом (Mini-B) USB-кабеля. Arduino Nano разработано и выпускается фирмой Gravitech.

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

Связь

Arduino Nano предоставляет ряд возможностей для осуществления связи с компьютером, еще одним Ардуино или другими микроконтроллерами. В ATmega168 и ATmega328 есть приемопередатчик UART, позволяющий осуществлять связь по последовательным интерфейсам посредством цифровых выводов 0 (RX) и 1 (TX). Микросхема FTDI FT232RL обеспечивает связь приемопередатчика с USB-портом компьютера, и при подключении к ПК позволяет Ардуино определяться как виртуальный COM-порт (драйвера FTDI включены в пакет программного обеспечения Ардуино). В пакет программного обеспечения Ардуино также входит специальная программа, позволяющая считывать и отправлять на Ардуино простые текстовые данные. При передаче данных компьютеру через USB на плате будут мигать светодиоды RX и TX. (При последовательной передаче данных посредством выводов 0 и 1 данные светодиоды не задействуются).

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

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

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

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

Для подключения Arduino Due к компьютеру понадобится USB-кабель типа Micro-B. USB-кабель необходим как для питания, так и для прошивки устройства.

Один конец кабеля с разъемом micro-USB вставьте в разъем для программирования Arduino Due (находится возле разъема питания). Для прошивки скетча необходимо в среде программирования Ардуино IDE из меню Tools > Board выбрать пункт Arduino Due (Programming port), а также из меню Tools > Serial Port выбрать соответствующий последовательный порт.

Основные отличия от плат на основе микроконтроллеров ATMEGA

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

Печатная плата Due похожа на модель Arduino Mega 2560.

Напряжение

Микроконтроллер в составе Arduino Due работает от 3.3В, что влечет за собой некоторые ограничения. В частности, напряжение, используемое для питания подключаемых датчиков или управления исполнительными устройствами, так же не может превышать 3.3В. В случае подачи большего напряжения (например, 5В, характерных для большинства плат Ардуино) Arduino Due выйдет из строя.

Устройство может быть запитано, как от USB, так и от разъема питания. Во втором случае, напряжение питания должно лежать в диапазоне от 7В до 12В.

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

Последовательные порты на Arduino Due

В Arduino Due есть два USB-порта. Штатный USB-порт (обозначен на рисунке, как Native ) соединен непосредственно с процессором SAM3X и поддерживает последовательную CDC-связь через объект SerialUSB . Второй USB-порт - это порт для программирования (обозначен на рисунке, как Programming port). Он подключен к контроллеру ATMEL 16U2, выступающего в роли USB-UART преобразователя. По умолчанию для загрузки программ и взаимодействия с Ардуино используется порт для программирования.

Преобразователь USB-UART порта для программирования соединен с первым UART`ом контроллера SAM3X. Поэтому программно взаимодействовать с эти портом можно через объект "Serial".

Штатный USB-порт подключен непосредственно к выводам контроллера SAM3X, отвечающим за функцию USB-хоста. Штатный USB-порт позволяет использовать Arduino Due как в качестве внешнего периферийного устройства компьютера (например, USB-мыши или клавиатуры), так и в роли USB-хоста, к которому можно подключать различные устройства (такие, как мышь, клавиатура или Android-смартфон, например). А с помощью объекта "SerialUSB", описанного в языке программирования Ардуино, этот же порт можно использовать и как виртуальный последовательный порт.

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

Микроконтроллер SAM3X отличается от AVR-микроконтроллеров тем, что перед перепрошивкой его флеш-памяти, ее содержимое сперва необходимо стереть. Чтобы сделать это вручную, необходимо где-то на секунду зажать кнопку очистки памяти, нажать кнопку Upload в среде Ардуино, а затем нажать кнопку сброса.

Чтобы не повторять эту процедуру каждый раз, она была автоматизирована и может выполнятся программно как через штатный порт, так и через порт для программирования:

Штатный порт

Процедура программной очистки (т.н. "soft-erase") автоматически активируется при закрытия порта, открытого на скорости 1200 бит/с. При это очищается флеш-память контроллера, устройство сбрасывается и стартует загрузчик. Если по какой-либо причине во время этого в процессоре произойдет сбой, то вероятнее всего soft-erase не произойдет, поскольку эта процедура выполняется программно самим контроллером.

Открытие и закрытие штатного порта на скоростях, отличных от 1200 бод, не приведет к перезагрузке контроллера SAM3X. Для того, чтобы использовать программу Serial Monitor для наблюдения данных, отправляемых вашим скетчем, необходимо добавить несколько строк кода в программный блок setup(). Такой фрагмент заставит контроллер SAM3X дождаться открытия порта SerialUSB перед выполнением основной программы:

While (!Serial) ;

Нажатие кнопки сброса на Arduino Due приводит не только к перезагрузке SAM3X, но и к сбросу USB-соединения. В случае, если программа Serial Monitor открыта, то после разрыва соединения необходимо закрыть и заново открыть ее для восстановления сеанса связи.

Порт для программирования

USB-порт для программирования взаимодействует с USB-UART преобразователем Ардуино, который в свою очередь соединен с первым UART`ом микроконтроллера SAM3X (а именно, с выводами RX0 и TX0). Причем микросхема USB-UART преобразователя управляет также выводами Reset и Erase главного микроконтроллера. При открытии последовательного порта, USB-UART преобразователь перед тем, как обмениваться данными с UART`ом контроллера, формирует на выводах Erase и Reset активный уровень сигнала, что приводит к очистке памяти SAM3X. Этот способ более надежен, чем "программная очистка" при использовании штатного USB-порта, и работает даже в случае зависания процессора.

Для программного взаимодействия с этим портом в среде разработки Ардуино используйте объект "Serial". Аналогично построена работа с USB-портом и на Arduino Uno, поэтому все программы, написанные для Uno, будут так же работать и на Due. Кроме того, порт для программирования Arduino Due ведет себя так же, как и последовательный порт Uno, в том плане, что USB-UART преобразователь в составе устройства сбрасывает главный контроллер при каждом открытии последовательного порта.

Нажатие кнопки сброса во время использования порта для программирования не разрывает USB-соединение с компьютером, поскольку сбрасывается только главный контроллер SAM3X.

USB-хост

Arduino Due может работать в качестве USB-хоста для периферийных устройств, подключаемых к порту SerialUSB. Для получения дополнительной информации и примеров кода, см. справку по USB-хост .

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

Разрядность АЦП и ШИМ

В Arduino Due есть возможность изменять разрядность для считывания и формирования аналоговых величин (которые, по умолчанию, равны 10 и 8 битам, соответственно). Максимальная разрядность АЦП и ШИМ составляет 12 бит. Для получения дополнительной информации см. описание функций analogWriteResolution() и analogReadResolution() .

Расширенные возможности SPI

Установка драйверов для Arduino Due

OSX

  • В операционной системе OSX установка драйверов не требуется. В зависимости от установленной версии ОС, при подключении устройства к компьютеру должно появится диалоговое окно, предлагающее открыть Сетевые настройки (“Network Preferences”). Кликните "Network Preferences...", дождитесь появления окна и нажмите кнопку "Apply". Arduino Due появится в системе под статусом "Not Configured", но при этом будет работать нормально. Теперь можно выйти из системных настроек.

Windows (протестировано на XP и 7)


Linux

  • На Linux установка драйверов не требуется вообще.

Прошивка программы в Arduino Due

С точки зрения пользователя, процесс прошивки программ в Arduino Due осуществляется точно так же, как и в других моделях Ардуино. Несмотря на то, что для прошивки скетчей можно использовать любой USB-порт Due, все же рекомендуется задействовать для этой цели порт для программирования.

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

  • Подключите устройство к компьютеру, подсоединив USB-кабель к порту для программирования Ардуино (этот порт расположен ближе к разъему питания).
  • Откройте среду разработки Ардуино.
  • В меню "Tools" выберите пункт "Serial Port" и укажите последовательный порт, ассоциированный в системе с Arduino Due
  • Из меню "Tools > Boards" выберите пункт "Arduino Due (Programming port)"

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

Ардуино Нано (Arduino Nano) представляет из себя плату с микроконтроллером, через которую вы сможете программировать, чтобы управлять всевозможными внешними устройствами.

Она взаимодействует с большинством устройств внешнего мира через:

  • датчики,
  • двигатели,
  • светодиоды,
  • динамики.

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

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

В платах Arduino используются либо микроконтроллеры Atmel AVR , либо его ближайший собрат микроконтроллер Atmel ARM, а в некоторых из версий имеется интерфейс USB. Обладают шестью или более выводами аналоговых входов и четырнадцатью или более выводами цифровых входов и выходов, использующихся для возможности подключения к микроконтроллеру датчиков, различных приводов и иных периферийных схем. Стоимость платы Arduino в зависит от набора функций - от семи до сорока пяти долларов.

Программное обеспечение, применяемое для программирования Arduino, представлено разработкой Arduino IDE. IDE - Java приложение, работающее на множестве разных платформ, включая столь известные системы как PC, Mac и Linux. Разрабатывалась для начинающих, не знакомых со всеми тонкостями программированием. Включает редактор, компилятор и загрузчик. В IDE предусмотрены библиотеки кодов для применения периферии, последовательных портов и разных типов экранов. Программы для Arduino называют «скетчами».

Большинство плат Нано Arduino подключается к компьютеру при помощи USB кабеля. Это соединение позволит загрузить скетчи на вашу плату Arduino.

Преимущества и недостатки Ардуино Нано

  • Цена. Arduino Nano возможно купить менее чем за 1000 руб.
  • Кроссплатформенность. Программное обеспечение Arduino осуществляет работу на большинстве известных программ Windows, Macintosh OS X, Linux, являясь открытым приложением работающим на Java.
  • Простая среда программирования. Программная оболочка является достаточно простой в применении для новичков, но весьма гибкой для большинства продвинутых пользователей, чтобы оптимально быстро достичь нужного вам результата. Особенно комфортно в образовательной среде, где студенты достаточно легко разберутся с платформой, а преподаватели смогут разработать учебный курс.
  • Открытый исходный код. Язык может расширяется с помощью C++ библиотек, значительно более продвинутых, там специалисты могут самостоятельно создать свой собственный эксклюзивный инструментарий для Arduino на основе инновационного компилятора AVR C.
  • Открытые спецификации и схемы оборудования. Arduino основан на микроконтроллерах Atmel ATMEGA8 и ATMEGA168. Схемы модулей публикуются под лицензией Creative Commons, из-за этого опытные схемотехники могли создавать свои собственные версии модуля. Даже весьма неопытные пользователи смогут делать макетную версию данного модуля, чтобы понимать, каким же образом он осуществляет работу и экономит деньги.

Из недостатков отмечаем:

  • довольно убогую программную оболочку;
  • достаточно низкую частоту имеющегося процессора;
  • довольно малое количество «дисковой» флэш-памяти для создания программ.

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

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

Arduino Nano входит в тройку самых популярных плат ардуино. Она позволяет создавать компактные устройства, использующие тот же контроллер, что и в Arduino Uno. В этой статье мы рассмотрим плату поближе: разберемся с распиновкой платы, узнаем особенности подключения и сделаем краткий обзор шилдов и плат расширения для Nano.

Nano – одна из самых миниатюрных плат Ардуино. Она является полным аналогом Arduino Uno – так же работает на чипе ATmega328P (хотя можно еще встретить варианты с ATmega168), но с меньшим форм-фактором. Из-за своих габаритных размеров плата часто используется в проектах, в которых важна компактность. На плате отсутствует вынесенное гнездо внешнего питания, Ардуино работает через USB (miniUSB или microUSB). В остальном параметры совпадают с моделью Arduino Uno.

Технические характеристики Arduino Nano:

  • Напряжение питания 5В;
  • Входное питание 7-12В (рекомендованное);
  • Количество цифровых пинов – 14, из них 6 могут использоваться в качестве выходов ШИМ;
  • 8 аналоговых входов;
  • Максимальный ток цифрового выхода 40 мА;
  • Флэш- память 16 Кб или 32 Кб, в зависимости от чипа;
  • ОЗУ 1 Кб или 2 Кб, в зависимости от чипа;
  • EEPROM 512 байт или 1 Кб;
  • Частота 16 МГц;
  • Размеры 19 х 42 мм;
  • Вес 7 г.

Питание платы может осуществляться двумя способами:

  1. Через mini-USB или microUSB при подключении к компьютеру;
  2. Через внешний источник питания, имеющий напряжение 6-20 В с низким уровнем пульсаций.

Стабилизация внешнего источника выполняется при помощи схемы LM1117IMPX-5.0 на 5В. При подключении через кабель от компьютера подключение к стабилизатору происходит через диод Шоттки. Схемы обоих типов питания приведены на рисунке.

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

Имеются ограничения по напряжению и току на входы и выходы платы. Все цифровые и аналоговые контакты работают в диапазоне от 0 до 5 В. При подаче питания, выходящего за рамки этих значений, напряжение будет ограничиваться защитными диодами. В этом случае сигнал должен подключаться через резистор, чтобы не вывести контроллер из строя. Наибольшее значение втекающего или вытекающего тока не должно превышать значение 40 мА, а общий ток контактов должен быть не более 200 мА.

На плате имеются 4 светодиода, которые показывают состояние сигнала. Они обозначены как TX, RX, PWR и L. На первых двух светодиод загорается, когда уровень сигнала низкий, и показывает, что сигнал TX или RX активен. Светодиод PWR загорается при напряжении в 5 В и показывает, что подключено питание. Последний светодиод – общего назначения, загорается, когда подается высокий сигнал.

На настоящий момент выпускается несколько видов Arduino Nano. Есть версии 2.X, 3.0., которые отличаются только чипом, на котором они работают. В версии 2.Х. используется чип ATmega168 с меньшим объемом памяти (флэш, энергонезависимой) и пониженной тактовой частотой, версия 3.0. работает на чипе ATmega328.


Распиновка Arduino Nano

Плата Ардуино Нано имеет 14 цифровых контактов, которые помечаются буквой D (цифровой, digital). Контакты используются как входы и выходы, у каждого имеется подтягивающий резистор.


Аналоговые пины обозначаются буквой А и используются как входы. У них отсутствую подтягивающие резисторы, они измеряют поданное на них напряжение и возвращают значение при помощи функции analogRead().

На некоторых цифровых пинах можно увидеть значок ~. Такие контакты можно использовать в качестве выходов ШИМ. Ардуино нано оснащена шестью такими контактами – это пины D3, D5, D6, D9, D10, D11. Чтобы использовать ШИМ, создана специальная функция analogWrite().

Распиновка Arduino Nano

1 пин – TX (передача данных UART), D0.

2 – RX (прием данных UART), D1. RX и TX могут использоваться для связи по последовательному интерфейсу или как обычные порты данных.

3, 29 – сброс.

4, 29 – земля.

5 – D2, прерывание INT0.

6 – D3, прерывание INT1 / ШИМ / AIN0.

7 – A4, счетчик T0 / шина I2C SDA / AIN1. AIN0 и AIN1 – входы для быстродействующего аналогового компаратора.

8 – A5, счетчик T1 / шина I2C SCL / ШИМ.

9 – 16 – порты D6-D13, из которых D6 (9й), D9 (12й), D10 (13й) и D11 (14й) используются как выходы ШИМ. D13 (16й пин) – светодиод. Также D10 – SS, D11 – MOSI, D12 – MISO, D13 – SCK используются для связи по интерфейсу SPI.

18 – AREF, это опорное напряжение для АЦП микроконтроллера.

19 – 26: аналоговые входы A0… A7. Разрядность АЦП 10 бит. A4 (SDA), A5 (SCL) – используются для связи по шине I2C. Для создания используется специальная библиотека Wire.

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

Подключение Arduino Nano

Установка драйвера для CH340

Микросхема CH340 часто используется в платах Ардуино со встроенным USB-to-Serial преобразователем. Она позволяет уменьшить затраты на производство плат, не влияя на ее работоспособность. При помощи этого программатора можно легко прошивать платы Ардуино. Для того, чтобы начать работать с этой микросхемой, нужно установить драйвер на компьютер.

Установка выполняется в несколько этапов:

  • Скачивание архива с драйвером для нужной операционной системы. Для Windows, MacOS и Linux загрузить драйверы можно по ссылке http://iarduino.ru/file/230.html
  • Распаковка архива.
  • Поиск файла SETUP.EXE, его запуск.
  • На мониторе появится окно, в котором нужно нажать кнопку Install. Установка драйвера начнется, после чего можно начинать работу со схемой.

Настройка Arduino IDE

Стандартная среда разработки Arduino IDE используется для работы всех видов Ардуино с компьютером. Чтобы начать работу, нужно сначала скачать Arduino IDE с официального сайта и установить ее. Удобнее скачивать Windows Installer, особенно если среда разработки будет установлена на постоянном рабочем компьютере. Если скачан архив, то его нужно распаковать и запустить файл Arduino.exe.

Как только среда установлена, нужно ее запустить. Для этого нужно подключить к компьютеру саму плату Ардуино через USB. Затем перейти в меню Пуск >> Панель управления >> Диспетчер устройств, найти там Порты COM и LPT. В списке появится установленная плата и указан номер порта, к которому подключается плата. После этого нужно запустить Arduino IDE, перейти в меню Инструменты >> Порт, и указать порт, к которому присоединена Ардуино. В меня Инструменты>> Платы нужно выбрать модель подключенной платы, в данном случае Arduino Nano. На этом установка и настройка закончены, и можно создавать программу. Важно помнить, что если к компьютеру будет подключаться другая плата, настройки снова нужно будет поменять на соответствующее устройство.

Примеры проектов с Arduino Nano

Подключение светодиодов к Arduino Nano

В качестве тестовой программы, проверяющей работу платы, можно использовать мигание светодиодом. На плате имеется встроенный светодиод L, но можно подключить и внешний к выходу D13. Светодиод обязательно подключать через резистор, чтобы не сжечь его и не повредить плату. Анод светодиода подключается к резистору, который присоединяется к выходу D13. Катод светодиода – к земле.

В Arduino IDE есть пример, который включает мигание светодиода. Для этого нужно перейти в меню Файл>>Образцы>>1. Basics>> Blink и загрузить пример. После выгрузки пода Ардуино будет выполнять программу, мигая светодиодом раз в секунду.

Подключение LCD 1602 к Arduino Nano

Экран LCD 1602 достаточно распространенный, для него существует разнообразные виды шилдов, но также его можно подключить напрямую к Ардуино. Для подключения дисплея к плате нужны Arduino Nano, макетная плата, экран LCD 1602 и соединительные провода.

Выбор пинов, к которым нужно подключать дисплей, может быть любым. Для примера будет выбрана такая конфигурация: контакт RW с дисплея подключается к земле, 4й контакт дисплея – к А0 на Ардуино, 6-й контакт – к Е (Enable), с 11-го по 14-й подключаются к D4-D7. Экран подключен. Для того, чтобы началь писать код, нужно подключить библиотеку LiquidCrystal. В ней также имеется тестовый скетч, который позволит проверить работоспособность установки. Код находится по адресу Arduino\libraries\LiquidCrystal\examples\HelloWorld\HelloWorld.ino, в скетче нужно только поменять номера контактов, к которым подключен экран. Если все подключено правильно, на мониторе загорится надпись.

Подключение nrf24l01 к Arduino Nano

Радиомодуль nrf24l01 используется в случаях, когда нужно получать данные от датчиков, которые расположены на удалении от управляющего устройства. Модуль прост в использовании и легко подключается к Ардуино.

Подключение к Ардуино Нано изображено на рисунке. Земля с платы соединяется с землей модуля, напряжение – на 3,3В, 3й контакт (CE) – к D9, с 4 по 7й – к D10-D12. Для 3го контакта и 4-го можно использовать любые пины, главное указать это потом в коде.

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

Для работы с модулем существует несколько библиотек. Наиболее распространенные библиотеки – это RF24 и Mirf. Выбор той или иной библиотеки определяется удобством использования.

Обзор популярных шилдов для Arduino Nano

Платы расширения (или arduino shield, шилд) используются для решения различных задач и упрощения проектов. На плате расширения устанавливаются все нужные электронные компоненты, а взаимодействие с другими контроллерами осуществляется через стандартные контакты Ардуино.

Nano Uno shield – это шилд, который позволяет превратить плату Нано в Уно. Платформа имеет различные колодки для подключения, кнопку перезагрузки и гнездо питания.



Arduino Nano Ethernet Shield – используется для обеспечения работы с сетью через Ethernet. Аналогичен такому же шилду для Arduino Uno, но имеет меньшие размеры и гораздо удобнее в реальных проектах.

Arduino Nano Motor Shield – шилд, который используется в робототехнических проектах для подключения моторов и двигателей к плате Ардуино. Его основная задача – обеспечение управления устройствами, которые потребляют большой (по сравнению с Ардуино) ток. Также с помощью шилда можно управлять мощностью мотора и менять его направление вращения. Моделей плат Motor Shield существует множество, у всех имеется в схеме мощный транзистор, теплоотводящие компоненты, схемы для подключения внешнего источника напряжения и разъемы ля подключения двигателей.

Arduino Nano Sensor Shield – самая распространенная платформа. Шилд прост – основной его задачей является обеспечение удобного подключения к плате Ардуино других устройств. На шилде расположены дополнительные разъемы питания и земли, разъемы для подключения внешнего источника напряжения, светодиод и кнопка перезагрузки.

Arduino Data Logging Shield – шилд, который позволяет писать лог. Также он используется как файловое хранилище или часы реального времени. Для работы с шилдом существует специальная библиотека, которая позволяет логировать информацию на карту памяти.

Arduino Proto Shield – платформа для быстрого прототипирования или создания своего шилда. На этих платах расположены площадки для монтажа нужных компонентов, выведена кнопка сброса, 2 светодиода и разъем для внешнего питания. С их помощью можно повысить компактность устройства.



Где купить Arduino Nano

Традиционно самые низкие цены предлагают зарубежные интернет-магазины. В России цены почти всегда будут выше на 20-200 процентов, но не придется ждать заказа около месяца.

Приведем ссылки на надежных поставщиков Aliexpress:
Arduino Nano 3.0 контроллер с микросхемой CH340 и без кабеля – от 130 рублей. Один из самых популярных магазинов

Итоги

Контроллеры Ардуино используются для реализации различных проектов электроники, автоматизации и робототехники. Ардуино позволяет проектировать и создавать новые устройства. Сегодня можно найти в магазинах несколько версий платы Ардуино, различающихся по размерам и некоторым характеристикам. Arduino Nano – один из самых лучших вариантов для создания реальных проектов. Это плата довольно компактная, удобная и обладает всеми возможностями “большой Uno”. Можно рекомендовать ее к использованию даже начинающим ардуинщикам.

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

Arduino Due — плата микроконтроллера на базе процессора Atmel SAM3X8E ARM Cortex-M3 (описание). Это первая плата Arduino на основе 32-битного микроконтроллера с ARM ядром. На ней имеется 54 цифровых вход/выхода (из них 12 можно задействовать под выходы ШИМ), 12 аналоговых входов, 4 UARTа (аппаратных последовательных порта), a генератор тактовой частоты 84 МГц, связь по USB с поддержкой OTG, 2 ЦАП (цифро-аналоговых преобразователя), 2 TWI, разъем питания, разъем SPI, разъем JTAG, кнопка сброса и кнопка стирания.

Внимание! В отличие от других плат Arduino, Arduino Due работает от 3,3 В. Максимальное напряжение, которое выдерживают вход/выходы составляет 3,3 В. Подав более высокое напряжение, например, 5 В, на выводы Arduino Due, можно повредить плату.

Плата содержит все, что необходимо для поддержки микроконтроллера. Чтобы начать работу с ней, достаточно просто подключить её к компьютеру кабелем микро-USB, либо подать питание с AC/DC преобразователя или батарейки. Due совместим со всеми платами расширения Arduino, работающими от 3,3 В, и с цоколевкой Arduino 1.0.

Расположение выводов Due повторяет цоколевку Arduino 1.0:

  • TWI: Выводы SDA и SCL расположены рядом с выводом AREF.
  • Вывод IOREF, который позволяет с помощью правильной конфигурации адаптировать присоединенную плату расширения к напряжению, выдаваемому Arduino. Благодаря этому платы расширения могут быть совместимы и с 3,3-вольтовыми платами типа Due и с платами на базе AVR, работающими от 5 В.
  • Неподключенные выводы, зарезервированные для использования в будущем.

Преимущества ядра ARM

На Due установлено 32-битное ARM ядро, превосходящее по производительности обычные 8-битные микроконтроллеры. Наиболее значимые отличия:

32-битное ядро, позволяющее выполнять операции с данными шириной 4 байта за 1 такт (более подробную информацию смотри на странице int type).

  • частота процессора (CPU) 84 МГц.
  • 96 КБ ОЗУ.
  • 512 КБ флеш-памяти для хранения программ.
  • контроллер DMA, который разгружает центральный процессор от выполнения интенсивных операций с памятью.
Схема, исходные данные и расположение выводов
Характеристики

Микроконтроллер

AT91SAM3X8E

Рабочее напряжение

Входное напряжение (предельное)

Цифровые Входы/Выходы

Аналоговые входы

12
Аналоговые выходы 2 (ЦАП)
Общий выходной постоянный ток
на всех входах/выходах
Постоянный ток через вывод 3,3 В 800 мА
Постоянный ток через вывод 5 В 800 мА
Флеш-память 512 КБ доступно всего для пользовательских приложений
ОЗУ 96 КБ (два банка: 64 КБ и 32 КБ)
Тактовая частота 84 МГц
Питание

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

Внешним (не USB) источником питания может быть либо AC/DC преобразователь («wall wart» - адаптер в одном корпусе с вилкой), либо батарея. Адаптер подключается к разъему питания платы 2,1 мм штепсельной вилкой с центральным положительным контактом. Выводы батареи подключаются к контактам Gnd и Vin разъема POWER. Плата может функционировать при внешнем питании от 6 до 20 В. Но если напряжение питания опускается ниже 7 В, на выводе 5 В может оказаться меньше пяти вольт, и плата будет работать нестабильно. Если же подается напряжение более 12 В, может перегреться стабилизатор напряжения, что приведет к повреждению платы. Рекомендуемый диапазон напряжений - от 7 до 12 В.

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

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

Флеш-память SAM3X составляет 512 КБ (2 блока по 256 КБ) для хранения программ. Загрузчик (бутлодер) записывается Atmel при производстве и хранится в специально отведенном для него ПЗУ. Доступный объем ОЗУ составляет 96 КБ в двух смежных банках - 64 КБ и 32 КБ. Вся доступная память (флеш-память, ОЗУ и ПЗУ) может адресоваться напрямую как плоское адресное пространство.

Существует возможность стереть флеш-память SAM3X с помощью встроенной кнопки стирания. При этом из микропроцессора удалится текущая загруженная программа. Для стирания нажмите и несколько секунд удерживайте кнопку стирания при включенном питании платы.

Входы и Выходы
  • Цифровые входы/выходы: выводы с 0 по 53
    Каждый из 54 цифровых выводов Due может использоваться в качестве входа или выхода, с помощью функций pinMode() , digitalWrite() и digitalRead() . Выводы работают от 3,3 В. Каждый вывод может выдавать (как источник) ток 3 мА или 15 мА, в зависимости от вывода, или получать (как приемник) ток 6 мА или 9 мА, в засимости от вывода. На них также имеются внутренние нагрузочные резисторы (по умолчанию они отключены) номиналом 100 кОм. Кроме этого, некоторым выводам назначены специализированные функции:
  • Последовательная линия: 0 (RX) и 1 (TX)
  • Последовательная линия 1: 19 (RX) и 18 (TX)
  • Последовательная линия 2: 17 (RX) и 16 (TX)
  • Последовательная линия 3: 15 (RX) и 14 (TX)
    Эти выводы используются для приема (RX) и передачи (TX) последовательных данных TTL (с уровнем 3,3 В). Выводы 0 и 1 соединены с соответствующими выводами последовательного контроллера ATmega16U2 USB-to-TTL.
  • ШИМ : выводы с 2 по 13
    На них реализуется 8-битный выход ШИМ с помощью функции analogWrite() . Разрешение ШИМ можно менять, используя функцию analogWriteResolution() .
  • SPI : разъем SPI (разъем ICSP на других платах Arduino)
    Данные выводы служат для связи по SPI с использованием библиотеки SPI . Сигналы SPI выведены на центральный 6-контактный разъем, который физически совместим с Uno, Leonardo и Mega2560. Разъем SPI можно использовать только для связи с другими устройствами SPI, но не для программирования SAM3X по технологии внутрисхемного последовательного программирования (ICSP). SPI на Due также имеет расширенные функции, доступные при использовании Расширенных методов SPI для Due .
  • CAN : CANRX и CANTX
    На этих выводах поддерживается протокол связи CAN, но пока его не поддерживают программные интерфейсы (API) Arduino.
  • " L " LED : 13
    Встроенный светодиод, подключенный к цифровому выводу 13. При высоком уровне сигнала на данном выводе, светодиод включается, при низком - выключается. Возможно также убавить яркость светодиода, поскольку вывод 13 одновременно является выходом ШИМ.
  • TWI 1: 20 (SDA) и 21 (SCL)
  • TWI 2: SDA 1 и SCL 1
    На данных выводах с использованием библиотеки Wire поддерживается связь по TWI.
  • Аналоговые входы: выводы с A 0 по A 11
    Плата Arduino Due имеет 12 аналоговых входов, каждый из которых может обеспечить разрешение 12 бит (т.е. 4096 различных значений). По умолчанию установлено разрешение 10 бит для совместимости с другими платами Arduino. Разрешение АЦП можно менять при помощи функции analogReadResolution() . Аналоговые ходы Due производят измерения от уровня земли до максимального значения 3,3 В. Приложение к этим выводам напряжения свыше 3,3 В вызовет повреждение кристалла SAM3X. Функция analogReference() на Due игнорируется.
    Вывод AREF подключен к аналоговому выводу опорного напряжения SAM3X через резисторный мост. Для активации вывода AREF необходимо отпаять с печатной платы резистор BR1.
  • DAC 1 и DAC 2
    На выводах ЦАП DAC 1 и DAC 2 предоставляются достоверные аналоговые выходы с 12-битным разрешением (4096 уровней) при помощи функции analogWrite() . Данные выводы можно использовать для создания аудиовыхода, используя при этом библиотеку Audio .

Другие выводы:

  • AREF
    Опорное напряжение для аналоговых входов. Используется с функцией analogReference ().
  • Reset
  • По низкому уровню на этой линии происходит сброс микроконтроллера. Типичное применение вывода Reset - добавление кнопки сброса на плату расширения, которая перекрывает эту кнопку на микроконтроллере.
Связь

В Arduino Due есть ряд средств для взаимодействия с компьютером, платами Arduino и другими микроконтроллерами, а также различными устройствами, такими как телефоны, планшеты, фотокамеры и т.п. SAM3X имеет один аппаратный UART и три аппаратных USARTа для последовательной связи TTL-уровня (3,3 В).

Порт программирования соединен с ATmega16U2 , предоставляющей виртуальный COM порт для программ на подключенном компьютере. (Для определения этого устройства компьютеру с ОС Windows потребуется файл.inf, на машинах же с OSX и Linux плата автоматически будет распознана как COM порт). Чип 16U2 также соединен с аппаратным UARTом SAM3X. Последовательная шина на выводах RX0 и TX0 предоставляет преобразование Serial-to-USB для программирования платы через микроконтроллер ATmega16U2. В программное обеспечение Arduino входит монитор последовательной шины, который дает плате возможность отправлять и принимать простые текстовые сообщения. Светодиоды RX и TX на плате будут мигать, когда идет передача данных через кристалл ATmega16U2 и через USB подключение к компьютеру (но не во время последовательного обмена по выводам 0 и 1).

Собственный USB порт может также работать как USB хост для подключенных периферийных устройств: мыши, клавиатуры и смартфотонов. Чтобы использовать эти свойства, обратитесь к справочным страницам USB хост .

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

Arduino Due можно запрограммировать с помощью программных средств Arduino (скачать). Более детальная информация содержится в .

отличается от таковой для микроконтроллеров AVR, находящихся на других платах Arduino, поскольку необходимо стереть флеш-память перед тем как перепрограммировать её. Загрузка в кристалл управляется из ПЗУ контроллера SAM3X и запускается, только когда флеш-память кристалла пуста.


Плату можно программировать через оба USB порта, хотя рекомендуется использовать порт программирования, в связи с тем, что он поддерживает стирание кристалла:

  • Порт программирования : Для использования этого порта выберите в Arduino IDE в качестве вашей платы "Arduino Due (Programming Port)". Подключите порт программирования платы Due (ближайший к разъему питания постоянного тока) к вашему компьютеру. Порт программирования использует микросхему 16U2 в качестве преобразователя USB-to-serial, соединенный с первым UARTом контроллера SAM3X (RX0 и TX0). Два вывода 16U2 подключены к выводам Reset и Erase SAM3X. Открытие и закрытие порта программирования, подключенного на скорости передачи 1200 бит в секунду, запускает процедуру «аппаратного стирания» чипа SAM3X, активирование выводов Erase и Reset на SAM3X перед установлением связи с UART. Это рекомендуемый порт для программирования Due. Аппаратное стирание более надежно, чем «программное стирание», которое происходит на собственном USB порте, и будет работать даже в случае повреждения главного микропроцессора.
  • Собственный порт : Чтобы использовать этот порт, выберите в Arduino IDE тип вашей платы "Arduino Due (Native USB Port)". Собственный USB порт подсоединен напрямую к SAM3X. Подключите собственный USB порт Arduino Due (ближний к кнопке Reset) к вашему компьютеру. Открытие и закрытие собственного порта при скорости передачи 1200 бит в секунду запускает процедуру «программного стирания»: флеш-память стирается и плата перезапускается с помощью загрузчика. Если главный микроконтроллер по какой-либо причине поврежден, то, вероятно, программное стирание не будет работать, так как эта процедура на SAM3X происходит полностью программно. Открытие и закрытие собственного порта на других скоростях передачи не вызовет сброса SAM3X.

В отличие от других плат Arduino, использующих для загрузки avrdude, Due полагается на bossac.

Токовая защита разъема USB

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

Физические характеристики и совместимость с платами расширения

Максимальная длина печатной платы Arduino Due равна 4 дюйма, а ширина - 2,1 дюйма, без учета USB соединителей и разъема питания, которые выступают за приведенные габаритные размеры. Три отверстия под винты позволяют закрепить плату на поверхности или в корпусе. Обратите внимание, что расстояние между цифровыми выводами 7 и 8 составляет 160 мил (0.16", 4,064 мм), не кратно промежуткам в 100 мил (2,54 мм) между остальными выводами.

Arduino Due сделан совместимым с большинством плат расширения, разработанных для Uno, Diecimila или Duemilanove. Цифровые выводы с 0 по 13 (и соседние выводы AREF и GND), аналоговые входы с 0 по 5, разъем питания, разъем "ICSP" (SPI) расположены одинаково на всех платах. Более того, основной UART (последовательный порт) находится на тех же выводах (0 и 1).
Пожалуйста, обратите внимание, что шина I 2 C расположена в Arduino Due на других выводах (20 и 21), не так как в Duemilanove / Diecimila (аналоговые входы 4 и 5).



Загрузка...