Arduino nano – практически одно и то же что и Arduino uno. Их отличие — размер платы и отсутствие отдельного разъема для питания. Nano в принципе это одна из самых миниатюрных плат Ардуино. Uno и Nano работают на чипе ATmega168, но Nano работает с меньшим форм фактором. Её часто используют в проектах где главное это компактность из-за размеров платы. Данная плата универсальна и её использование требует знаний о ней. Нужно знать с чем работаешь поэтому начнём с характеристики.
Базовые характеристики
- Микроконтроллер: ATmega328P/ATmega168
- 8-битный AVR – ядро
- Тактовая чистота – 16 МГц
- Цифровые порты: 14 портов ввода-вывода, 6 из которых для вывода ШИМ сигнала
- Размер памяти: 32 Кб Флэш-памяти, 2 Кб ОЗУ, EEPROM 1 Кб или 512 байт
- Габариты: 42×19 мм, 12 г
- Цифровые интерфейсы: 1 x I2C, 1 x SPI, 1 x UART, 1 x ICSP
- Токовая защита: отсутствует, не имеет встроенную защиту от КЗ
- Рабочее напряжение – 5 В
- Допустимое входное напряжение от внешнего источника – 7-12 В
Структура памяти Ардуино нано
Память платы можно разделить на три вида по функционалу. Это возможно благодаря применению МК AVR. Виды памяти:
- SRAM-память – классическая оперативная память, она хранит значения переменных данных вплоть до отключения платы от источника питания.
- Flash-память – хранит программный код в виде прошивки. Её количество зависит от МК на базе которого выполнена Arduino Nano, например если на ATMega168, то объём памяти будет равен 16 Кб, а если на ATMega328, то 32 Кб. Нужно помнить что 2 Кб всегда заняты загрузчиком.
- EEPROM-память – этот вид памяти не сбрасывается даже после отключения от источника питания. Он обычно применяется пользователями для сохранения последних настроек кода. Количество памяти также как и во Flash зависит от МК: ATMega168 имеет 512байт, а ATMega328 имеет в два раза больше – 1 Кб.
Что касается подключения Arduino Nano, тут есть пара важных моментов.
Установка драйвера для CH340
Серия микросхем CH340 предназначена для преобразования шины USB в другие интерфейсы. Данная микросхема значительно дешевле своих аналогов. Для корректной работы необходимо нужно поставить драйвер на компьютер, распаковать его, в папке CH341R запустить SETAP.EXE и установить.
Характеристики и возможности CH340
- Создание виртуального последовательного порта
- Возможность применения всех приложений для COM-портов
- Работа с сигналами 5 и 3.3 В
- Быстрая скорость USB0
- Наличие FIFO
- Поддержка всех классических режимов передачи данных
- Поддержка интерфейсов: RS23, RS422, RS485
- Рабочая температура от -40 °C до 85 °C
Теперь рассмотрим подключение программатора. Чтобы программировать контроллер Atmel, на базе которого собран Arduino Nano, используется интерфейс ICSP. Распиновка Arduino Nano ICSP:
- MISO – принимает от ведомого
- +5V – питание
- SCK – тактовый импульс
- MOSI – принимает от ведущего
- RESET – сброс
- GND – земля
Быстро рассмотрим пины:
- 0 – TX, D0
- 1 – RX,D1
- 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, D9, D10 и D11 используются как выходы ШИМ. D13 – светодиод. Также D10 – SS, D11 – MOSI, D12 – MISO, D13 – SCK используются для связи по интерфейсу SPI.
- 18 – AREF, это опорное напряжение для АЦП микроконтроллера.
- 19 – 26: аналоговые входы A0… A7. Разрядность АЦП 10 бит. A4 (SDA), A5 (SCL) – используются для связи по шине I2C.
Уделим особое внимание пину Vin
В целом, можно обеспечить Arduino питанием тремя разными способами:
- С помощью USB. Плата сама принимает 5 В напряжения.
- С помощью регулируемого источника питания в 5 В, подключая его к “земле” и 5В
- С помощью нерегулируемого источника питания, допустим аккумулятор, к GND и VIN. Рекомендуем использовать источник с напряжением от 9 В – 12 В. Есть встроенный регулятор который даёт в плату ровно 5 В.
Что же такое VIN?
VIN – это абсолютно неизменная мощность подаваемая перед регулятором.
Питание через пин VIN и GND – это наиболее универсальный способ питание платы Arduino. Этот способ даёт возможность питать плату от напряжения 7 -12 В. Вообще можно питать напряжением от 5 -20 В, но лучше использовать рекомендованные нормы.
Также есть один нюанс: питание с помощью VIN возможно только в том случае, если в вашем проекте не используются мощные потребители тока, такие как сервоприводы. Допустимо использовать VIN вместе с: датчиками, сенсорами, дисплеями, модулями, одиночными светодиодами. Для проектов с более мощными нагрузками используем только питание в 5V.
Питание 5V
Этот способ питания самый лучший вариант питать плату, но и тут есть свои минусы:
- Максимальное входное напряжение 5.5 V, если будет выше то МК выйдет из строя
- Минимальные значения можно узнать в даташите. Вот пример: 0 – 4 MHz @ 1.8 – 5.5V, 0 – 10 MHz @ 2.7 – 5.5V, 0 – 20 MHz @ 4.5 – 5.5V.
Закончим с источниками питания и перейдём к платам.
Платы официальные/неофициальные
Сами платы делятся на официальные и неофициальные и при подключении есть несколько различий.
Начнём с официальных (их перестали выпускать в 2016 году):
- Скачиваем и устанавливаем Arduino IDE.
Это среда программирования Arduino, она нужна для работы с платой. Её можно скачать с официального сайта: www.arduino.cc
- Включаем среду разработки.
После скачивания и установки IDE, вам нужно подключить вашу плату в любой свободный порт в вашем ПК и настроить её.
После подключения платы Windows и сообщения “Устройство установлено и готово к использованию”, переходим к настройке программы.
- Настройка Arduino IDE
Переходим в Инструменты>>Порт, и указываем порт к которому присоединяли Arduino. В меню Инструменты>>Платы нужно указать модель подключенной платы.
Нужно понимать если вы подключаете другую плату, данную процедуру нужно будет повторить.
Тестовый запуск на Arduino
“Мигание лампочки” Arduino Nano
Можно применить как тест подключение светодиода, но не забываем что подключаем мы его через резистор и никак иначе, чтобы он не сгорел и не повредилась сама плата. С процессом подключения можно ознакомиться в другой статье.
Подводя итоги хочу сказать, что Arduino Nano крайне полезный инструмент в руках знатока. С помощью неё можно решить большое количество задач по автоматизации различных процессов в жизнедеятельности человека. Несмотря на размеры, Arduino Nano полноценное функциональное устройство, которые базируется на микроконтроллере ATMega328. И на основе вышеперечисленного Arduino Nano – универсальна и является мощным и крайне полезным инструментом.