Плата Arduino Nano v 3.0 : распиновка, схемы, драйвера
Arduino Nano входит в тройку самых популярных плат ардуино. Она позволяет создавать компактные устройства, использующие тот же контроллер, что и в Arduino Uno. В этой статье мы рассмотрим плату поближе: разберемся с распиновкой платы, узнаем особенности подключения и сделаем краткий обзор шилдов и плат расширения для Nano.
Плата Arduino 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 г.
Питание платы может осуществляться двумя способами:
- Через mini-USB или microUSB при подключении к компьютеру;
- Через внешний источник питания, имеющий напряжение 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. В ней также имеется тестовый скетч, который позволит проверить работоспособность установки. Код находится по адресу ArduinolibrariesLiquidCrystalexamplesHelloWorldHelloWorld.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 V3.0 от проверенного временем магазина и производителя RobotDyn
Шилд для nano 3.0
Ethernet-шилд для нано
Итоги
Контроллеры Ардуино используются для реализации различных проектов электроники, автоматизации и робототехники. Ардуино позволяет проектировать и создавать новые устройства.
Сегодня можно найти в магазинах несколько версий платы Ардуино, различающихся по размерам и некоторым характеристикам. Arduino Nano — один из самых лучших вариантов для создания реальных проектов.
Это плата довольно компактная, удобная и обладает всеми возможностями «большой Uno». Можно рекомендовать ее к использованию даже начинающим ардуинщикам.
Источник: https://ArduinoMaster.ru/platy-arduino/plata-arduino-nano/
Знакомство с Arduino Nano на примере китайского аналога
Arduino Nano – компактная платформа с семейства Arduino, которая с одной стороны по функциональности сопоставима с платой Uno, а другой стороны, вся эта функциональность вместилось в компактных размерах, сопоставимых с платой Pro mini. Как и любая другая плата, Nano является открытой платформой и поэтому имеет большое количество разнообразных аналогов. В данной статье мы познакомимся с Arduino Nano, на примере моего китайского аналога.
Как и все предыдущие платы, Nano пришла в запаянном антистатическом пакете.
В комплекте сама плата и контактные площадки.
На Алиэкспресс с доставкой, она мне обошлась в $2.57, в то время как оригинальная плата стоит $22.
По функциональности, Nano можно сопоставить с Uno, но из-за своих компактных размеров, к ней нельзя подключать «бутербродом» шилды от Uno.
По размерам, плата чуть больше, чем плата Pro mini, ровно настолько, сколько понадобилось места для miniUSB разъёма. Так же можно купить аналог с microUSB разъёмом.
В пользу миниатюрных размеров, пришлось отказаться от разъёма питания, который имеется у Uno.
Для визуального представления габаритов, моя плата Nano, наравне с китайскими аналогами Arduino Uno и Pro mini.
За время своего существования, плата претерпела некоторые изменения и на данный момент актуальной является третья версия.
Визуальное сравнение с оригинальными платами, слева на право: оригинальная плата 2-й версии, оригинальная плата 3-й версии и мой китайский аналог Nano, так же 3-й версии.
Оригинальная Arduino Nano 2-й версии строилась на ATmega168, третья версия платы обновила микроконтроллер до ATmega328.
Мой аналог так же на ATmega328, в отличии от ATmega168, имеет на борту в два раза больше памяти. Работает Nano на частоте 16 МГц. По сравнению со 2-й версией, в 3-й установлен кварц в миниатюрном корпусе,
Визуальное сравнение плат с обратной стороны, моя крайняя справа.
Основное отличие китайского аналога от оригинала, использование в качестве преобразователя USB to COM, микросхемы CH340G. Это тот самый чип, который используют в аналогах Uno и переходнике USB to COM для Pro mini. В оригинальной плате используется микросхема FTDI FT232RL.
Драйвер от оригинальной Nano не подойдёт к аналогу на CH340G, нужны другие драйвера.
Драйвер для Windows 98/ME/2000/XP/Server 2003/2008/2012/2016/VISTA/Win7/Win8/8.1/Win10 32/64 bit:
Во всём остальном, китайский аналог Arduino Nano на 100% совместим оригинальной платой.
Про питание Arduino Nano
Питание на плату можно производить через miniUSB, подключив её USB кабелем к компьютеру или ноутбуку. Так же питание можно подавать с разнообразных блоков питания, батарей и аккумуляторов, для этих целей имеются на плате специальные пины.
Если собираетесь питать плату от стабилизированного напряжения 5 В, тогда + питания нужно подключать к 27 пину (+5V). В таком случае напряжение будет напрямую идти на контроллер. При подаче большего напряжения, плата сгорит.
Если напряжение больше 5 В, тогда + питания нужно подключать к 30 пину (VIN). К этому пину можно подключать не стабилизированное напряжение в диапазоне от 6 до 20 В.
В таком случае, питание будет идти через встроенный на плате стабилизатор напряжения, а с него, уже стабилизированные 5 В будут подаваться на контроллер. Минус питания в обоих случаях можно подключать на 4 либо 29 пин (GND).
Входы и выходы
По вводам / выводам, китайский аналог полностью совместим с оригиналом.
Имеется 14 цифровых выводов, которые могут быть настроены как входами, так и выходами. D0 соответствует 2 пину (RX0), D1 соответствует 1 пину (TX1). Пины D2-D13 подписаны на плате соответственно. Каждый вывод может пропускать ток до 40 мА. Так же имеется 8 аналоговых входов (A0-A7).
Светодиоды
На плате имеется 4 светодиода:
RX, TX – мигают при передаче данных по USB кабелю, между платой и компьютером.
PWR – горящий светодиод сигнализирует о наличии питания на плате.
L – светодиод, подключенный на 13 пин. Если на этом выводе будет высокий потенциал, он загорится.
Самый первый скетч как раз и будет состоять в том, что бы запрограммировать Nano на мигание этого светодиода.
Про прошивку Arduino Nano
Скетчи в плату загружаются через miniUSB (microUSB) разъём. При подключении платы к компьютеру, появляется неизвестное устройство. Устанавливаем драйвера, по ссылке выше, в итоге, в диспетчере устройств появляется новое устройство “USB-SERIAL CH340“. Рядом будет номер виртуального Com-порта, в моём случае это “COM11“.
Теперь попробуем залить в китайский аналог Arduino Nano первый скетч, который будет мигать светодиодом “L“.
Запускаем Arduino IDE.
Выбираем плату в которую нужно зашить скетч: «Инструменты» – «Плата:» и выбираем свою плату, в данном случае это «Arduino Nano».
Поскольку платы Nano могут использовать различные микроконтроллеры (ATmega168 или ATmega328 ), в зависимости от версии 2 или 3, выбираем свою конфигурацию: «Инструменты» – «Процессор:» в данном примере выбираю «ATmega328».
Выбираем порт, к которому подключена плата Nano: «Инструменты» – «Порт:» в моём случае это «COM11».
Выбираем скетч «Blink»: «Файл» – «Образцы» – «01.Basics» – «Blink».
Нажимаем кнопку «Вгрузить», если нет ошибок, скетч загружается в плату.
Светодиод “L” начнёт мигать красным цветом.
Источник: http://radiolis.pp.ua/arduino/34-znakomstvo-s-arduino-nano-na-primere-kitajskogo-analoga
Arduino Nano v3.0 (Оригинал)
Arduino Nano
ArduinoNano – это аналог ArduinoUno, только более малых размеров. Из-за уменьшения размеров платы, пришлось пожертвовать разъемом питания, вместо AVRмикроконтроллера (ATmega16U2) для программирования самой ArduinoNano, используется чип FTDIFT232RL, так же пришлось заменить стандартный USBразъем на MiniUSB.
А в остальном, ArduinoNano, ничем не отличается от ArduinoUno, разве что ArduinoNanoимеет штырьковые контакты, что удобно при использовании breadboard. ArduinoNanoиспользуют тогда, когда требуется малый размер устройства и не хватает ресурсов ArduinoMini (или не хочется паять панельки контактов на ArduinoMini).
Описание: Arduino Nano = Arduino Uno
Таблица быстрых данных:
Микроконтроллер | Atmel ATmega168 или ATmega328 |
Рабочее напряжение (логический уровень) | 5 В |
Входное напряжение (рекомендуется) | 7-12 V |
Входное напряжение (пределы) | 6-20 V |
Цифрового ввода-вывода Pins | 14 (6 из которых обеспечивают выход ШИМ) |
Выводы аналогового ввода | 8 |
DC Ток на O Pin I | 40 мА |
Flash -память | 16 Кб ( ATmega168 ) или 32 Кб ( ATmega328 ) , из которых 2 КБ используется загрузчиком |
SRAM – память | 1 Кб ( ATmega168 ) или 2 Кб ( ATmega328 ) |
EEPROM – память | 512 байт ( ATmega168 ) или 1 Кб ( ATmega328 ) |
Тактовая частота | 16 МГц |
Габаритные размеры | 0,73 “х 1,70” |
длина | 45 мм |
Ширина | 18 мм |
Вес | 5 г |
Для тех, кто не знает, что такое Arduinoи с чем его едят!
Arduino – это универсальная платформа, которая позволяет собирать множество различных проектов, от простого мигания светодиодом до сложнейших роботов и Smart систем на подобии умного дома.
Arduino проект будет интересен электронщикам, конструкторам, инженерам, дизайнерам, креативным людям, а самое главное, новичкам, которые еще ничего не смыслят в электроника/микроэлектронике, но хотят все освоить и познать. Платы Arduino просты в работе и подключении, создать свой проект без каких-то особых знаний – это просто.
Создавая проекты, Arduino может работать как отельный микроконтроллер, а может работать в связке с компьютером или еще какими-нибудь платами, все зависит от вашей идеи, задачи и реализации.
Платформа Arduino делится на две части: аппаратную и программную, они обе легки в использовании и гибки в работе. Язык программирования: упрощенный си++ или еще как его называют Wiring.
Программы для Arduino можно писать, как в привычном ArduinoIDE (который поставляется бесплатно и кстати говоря, к которому уже существует множество различных библиотек для работы с разными модулями), так и в любой другой среде си/си++ или Java.
А для детей, которые хотят научиться строить роботов и подобные системы, существует среда разработки Scratch, где все программируется перетаскиванием блоков. Платформа Arduino поддерживается всеми операционным системами: Windows, Linux, MacOSX, Android.
Питание
ArduinoNano можно запитать от USB кабеля или от любого другого источника питания (блок питания, батарейки, аккумуляторы и т.д.) Источник питания, который вы подключите к Arduino определяется автоматически на плате.
ArduinoNano работает от 6 до 20 Вольт. В действительности она будет работать и от 4.
5 Вольт, однако для нормального функционирования платы ArduinoNano рекомендуется от 7 Вольт и выше, а если вы будете подключать датчики или любые другие устройства, которые будут запитаны от Arduino платы, то вам стоит увеличить напряжение и ток подаваемый на плату (в диапазоне разрешенного). Стоит заметить, что 6 и 20 Вольт, это min и max, напряжение выше 12 Вольт, может привести к перегреву и повреждению платы, поэтому мы рекомендуем использовать рабочее напряжение от 7 до 12 Вольт.
Arduino можно запитать подключившись к следующим контактам:
VIN – пин на котором такое же напряжение, как подается на разъем питания Arduino (напряжение до установленного на плату стабилизатора напряжения). Если вы запитали Arduino плату через USB, то этот пин, будет выдавать 5 Вольт.
5V – пин на котором при подключенном к плате источнике питания, всегда 5 Вольт, не зависимо от того, какое напряжение вы подаете на плату, так как это напряжение стабилизируется установленным на плату, стабилизатором напряжения. Максимальный ток, который пин выдает – 800 мА.
3.3V – пин на которм при подключенном к плате источнике питания, всегда 3.3 Вольт, не зависимо от того, какое напряжение вы подаете на плату. Максимальный ток, который пин выдает 50 мА.
GND – земля (общий пин). При подключении разных устройств, не забывайте из подключать к общему пину, так как пренебрежение этим, грозит не правильной работой схемы или вовсе не будет работать.
Память
Так как ArduinoNanoсуществует двух версий с разными AVRмикроконтроллерами, то и пожалуй описание раздела “Память”, будет два. ВНИМАНИЕ! Выбери подходящую версию своей платы (посмотри на маленький, черненький квадратик на плате – AVRмикроконтроллер, на нем будет написано ATmega328 или ATmega168).
ArduinoNano (ATmega 328):
ArduinoNano (ATmega 328) имеет 32 кБ flash – памяти из которых 2 кБ зарезервировано так сказать системой под bootloader.
С помощью него, Arduino плату можно прошивать с обычного компьютера через USB кабель без каких-либо сложностей. Эта память является постоянной и не имеет предназначения изменяться в входе работы Arduino.
Она предназначена для хранения самой программы и статических ресурсов (например, данных).
Для хранения временных данных (например, переменных программ) используется SRAM – память, которой у ArduinoNano (ATmega 328) 2 кБ. SRAM – память, это энергозависимая память, поэтому при отключении питания платы, она обнуляется (очищается).
Для хранения данных долговременно, используется EEPROM – память, у ArduinoNano (ATmega 328) ее 1 кБ. Если проводить с чем-то параллель, то можно сказать, что это жесткий диск или флэша.
ArduinoNano (ATmega 168):
ArduinoNano (ATmega 168) имеет 16 кБ flash – памяти из которых 2 кБ зарезервировано так сказать системой под bootloader.
С помощью него, Arduino плату можно прошивать с обычного компьютера через USB кабель без каких-либо сложностей. Эта память является постоянной и не имеет предназначения изменяться в входе работы Arduino.
Она предназначена для хранения самой программы и статических ресурсов (например, данных).
Для хранения временных данных (например, переменных программ) используется SRAM – память, которой у ArduinoNano (ATmega168) 1 кБ. SRAM – память, это энергозависимая память, поэтому при отключении питания платы, она обнуляется (очищается).
Для хранения данных долговременно, используется EEPROM – память, у ArduinoNano (ATmega 168) ее 512 байт. Если проводить с чем-то параллель, то можно сказать, что это жесткий диск или флэша.
Ввод / вывод
На плате ArduinoNano, располагается 14 пинов (с англ. – pins) – (контактов), которые можно использовать для цифрового ввода и вывода.
В зависимости от программы, каждый пин конфигурируется как вход или выход и выполняет определенную задачу. Каждый контакт рассчитан на ток до 40 мА и работает с напряжением до 5 Вольт.
На каждом пине, встроен резистор от 20 до 50 кОм, но по умолчанию, они отключены. Так же, многие контакты могут выполнять разные задачи, например:
SerialPort: нулевой (RX) и первый (TX) контакт используется для приема и передачи информации по USB.
Прерывания (внешние): второй и третий пин, могут вызывать заданную функцию при изменении входного сигнала.
PWM: 3, 5, 6, 9 – 11 пины могут являться выходами широтно-импульсной модуляцией с 256 градациями (0 – 256). Это может использоваться для управления скоростью вращения мотора, яркостью светодиода, плавностью затухания или включения светодиода, торможение или ускорение мотора и т.д.
На плане ArduinoUno расположено 6 контактов аналогового ввода, каждый из этих пинов, имеет разрешение в 1024 градации. По умолчанию, значение аналогового входа, меряется между GND (общий) и 5 Вольт, но если требуется изменить верхнюю границу, то можно подать требуемое напряжение на контакт AREF.
Так же на плате имеется вход Reset, установив его в логический ноль, плата Arduino перезагрузится, а все временные данные сбросятся. Этот вход, аналог кнопки сброса Reset.
Распиновка:
Распиновка AVRмикроконтроллера ATmega 328P:
Распиновка AVR микроконтроллера ATmega 168:
Принципиальная схема:
Взаимодействие
ArduinoNano может общаться с другими устройствами несколькими способами:
Последовательное (SerialUARTTTL) соединение через нулевой (RX) и первый (TX) пины – протокол общения RX232. На Arduino установлен чип FTDIFT232RL, который это соединение транслирует через USBà на компьютере появляется виртуальный COM – порт.
Программная часть, о которой мы говорили ранее (в частях платформы), позволяет обмениваться по этому каналу текстовыми сообщениями. На плате встроены светодиоды RX и TX, которые светятся при приеме или передаче данных. Используя дополнительную библиотеку, можно установить пинами последовательного порта, любые другие контакты.
При использовании дополнительных модулей или плат расширителей, появляются возможности общения по WiFi, Bluetooth, Радио каналу, Ethernet-сеть и мн.др.
Защита USB
Платы Arduino обладают предохранителем, который защищается ваши USB-порты от коротких замыканий и высокого напряжения, скачков напряжения.
Большинство компьютеров обладают своими предохранителями, но для большей уверенности, разработчики решили все-таки их установить еще и на плату.
Данный предохранитель, разрывает соединение при подаче на USB – порт ток в 500 мА и более, а после нормализации ситуации, восстанавливает соединение.
Габариты
Размер ArduinoNano составляет 45 на 18 мм. Разъемы питания и USB выступают на несколько мм за границы основания платы. Так же предусмотрены отверстия для шуропов или болтов, чтобы надежно закрепить плату. Расстояние между контактами на плате, составляет 0.1” (2,54 мм) за исключением 7 и 8 пина, что составляет 1.6”.
Ссылка на видеобзор:
Ссылка на datasheet (техническое описание) ATmega328 (PDF):
Ссылка на datasheet (техническое описание) ATmega 168 (PDF):
Ссылка на принципиальную схему ArduinoNano (PDF):
Ссылка на архив с Eagle файлами платы:
Источник: http://robomarket.by/Arduino-Nano-v3
Arduino Nano – маленький, да удаленький
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 позволяет работать только с двухслойными платами. Поэтому, для возможности работы со схемой в бесплатной версии, проект выложен без трассировки печатной платы.
Характеристики:
Микроконтроллер | Atmel ATmega168 или ATmega328 |
Рабочее напряжение (логический уровень) | 5В |
Напряжение питания (рекомендуемое) | 7-12В |
Напряжение питания (предельное) | 6-20В |
Цифровые входы/выходы | 14 (из которых 6 могут использоваться как ШИМ-выходы) |
Аналоговые входы | 8 |
Максимальный ток одного вывода | 40 мА |
Flash-память | 16 КБ (ATmega168) или 32 КБ (ATmega328) из которых 2 КБ используются загрузчиком |
SRAM | 1 КБ (ATmega168) или 2 КБ (ATmega328) |
EEPROM | 512 байт (ATmega168) или 1 КБ (ATmega328) |
Тактовая частота | 16 МГц |
Размеры платы | 1.85 см х 4.3 см |
Питание
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 – выключается.
В Arduino Ethernet есть 8 аналоговых входов, каждый из которых может представить аналоговое напряжение в виде 10-битного числа (1024 различных значения).
По умолчанию, измерение напряжения осуществляется относительно диапазона от 0 до 5 В. Тем не менее, верхнюю границу этого диапазона можно изменить, используя вывод AREF и функцию analogReference().
Помимо этого, некоторые из выводов имеют дополнительные функции:
- I2С: выводы 4 (SDA) и 5 (SCL). С использованием библиотеки Wire (документация на веб-сайте Wiring) данные выводы могут осуществлять связь по интерфейсу I2C (TWI).
Помимо перечисленных на плате существует еще несколько выводов:
- 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 активизируется загрузчик на время около полсекунды. Несмотря на то, что загрузчик запрограммирован игнорировать посторонние данные (т.е.
все данные, не касающиеся процесса прошивки новой программы), он может перехватить несколько первых байт данных из посылки, отправляемой плате сразу после установки соединения.
Соответственно, если в программе, работающей на Ардуино, предусмотрено получение от компьютера каких-либо настроек или других данных при первом запуске, убедитесь, что программное обеспечение, с которым взаимодействует Ардуино, осуществляет отправку спустя секунду после установки соединения.
Источник: https://ngin.pro/smart-house/32-arduino-nano-malenkiy-da-udalenkiy.html
Arduino Nano
Arduino Nano 3.0
Принципиальные схемы и исходные данные
Arduino Nano 3.0 (ATmega328): схемы и файлы Eagle.
Платформа имеет штырьковые контакты, что позволяет легко устанавливать её на breadboard. Используйте Arduino Nano там, где важна компактность, а возможностей Arduino Mini либо не достаточно, либо не хочется заниматься пайкой.
Как подключить к компьютеру статья здесь
Питание:
Arduino Nano может получать питание через подключение Mini-B USB, или от нерегулируемого 6-20 В (вывод 30), или регулируемого 5 В (вывод 27), внешнего источника питания. Автоматически выбирается источник с самым высоким напряжением.
Микросхема FTDI FT232RL получает питание, только если сама платформа запитана от USB. Таким образом при работе от внешнего источника (не USB), будет отсутствовать напряжение 3.3 В, генерируемое микросхемой FTDI, при этом светодиоды RX и TX мигаю только при наличие сигнала высокого уровня на выводах 0 и 1.
Память
Микроконтроллер ATmega328 имеет 32 кБ ( 2 кБ используется для хранения загрузчика). ATmega328 – 2 кБ ОЗУ и 1 Кб EEPROM.
Входы и Выходы
Каждый из 14 цифровых выводов Nano, используя функции pinMode(), digitalWrite(), и digitalRead(), может настраиваться как вход или выход. Выводы работают при напряжении 5 В. Каждый вывод имеет нагрузочный резистор (стандартно отключен) 20-50 кОм и может пропускать до 40 мА. Некоторые выводы имеют особые функции:
- Последовательная шина: 0 (RX) и 1 (TX). Выводы используются для получения (RX) и передачи (TX) данных TTL. Данные выводы подключены к соответствующим выводам микросхемы последовательной шины FTDI USB-to-TTL.
- Внешнее прерывание: 2 и 3. Данные выводы могут быть сконфигурированы на вызов прерывания либо на младшем значении, либо на переднем или заднем фронте, или при изменении значения. Подробная информация находится в описании функции attachInterrupt().
- ШИМ: 3, 5, 6, 9, 10, и 11. Любой из выводов обеспечивает ШИМ с разрешением 8 бит при помощи функции analogWrite().
- SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Посредством данных выводов осуществляется связь SPI, которая, хотя и поддерживается аппаратной частью, не включена в язык Arduino.
- LED: 13. Встроенный светодиод, подключенный к цифровому выводу 13. Если значение на выводе имеет высокий потенциал, то светодиод горит.
На платформе Nano установлены 8 аналоговых входов, каждый разрешением 10 бит (т.е. может принимать 1024 различных значения). Стандартно выводы имеют диапазон измерения до 5 В относительно земли, тем не менее имеется возможность изменить верхний предел посредством функции analogReference(). Некоторые выводы имеют дополнительные функции:
- I2C: 4 (SDA) и 5 (SCL). Посредством выводов осуществляется связь I2C (TWI). Для создания используется библиотека Wire (информация на сайте Wiring).
Дополнительная пара выводов платформы:
- AREF. Опорное напряжение для аналоговых входов. Используется с функцией analogReference().
- Reset. Низкий уровень сигнала на выводе перезагружает микроконтроллер. Обычно применяется для подключения кнопки с целью блокировки микроконтроллера.
Обратите внимание на соединение между выводами Arduino и портами ATmega168.
Связь
На платформе Arduino Nano установлено несколько устройств для осуществления связи с компьютером, другими устройствами Arduino или микроконтроллерами. ATmega168 и ATmega328 поддерживают последовательный интерфейс UART TTL (5 В), осуществляемый выводами 0 (RX) и 1 (TX).
Установленная на плате микросхема FTDI FT232RL направляет данный интерфейс через USB, а драйверы FTDI (включены в программу Arduino) предоставляют виртуальный COM порт программе на компьютере. Мониторинг последовательной шины (Serial Monitor) программы Arduino позволяет посылать и получать текстовые данные при подключении к платформе.
Светодиоды RX и TX на платформе будут мигать при передаче данных через микросхему FTDI или USB подключение (но не при использовании последовательной передачи через выводы 0 и 1).
Библиотекой SoftwareSerial возможно создать последовательную передачу данных через любой из цифровых выводов Nano.
ATmega168 и ATmega328 поддерживают интерфейсы I2C (TWI) и SPI. В Arduino включена библиотека Wire для удобства использования шины I2C. Более подробная информация находится в документации. Для использования интерфейса SPI обратитесь к техническим данным микроконтроллеров ATmega168 и ATmega328.
Программирование
Платформа программируется посредством ПО Arduino. Из меню Tools > Board выбирается «Arduino Diecimila, Duemilanove или Nano w/ ATmega168» или «Arduino Duemilanove или Nano w/ ATmega328» (согласно установленному микроконтроллеру). Подробная информация находится в справочнике и инструкциях.
Микроконтроллеры ATmega168 и ATmega328 поставляются с записанным загрузчиком, облегчающим запись новых программ без использования внешних программаторов. Связь осуществляется оригинальным протоколом STK500.
Имеется возможность не использовать загрузчик и запрограммировать микроконтроллер через выводы блока ICSP (внутрисхемное программирование). Подробная информация находится в данной инструкции.
Автоматическая (программная) перезагрузка
Nano разработана таким образом, чтобы перед записью нового кода перезагрузка осуществлялась самой программой, а не нажатием кнопки на платформе. Одна из линий FT232RL, управляющих потоком данных (DTR), подключена к выводу перезагрузки микроконтроллеров ATmega168 или ATmega328 через резистор 100 нФ.
Активация данной линии, т.е. подача сигнала низкого уровня, перезагружает микроконтроллер. Программа Arduino, используя данную функцию, загружает код одним нажатием кнопки Upload в самой среде программирования.
Подача сигнала низкого уровня по линии DTR скоординирована с началом записи кода, что сокращает таймаут загрузчика.
Функция имеет еще одно применение. Перезагрузка Nano происходит каждый раз при подключении к программе Arduino на компьютере с ОС Mac X или Linux (через USB). Следующие полсекунды после перезагрузки работает загрузчик.
Во время программирования происходит задержка нескольких первых байтов кода во избежание получения платформой некорректных данных (всех, кроме кода новой программы).
Если производится разовая отладка скетча, записанного в платформу, или ввод каких-либо других данных при первом запуске, необходимо убедиться, что программа на компьютере ожидает в течение секунды перед передачей данных.
Атрибуты товара
Характеристики платформы
EEPROM | 1 Кб (ATmega328) |
Аналоговые входы | 8 |
Входное напряжение (предельное) | 6-20 В |
Входное напряжение (рекомендуемое) | 7-12 В |
Микроконтроллер | ATmega328 |
ОЗУ | 2 Кб (ATmega328) |
Постоянный ток через вход/выход | 40 мА |
Рабочее напряжение | 5 |
Тактовая частота | 16 |
Флеш-память | 32 Кб (ATmega328) |
Цифровые Входы/Выходы | 14 (6 из которых могут использоваться как выходы ШИМ) |
(информация взята с сайта arduino.net.ua )
Источник: http://myarduino.at.ua/publ/arduino_nano/1-1-0-2
ArduinoNano
Getting Started with the Arduino Nano
The Arduino Nano is a small, complete, and breadboard-friendly board based on the ATmega328P; offers the same connectivity and specs of the UNO board in a smaller form factor.
The Arduino Nano is programmed using the Arduino Software (IDE), our Integrated Development Environment common to all our boards and running both online and offline. For more information on how to get started with the Arduino Software visit the Getting Started page.
Use your Arduino Nano on the Arduino Web IDE
All Arduino and Genuino boards, including this one, work out-of-the-box on the Arduino Web Editor, no need to install anything.
The Arduino Web Editor is hosted online, therefore it will always be up-to-date with the latest features and support for all boards. Follow this simple guide to start coding on the browser and upload your sketches onto your board.
Use your Arduino Nano on the Arduino Desktop IDE
If you want to program your Arduino Nano while offline you need to install the Arduino Desktop IDE To connect the Arduino Nano to your computer, you'll need a Mini-B USB cable. This also provides power to the board, as indicated by the blue LED (which is on the bottom of the Arduino Nano 2.x and the top of the Arduino Nano 3.0).
Open your first sketch
Open the LED blink example sketch: File > Examples >01.Basics > Blink.
Select your board type and port
You'll need to select the entry in the Tools > Board menu that corresponds to your Nano board.
NOTE: We have updated the NANO board with a fresh bootloader. Boards sold from us from January 2018 have this new bootloader, while boards manufactured before that date have the old bootloader. First, make sure you have the Arduino AVR Core 1.16.21 or later looking at the Board Manager.
Then, to program the NEW Arduino NANO boards you need to chose Processor > “ATmega328P”. To program old boards you need to choose Processor > “ATmega328P (Old Bootloader)”.
If you get an error while uploading or you are not sure which bootloader you have, try each type of processor 328P until your board gets properly programmed.
\
Upload and Run your first Sketch
To upload the sketch to the Arduino Nano, click the Upload button in the upper left to load and run the sketch on your board:
Wait a few seconds – you should see the RX and TX leds on the board flashing. If the upload is successful, the message “Done uploading.” will appear in the status bar.
Learn more on the Desktop IDE
See this tutorial for a generic guide on the Arduino IDE with a few more infos on the Preferences, the Board Manager, and the Library Manager.
Tutorials
Now that you have set up and programmed your Arduino Nano board, you may find inspiration in our Project Hub tutorial platform.
For more details on the Arduino Nano, see the hardware page.
Last revision 2018/02/19 by SM
Источник: https://www.arduino.cc/en/Guide/ArduinoNano