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

Arduino Nano (AN) — одна из самых популярных плат семейства Arduino. В ней установлен тот же микроконтроллер, что и в модели Uno (ATmega328P), хотя размеры варианта Nano намного меньше. На основе платы можно собирать различные экспериментальные устройства. Для этого необходимо знать ее характеристики.

Распиновка платы Arduino Nano.

Распиновка платы Arduino Nano

По обеим сторонам платы располагаются контакты пинов, с каждой стороны по 15 штук.

Назначение контактов:

  • 1, 2: работа с UART-интерфейсом;
  • 3, 28: сброс микроконтроллера;
  • 4, 29: общий провод;
  • 5: внешнее прерывание;
  • 6: внешнее прерывание / создание сигнала с широтно-импульсной модуляцией;
  • 7: работа с I2C-интерфейсом / таймер-счетчик 0;
  • 8: работа с I2C-интерфейсом / создание ШИМ-сигнала / таймер-счетчик 1;
  • 9, 12: создание ШИМ-сигнала;
  • 10, 11: цифровые пины ввода/вывода, специальных функций нет;
  • 13, 14, 15: работа с SPI-интерфейсом / создание ШИМ-сигнала;
  • 16: подключение светодиода / работа с SPI-интерфейсом;
  • 17: питание 3,3 В;
  • 18: опорное напряжение для АЦП;
  • 19-26: аналоговые входы (AP) для АЦП;
  • 27: питание 5 В;
  • 30: входной сигнал VIN 7-12 В.

У Arduino Nano 14 цифровых портов (DP) и 8 AP.

Технические характеристики платы

Питание 5 В
Входной сигнал 7-12 В (DC)
Количество DP 14 (6 для ШИМ)
Количество AP 8
Максимальный ток DP 40 мА
Память формата Flash 16 / 32 Кб
Оперативная память 1 / 2 Кб
Память формата EEPROM 512 байт / 1 Кб
Тактовая частота работы микроконтроллера 16 МГц
Габариты Ширина — 19 мм, длина — 42 мм
Вес 7 г

Подробный обзор возможностей платы приведен в Datasheet — технической документации. Там же указаны детальные характеристики и описание AN.

Распиновка.

Схема электрическая

Важнейшими элементами платы Arduino Nano являются программатор (ISCP-разъем) и микроконтроллер (ATmega328P). Знать их структурные, принципиальные схемы и назначение контактов необходимо каждому, кто собирается работать с данной платой.

Схема ISCP «Ардуино Нано»

ISCP-разъем (или SPI) — программатор, через который скетч (код для микроконтроллера платы) загружается в ATmega328P. У него 6 контактов. Отверстие первого из них выполнено в форме квадрата для удобства отсчета.

Распиновка разъема:

  1. MISO: вход ведущего, выход ведомого при передаче данных.
  2. +VCC: напряжение питания.
  3. SCK: последовательный тактовый сигнал.
  4. MOSI: выход ведущего, вход ведомого при передаче данных.
  5. Reset: сброс.
  6. GND: общий провод.

Принципиальная схема контроллера платы

Контроллер платы — ATmega328P. Ядро микросхемы — CPU, к которому идут 2 шины (шина данных и шина ввода/вывода данных), элементы управления (например, пин Reset, ответственный за сброс микроконтроллера) и памяти.

Типы памяти в контроллере:

  • SRAM;
  • Flash;
  • EEPROM.

К шине данных идут следующие элементы:

  1. Сторожевой таймер.
  2. АЦП.
  3. Внешнее прерывание.
  4. Первый и второй таймеры-счетчики.
  5. USART и I2C (у Atmel этот интерфейс называется TWI).

К шине ввода/вывода данных подключены:

  1. Порты ввода/вывода.
  2. Нулевой таймер-счетчик.
  3. SPI-интерфейс.
Контроллер может быть выполнен как в MLF-, так и в PDIP-корпусе. В Arduino Nano установлен MLF-вариант микроконтроллера.

Схема ISCP

Порты ввода/вывода и питание

К портам ввода/вывода относят:

  • цифровые разъемы;
  • аналоговые разъемы;
  • разъемы, выводящие ШИМ-сигнал;
  • разъемы для работы с АЦП, I2C (TWI), SPI, UART.

Для работы с каждым интерфейсом в языке C для Arduino предусмотрена отдельная библиотека, что облегчает работу программисту, который пишет код.

Питание к плате модели «Нано» можно подключить 3 способами:

  1. Через разъем mini-USB. Этот способ удобен тем, что разработчику не надо подводить к плате дополнительный ток. Подобный источник питания поддерживает системы, позволяющие регулировать значение входного тока.
  2. Через нерегулируемые источники на 6-20 В.
  3. Через регулируемый источник питания 5 В.

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

Питание от внешнего источника

Питание через нерегулируемые источники на 6-20 В обеспечивается подсоединением блока источника сигнала к пину 30 и общему проводу соответственно.

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

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

