Плата расширения L293D, ИК-датчик VS1838B, TFT LCD, Модем M590E GSM GPRS, "монитор TFT LCD, датчик движения HC-SR501, ИК-пульт дистанционного управления, Радиомодуль NRF24L01, SD Card Module, Звуковой модуль, 5-axis stepper motor driver, Шаговый двигатель, Модем M590E GSM GPRS, 5-axis stepper motor driver, Часы реального времени DS 3231/DS 1307, терморегулятор W1209 DC, Релейный модуль, датчик движения HC-SR501, Модуль Wi-Fi ESP8266-12E, датчик движения HC-SR501, Передатчик и приемник в диапазоне RF 433 Mhz, Блок питания, L293D, Микросхема контроллера коллекторного электродвигателя, ИК-пульт дистанционного управления, Датчики контроля температуры, Радиомодуль NRF24L01, OKI 120A2, Rotary Encoder, SD Card Module, Беспроводной пульт дистанционного управления, Микросхема контроллера коллекторного электродвигателя, Модуль Bluetooth HC-06,, Модем M590E GSM GPRS, Часы реального времени DS 3231/DS 1307, Mini 360 на схеме LM2596, MP3-TF-16P, L293D, Модуль LCD монитора, Инфракрасные датчики расстояния, Часы реального времени, USB Host Shield, HC-SR501, Cветочувствительный датчик сопротивления, блок питания Mini 360 на схеме LM2596, ЖК-дисплей TFT дисплей, Контроллер L298N, HC-SR501, Модуль MP3 Player WTV020, GSM GPRS, Сервоприводы, Модем M590E GSM GPRS, Часы реального времени DS 3231/DS 1307, Модуль Wi-Fi ESP8266-12E, Инфракрасные датчики расстояния, Card Module, Ультразвуковые дальномеры HC-SR04, Блок питания, Карта памяти SD, Mini 360, Ethernet shield, L293D, блок питания Mini 360 на схеме LM2596, Радиомодуль, датчик температуры DS18B20, ИК-пульт дистанционного управления, USB конвертер UART, ИК-пульт, Антена для модуля WiFi, Ethernet shield, Модуль блока питания XL6009, Микросхема контроллера коллекторного электродвигателя, Модуль качества воздуха MQ-135, Микросхема контроллера коллекторного электродвигателя, ИК-пульт дистанционного управления, SD Card Module, Радиомодуль NRF24L01, двигатель OKI, 5-axis stepper motor driver, L293D, TB6560, Драйвер шагового двигателя TB6600, Шаговый двигатель, Модуль камеры, Блок питания, L293D, блок питания Mini 360 на схеме LM2596, 5axis mach3 interface, Карта памяти SD, Ethernet shield, Контроллер L298N, датчик движения HC-SR501, Модуль Wi-Fi ESP8266-12E, Модуль LCD монитора LCD1602, Шаговый двигатель OKI 120A2, Шаговый двигатель, Шаговый двигатель.

 

Arduino Nano

Платформа Nano, построенная на микроконтроллере ATmega328 (Arduino Nano 3.0) или ATmega168 (Arduino Nano 2.x), имеет небольшие размеры и может использоваться в лабораторных работах.

Arduino Nano  Arduino Nano
     

Плата Arduino Nano

 

Arduino Nano может получать питание через подключение USB Mini-B, или от нерегулируемого 6–20 В (вывод 30) или регулируемого 5 В (вывод 27), внешнего источника питания. Автоматически выбирается источник с самым высоким напряжением.

 

 Характеристики платы Arduino Nano

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

ATmega168 или ATmega328

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

5 В

Входное напряжение (рекомендуемое)

7–12 В

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

6–20 В

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

14 (6 из которых могут использоваться как выходы ШИМ)

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

6

Постоянный ток через вход/выход

40 мА

Постоянный ток для вывода 3,3 В

50 мА

Флеш-память

16 Кбайт (ATmega168) или 32 Кбайт (ATmega328), при этом 2 Кбайт используются для загрузчика

ОЗУ

1 Кбайт (ATmega168) или 2 Кбайт (ATmega328)

EEPROM                       

