Технические характеристики и элементы платы
Основные параметры Arduino Nano
Arduino Nano базируется на 8-битном микроконтроллере ATmega328P с архитектурой AVR и обладает следующими характеристиками:
| Параметр | Значение |
|---|---|
| Микроконтроллер | ATmega328P |
| Тактовая частота | 16 МГц |
| Рабочее напряжение | 5В |
| Входное напряжение | 7-12В (рекомендуемое), 6-20В (предельное) |
| Flash-память | 32 КБ (2 КБ занято загрузчиком) |
| SRAM | 2 КБ |
| EEPROM | 1 КБ |
| Размеры | 18×45 мм |
Система питания
Плата поддерживает несколько способов питания:
- USB-подключение: 5В через Mini-USB разъём
- Внешний источник: 7-12В через пин VIN
- Прямое питание: 5В через соответствующий пин (не рекомендуется)
При одновременном подключении нескольких источников плата автоматически выбирает источник с наибольшим напряжением.
Распиновка Arduino Nano

Схема распиновки Arduino Nano с обозначением всех 30 пинов и их функций
Плата Arduino Nano имеет 30 пинов, расположенных по периметру платы с шагом 2.54 мм, что обеспечивает совместимость с макетными платами.
Цифровые входы/выходы
Arduino Nano предоставляет 14 цифровых пинов (D0-D13):
- Пины D0-D13: могут работать как входы или выходы с логическими уровнями 0В (LOW) и 5В (HIGH)
- ШИМ-выходы: пины D3, D5, D6, D9, D10, D11 поддерживают генерацию ШИМ-сигналов
- Максимальный ток: 40 мА на пин, суммарный ток всех пинов не должен превышать 200 мА
Аналоговые входы
Восемь аналоговых входов (A0-A7) подключены к 10-битному АЦП:
- Разрешение: 10 бит (значения 0-1023)
- Диапазон измерений: 0-5В
- Точность: 0.0048В на единицу АЦП
- Особенность: A6 и A7 работают только на вход
Специальные функции пинов
Интерфейс I2C:
- A4 (SDA): линия данных
- A5 (SCL): линия тактирования
UART-интерфейс:
- D0 (RX): приём данных
- D1 (TX): передача данных
SPI-интерфейс:
- D10 (SS): выбор ведомого устройства
- D11 (MOSI): выход данных
- D12 (MISO): вход данных
- D13 (SCK): тактовый сигнал
Подключение и настройка