Прошивка и память Arduino v3 0 CH340G

микросхема CH340G

Стандартный вариант платы Arduino Nano, работающий на микросхеме ATmega328P, можно прошить исключительно через программатор с SPI-интерфейсом.

Кроме того, производится модель AN, на которой дополнительно установлена микросхема CH340G. Преимущество данной сборки в том, что плата может быть прошита без подключения SPI-программатора через USB-порт. Это позволяет сделать встроенный загрузчик и преобразователь USB-COM.

При необходимости такую Nano-модель можно прошить и через SPI-интерфейс.

Чтобы загружать прошивки через mini-USB, потребуется:

  1. Подсоединить плату к ПК через USB. Система определит устройство как USB 2.0 SERIAL.
  2. Скачать и установить драйвер CH340G.
Как только драйвер будет установлен, система определит плату корректно и ее можно будет прошить через программатор. На плате загорится светодиод ON, а светодиод LED будет мигать.

Виды памяти

ATmega328P поддерживает 3 вида памяти:

  1. Flash. Она выступает в качестве постоянного запоминающего устройства.
  2. ОЗУ.
  3. EEPROM. Эта память также является постоянным запоминающим устройством, но ее можно перепрограммировать.

В микроконтроллере от Atmel 32 Кб Flash-памяти (свободно 30 Кб, т. к. 2 Кб занято загрузчиком), 2 Кб ОЗУ и 1 Кб EEPROM.

Элементы платы

Arduino Nano состоит из множества элементов, в числе которых:

  • микросхемы;
  • пассивные элементы (резисторы, конденсаторы, диоды);
  • разъемы;
  • регуляторы.

Микросхема платы FT232R

Микросхема позволяет подключать плату через USB. Чип, установленный в AN, не может работать напрямую с USB-интерфейсом, поэтому FT232R преобразует его в UART-интерфейс.

Микросхема платы FT232R.

Сердце платформы — микроконтроллер ATmega328P

ATmega328P — главный элемент управления платой. В него загружается написанный программистом скетч, и контроллер рассылает команды различным элементам платы. Например, микроконтроллер заставляет диоды мигать, реле — переключаться, а пьезоэлемент — издавать звуки.

Светодиодная индикация

В плату встроено 4 светодиода, у каждого из которых свое назначение:

  1. RX- и TX-светодиоды мигают, когда происходит передача данных по UART.
  2. L-диод зажигается, когда на него подается высокий уровень сигнала, и гасится при низком уровне.
  3. ON-светодиод горит при наличии питания на плате.

Дополнительно практически на любой пин микроконтроллера можно завести другие светодиоды, 7-сегментные индикаторы или даже дисплеи.

Разъем mini-USB

С помощью разъема mini-USB плату можно подключить к персональному компьютеру. Также AN может получать через этот интерфейс питание от внешних источников.

Линейный понижающий регулятор напряжения 5 В

В качестве регулятора используется микросхема LM1117MPX-5.0. Она обеспечивает преобразование сигнала питания AN в сигнал питания микроконтроллера ATmega и других логических элементов, которые не поддерживают питание более 5 В. Например, элементы транзисторно-транзисторной логики (ТТЛ) запитываются от сигнала такой величины.

ICSP-разъем для ATmega328

Этот интерфейс позволяет загружать прошивку в микроконтроллер стандартным способом. Специальный шлейф одним концом подключается к программатору, подсоединенному к ПК, а другим — к ICSP-разъему.

ATmega328

Особенности установки драйверов

При установке драйверов для Arduino Nano на Windows OS система обнаружит необходимый софт автоматически, если при этом использовался установочный файл с официального сайта Arduino.

Если же драйверы не были обнаружены и установлены системой, необходимо:

  1. Открыть панель управления.
  2. Перейти в раздел «Система и безопасность».
  3. Попасть во вкладку «Система».
  4. Открыть диспетчер устройств.
  5. Открыть вкладку с COM- и LPT-портами.
  6. Если во вкладке нет порта FT232R USB UART или раздела с COM- и LPT-разъемами, перейти во вкладку «Другие устройства» и зайти в раздел «Неизвестное устройство».
  7. Кликнуть ПКМ на FT232R USB UART.
  8. Выбрать «Обновить драйверы».
  9. Нажать «Выполнить поиск драйверов на компьютере».
  10. Выбрать FTDI USB Drivers в папке Drivers от Arduino.

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

Запуск Arduino Nano

Чтобы начать работать с платой, необходимо подключить ее через USB к ПК. Через этот же порт будет поступать сигнал питания. Как только оно будет подведено к плате, загорится индикаторный светодиод синего цвета (в модели v.2.x он находится в нижней части платы, в модели v.3.x — в верхней).

Настройка Arduino

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

  • зайти в Tools;
  • перейти в Board;
  • выбрать пункт Arduino Duemilanove or Nano w/ *модель микроконтроллера* (для v.2.x — ATmega168, для v.3.x — ATmega328);
  • перейти в Tools;
  • зайти в Serial Port;
  • нажать Upload.