512 байтов (ATmega168) или 1 Кбайт (ATmega328)

Тактовая частота

16 МГц

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

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

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

Arduino Nano 3.0 (ATmega328): схема, файлы Eagle.

Arduino Nano 2.3 (ATmega168): руководство (pdf), файлы Eagle. Примечание: печатная плата этой версии Arduino Nano содержит 4 слоя, в то время как бесплатная версия Eagle позволяет работать только с двухслойными платами. Поэтому, для возможности работы со схемой в бесплатной версии, проект выложен без трассировки печатной платы.

Питание

Arduino Nano может быть запитан через кабель Mini-B USB, от внешнего источника питания с нестабилизированным напряжением 6-20В (через вывод 30) либо со стабилизированным напряжением 5В (через вывод 27). Устройство автоматически выбирает источник питания с наибольшим напряжением.

Напряжение на микросхему FTDI FT232RL подается только в случае питания Arduino Nano через USB. Поэтому при питании устройства от других внешних источников (не USB), выход 3.3В (формируемый микросхемой FTDI) будет неактивен, в результате чего светодиоды RX и TX могут мерцать при наличии высокого уровня сигнала на выводах 0 и 1.

Память

Объем памяти программ микроконтроллера ATmega168 составляет 16 КБ (из них 2 КБ используются загрузчиком); в ATmega328 - этот объем составляет 32 КБ (из которых 2 КБ также отведены под загрузчик). Помимо этого, ATmega168 имеет 1 КБ оперативной памяти SRAM и 512 байт EEPROM (для взаимодействия с которой служит библиотека EEPROM); а микроконтроллер ATmega328 - 2 КБ SRAM и 1 КБ EEPROM.

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

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

  • Последовательный интерфейс: выводы 0 (RX) и 1 (TX). Используются для получения (RX) и передачи (TX) данных по последовательному интерфейсу. Эти выводы соединены с соответствующими выводами микросхемы-преобразователя USB-UART от FTDI.
  • Внешние прерывания: выводы 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 - выключается.I2С: выводы 4 (SDA) и 5 (SCL). С использованием библиотеки Wire (документация на веб-сайте Wiring) данные выводы могут осуществлять связь по интерфейсу I2C (TWI).

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

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

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

Смотрите также соответствие выводов Arduino и ATmega168.

Связь

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

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

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

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

Arduino Nano программируется с помощью программного обеспечения Ардуино (скачать). Для этого из меню Tools > Board необходимо выбрать "Arduino Diecimila, Duemilanove, or Nano w/ ATmega168" или "Arduino Duemilanove or Nano w/ ATmega328" (в зависимости от микроконтроллера на вашей плате).

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

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

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

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

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

Основные версии плат Arduino представлены следующими моделями:

Due — плата на базе 32-битного ARM микропроцессора Cortex-M3 ARM SAM3U4E;

Leonardo — плата на микроконтроллере ATmega32U4;

Uno — самая популярная версия базовой платформы Arduino;

Duemilanove — плата на микроконтроллере ATmega168 или ATmega328;

Diecimila — версия базовой платформы Arduino USB;

Nano — компактная платформа, используемая как макет. Nano подключается к компьютеру при помощи кабеля USB Mini-B;

Mega ADK — версия платы Mega 2560 с поддержкой интерфейса USB-host для связи с телефонами на Android и другими устройствами с интерфейсом USB;

Mega2560 — плата на базе микроконтроллера ATmega2560 с использованием чипа ATMega8U2 для последовательного соединения по USB-порту;

Mega — версия серии Mega на базе микроконтроллера ATmega1280;

Arduino BT — платформа с модулем Bluetooth для беспроводной связи и программирования;

LilyPad — платформа, разработанная для переноски, может зашиваться в ткань;

Fio — платформа разработана для беспроводных применений. Fio содержит разъем для радио XBee, разъем для батареи LiPo и встроенную схему подзарядки;

Mini — самая маленькая платформа Arduino;

Pro — платформа, разработанная для опытных пользователей, может являться частью большего проекта;

Pro Mini — как и платформа Pro, разработана для опытных пользователей, которым требуется низкая цена, меньшие размеры и дополнительная функциональность.

 

 

Вверх