Схема подключения Arduino Nano с основными компонентами
Установка драйверов
Большинство современных клонов Arduino Nano используют чип CH340G вместо оригинального FTDI FT232RL. Для корректной работы необходимо установить соответствующие драйверы:
- Определение чипа: проверьте маркировку на плате
- Загрузка драйверов: скачайте драйверы CH340G или FTDI с официальных сайтов
- Установка: запустите установочный файл и перезагрузите компьютер
Настройка Arduino IDE
В среде Arduino IDE необходимо выбрать правильные параметры:
- Плата: Arduino Nano
- Процессор: ATmega328P (Old Bootloader) для китайских клонов
- Порт: соответствующий COM-порт
Программирование Arduino Nano
Структура скетча
Программы для Arduino называются скетчами и имеют расширение .ino. Базовая структура включает две обязательные функции:
void setup() {
// Код инициализации, выполняется один раз
pinMode(13, OUTPUT); // Настройка пина как выхода
}
void loop() {
// Основной цикл программы
digitalWrite(13, HIGH); // Включить светодиод
delay(1000); // Пауза 1 секунда
digitalWrite(13, LOW); // Выключить светодиод
delay(1000); // Пауза 1 секунда
}
Основные функции программирования
Управление цифровыми пинами:
- pinMode(pin, mode): настройка направления пина
- digitalWrite(pin, value): запись в цифровой пин
- digitalRead(pin): чтение цифрового пина
Работа с аналоговыми входами:
- analogRead(pin): чтение значения с АЦП
- analogReference(): выбор опорного напряжения
ШИМ-выходы:
- analogWrite(pin, value): генерация ШИМ-сигнала (0-255)
Практические проекты и применения
Часы реального времени с дисплеем
Популярный проект включает подключение модуля RTC DS1307 и дисплея LCD через интерфейс I2C:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <RTClib.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
RTC_DS1307 rtc;
void setup() {
lcd.init();
lcd.backlight();
rtc.begin();
}
void loop() {
DateTime now = rtc.now();
lcd.setCursor(0, 0);
lcd.print("Time: ");
lcd.print(now.hour());
lcd.print(":");
lcd.print(now.minute());
}
Метеостанция с датчиком DHT11
Проект мониторинга температуры и влажности с выводом на OLED-дисплей:
Компоненты:
- Arduino Nano
- Датчик DHT11
- OLED дисплей 0.96" I2C
- Соединительные провода
Подключение DHT11:
- VCC → 5V Arduino
- Data → Pin D2
- GND → GND Arduino
Интерфейс I2C в проектах
Arduino Nano поддерживает подключение до 127 устройств по шине I2C:
- Преимущества: экономия пинов, простота подключения
- Библиотека: Wire.h (входит в Arduino IDE)
- Подтяжные резисторы: 2-10 кОм к линии питания
Сканирование I2C устройств
#include <Wire.h>
void setup() {
Wire.begin();
Serial.begin(9600);
Serial.println("Сканирование I2C...");
}
void loop() {
for (int address = 1; address < 127; address++) {
Wire.beginTransmission(address);
if (Wire.endTransmission() == 0) {
Serial.print("Устройство найдено по адресу 0x");
Serial.println(address, HEX);
}
}
delay(5000);
}
Различия версий Arduino Nano
Arduino Nano v3.0 vs v2.x
| Параметр | Nano v2.x | Nano v3.0 |
|---|---|---|
| Микроконтроллер | ATmega168 | ATmega328P |
| Flash-память | 16 КБ | 32 КБ |
| SRAM | 1 КБ | 2 КБ |
| EEPROM | 512 байт | 1 КБ |
Современные модификации
Arduino Nano 33 BLE Sense - версия с Bluetooth и множеством встроенных датчиков для IoT-проектов.
Питание и энергопотребление
Расчёт потребления
При планировании автономных проектов важно учитывать энергопотребление:
- Плата Arduino Nano: ~19 мА в активном режиме
- Светодиоды: 15-20 мА каждый
- Датчик DHT11: 0.3 мА в активном режиме
- OLED дисплей: 10-20 мА в зависимости от яркости
Режимы энергосбережения
Для проектов с батарейным питанием можно использовать режимы сна микроконтроллера для снижения энергопотребления до единиц микроампер.
FAQ
Да, Arduino Nano полностью совместима с Arduino Uno по программной части и имеет аналогичную функциональность. Основные отличия заключаются в форм-факторе, типе USB-разъёма (Mini-USB вместо USB-B) и отсутствии встроенного разъёма питания.
Это зависит от чипа USB-UART преобразователя на плате:
- Оригинальные платы: используют FTDI FT232RL, драйверы встроены в Windows.
- Китайские клоны: обычно используют CH340G, требуют установки специального драйвера.
Не рекомендуется. Для внешнего питания используйте пин VIN с напряжением 7–12В либо питание через USB. Подача напряжения напрямую на пин 5V может повредить встроенный регулятор.
Теоретически до 127 устройств, но на практике количество ограничивается ёмкостной нагрузкой шины и качеством подтяжных резисторов. Рекомендуется не более 8–10 устройств без дополнительных буферов.
Основные причины:
- Неправильно выбранная плата или порт в Arduino IDE.
- Отсутствие или неправильные драйверы USB-UART.
- Использование пинов D0/D1 в проекте (они заняты для программирования).
- Выбор неправильного загрузчика (Old Bootloader для китайских плат).
Да, существуют альтернативные среды разработки: PlatformIO, Visual Studio Code с расширением Arduino, Atmel Studio. Также можно использовать внешние программаторы через ICSP-разъём для прямой загрузки hex-файлов.
Пины A6 и A7 подключены только к АЦП и не могут использоваться как цифровые входы/выходы, в отличие от A0–A5, которые могут работать в обоих режимах.
Максимальный ток пина 3.3V составляет 50 мА. Этого достаточно для питания большинства датчиков, но недостаточно для мощных устройств вроде серводвигателей или реле.