После нажатия кнопки Upload микроконтроллер сбросится, а новый скетч будет загружен.

Если появятся какие-либо проблемы при прошивке, нужно зайти в раздел «Устранение неполадок» и изучить методы их решения.

Способы программирования

Запрограммировать плату можно с помощью как рукописного, так и графического кода.

Графический метод программирования заключается в применении плагина ArduBlock (поддерживает русский язык), который встраивается в Arduino IDE. Программа изначально оформляется в виде блок-схемы, а затем автоматически конвертируется в код Arduino IDE (подойдет для начинающих программистов).

Чтобы установить плагин Arduino IDE, следует:

  1. Установить среду программирования Arduino IDE (доступна на официальном сайте Arduino).
  2. Скачать плагин ArduBlock с сайта разработчиков.
  3. Переименовать скачанный файл в ardublock-all.
  4. Создать в разделе «Документы» папки Arduino, затем tools, ArduBlock и tool.
  5. В папку tool переместить скачанный и переименованный файл.

Чтобы работать с этим плагином, нужно:

  1. Запустить среду программирования.
  2. Зайти во вкладку «Инструменты».
  3. Нажать на раздел ArduBlock.

Под программированием платы подразумевают и способы загрузки прошивки в микроконтроллер. Самым популярным методом является внутрисхемное программирование (ISP), при котором ATmega прошивается через программатор, подключенный через SPI-интерфейс к плате и через USB-кабель к ПК. Этим же методом можно перепрошить AN.

Платы, использующие в составе микросхему CH340, могут прошиваться через USB.

Проверить работоспособность кода можно в таких программах, как:

  • Proteus;
  • AutoCAD 123D;
  • Tinkercad.
У всех утилит удобный графический интерфейс и большой набор компонентов. В «Протеусе» и AutoCAD можно проектировать печатные платы. Для работы с Tinkercad потребуются только браузер и устойчивое интернет-соединение, т. к. этот софт запускается онлайн.

Связь с устройствами

Связь с устройствами в Arduino Nano осуществляется через:

  • SPI-интерфейс;
  • UART-интерфейс;
  • TWI-интерфейс (I2C-аналог от Atmel с линиями SCL и SDA).

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

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

Реализовывать проекты на AN удобно из-за наличия библиотек, упрощающих написание кода.

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

Запитать LED-диод можно, например, с помощью пина 13 через ограничительный резистор на 220 Ом. Чтобы этим диодом мигать, следует написать такой код:

1
2
3
4
5
6
7
8
9
10
void setup() {              // инициализация элементов кода (аналог int main() в C)
    pinMode(13, OUTPUT);    // объявление пина 13 как выхода
}
 
void loop() {               // бесконечный цикл (аналог while (1) в C)
    digitalWrite(13, HIGH); // включение LED-диода
    delay(1000);            // обеспечение мигания с частотой 1 Гц
    digitalWrite(13, LOW);  // выключение LED-диода
    delay(1000);            // обеспечение мигания с частотой 1 Гц
}

Для создания пиксельного изображения, где пиксель — это 1 диод, используется адресная лента WS2812.

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

LCD 1602 — это монохромный программируемый дисплей. Для его подключения к плате нужно написать такой скетч:

1
2
3
4
5
6
7
8
9
10
11
12
#include <LiquidCrystal.h>
 
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
 
void setup(){
    lcd.init();          // инициализация экрана
    lcd.backlight();     // активация подсветки
    lcd.setCursor(0,0);  // установка курсора в начало первой строки
    lcd.print("text");   // набор текста на первой строке
    lcd.setCursor(0,1);  // установка курсора в начало второй строки
    lcd.print("text");   // набор текста на второй строке
}

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

NRF24L01 — радио-модуль, который часто используется для создания интернета вещей. Он заводится на плату следующим образом:

Пин модуля Pinout платы
GND GND
VCC 3.3 В
CE D9
CSN D10
SCK D13
MOSI D11
MISO D12
IRQ Не подключается

Популярные шилды для Arduino Nano

Шилдом называется плата-дополнение.

К популярным шилдам для модели Nano относятся:

  • Nano Uno Shield: расширяет AN до варианта Uno;
  • Arduino Motor: позволяет подключать к плате двигатели (например, с помощью драйвера DRV8825 можно подключить шаговый двигатель и собрать свой автомобиль);
  • Arduino Sensor: шилд для подключения любых модулей (например, драйвера, объектом управления которого является механическая рука).

Nano Uno Shield

Где купить Arduino Nano

Приобрести плату можно как в магазинах электроники в любом крупном городе, так и в китайских интернет-магазинах.

Например, плата и периферия к ней продаются в интернет-маркете ChipDip. AN можно приобрести в магазине Carduino, который специализируется на продукции Arduino. Еще один популярный маркет электроники, где продается Arduino Nano, — Amperka.

Ссылка на основную публикацию