Arduino Nano — популярный выбор среди изобретателей, любителей и инженеров, которым нужен мощный микроконтроллер для своих электронных проектов. Он отличается компактностью и гибкостью. Независимо от того, создаете ли вы простое приложение на основе датчиков или более сложное устройство IoT, Arduino Nano предоставляет все необходимые функции в портативном и удобном в использовании пакете. В этой статье мы расскажем о его функциях, технических характеристиках, распиновке и учебных материалах по программированию.
Что такое Arduino Nano?
Arduino Nano — это компактная универсальная плата микроконтроллера, которая, несмотря на свои небольшие размеры, обладает высокой производительностью. Разработанная для установки в ограниченном пространстве, она идеально подходит для проектов, в которых важен размер, таких как носимые устройства, робототехника и встроенные системы. Основанная на микроконтроллере ATmega328P (на Nano 3.0), Nano предлагает 14 цифровых выводов ввода/вывода (6 из которых могут генерировать ШИМ-выход), 8 аналоговых входов и тактовую частоту 16 МГц. В отличие от более крупных плат Arduino, она подключается через порт Mini-B USB, что делает ее идеальной для прототипирования на макетной плате без необходимости дополнительного оборудования.

Основные характеристики и технические данные
- Процессор: ATmega328P (версия Nano 3.0)
- Рабочее напряжение: 5 В
- Рекомендуемое входное напряжение: 7–12 В
- Диапазон входного напряжения: 6–20 В
- Цифровые входы/выходы: 14 (6 из которых могут использоваться для ШИМ-выхода)
- Аналоговые входные контакты: 8
- Ток постоянного тока на вывод ввода/вывода: 40 мА
- Флэш-память: 32 КБ
- SRAM: 2 КБ
- EEPROM: 1 КБ
- Тактовая частота: 16 МГц
- Интерфейс USB: порт Mini-B USB для программирования и связи
конфигурация выводов Arduino Nano
Arduino Nano имеет в общей сложности 32 контакта, каждому из которых назначено несколько функций. Эти контакты сгруппированы в три основных порта: PortB, PortC и PortD. Ниже приводится перечень важных контактов и их функций:

- Контакт 1 (RX) и контакт 2 (TX): это контакты последовательной связи, используемые для приема и передачи данных между Nano и хост-компьютером. Nano использует чип CH340 для преобразования USB-сигналов в последовательные данные TTL.
- Контакт 3: контакт сброса, используемый для сброса микроконтроллера.
- Контакт 4: контакт заземления (GND).
- Контакты 5–16: контакты цифрового ввода/вывода; контакты 5 и 6 также являются контактами внешнего прерывания.
- Контакт 17: выход питания 3,3 В от USB-чипа CH340, полезный для питания систем 3,3 В.
- Контакт 18: AREF (аналоговый эталон), используется для аналого-цифрового преобразования. Обычно этот контакт не используется, если вам не нужно подавать внешнее эталонное напряжение.
- Контакты 19–26: аналоговые входные контакты (A0–A7).
- Контакт 27: двунаправленный контакт питания, используемый для подачи 5 В на внешние устройства или приема входного сигнала от внешнего источника питания 5 В.
- Контакт 28: контакт сброса системы.
- Контакт 29: Контакт заземления (GND).
- Контакт 30: Вход внешнего питания (Vin), обычно используется при подаче внешнего питания от батареи или адаптера постоянного тока.
Модели Arduino Nano
Существует несколько вариантов Arduino Nano, каждый из которых подходит для разных типов проектов. Ниже представлены основные модели и их технические характеристики:
Arduino Nano ESP32
Arduino Nano ESP32 — это мощная плата на базе микроконтроллера ESP32, которая предлагает двухъядерную обработку, больше памяти и встроенные беспроводные возможности (Wi-Fi и Bluetooth), что делает ее подходящей для приложений IoT и более требовательных проектов.

| Specification | Details |
|---|---|
| Microcontroller | ESP32 (Dual-core 32-bit) |
| Clock Speed | 240 MHz |
| Flash Memory | 4 MB |
| SRAM | 520 KB |
| EEPROM | None |
| USB Interface | Micro-USB |
| Wireless Connectivity | Wi-Fi, Bluetooth |
| Special Features | Built for IoT applications, includes Wi-Fi and Bluetooth 4.2, more processing power, ideal for high-performance projects |
Arduino Nano RP2040 Connect
Nano RP2040 Connect разработан для приложений IoT и поддерживает Wi-Fi и Bluetooth благодаря встроенному чипу Nina W102 ESP32. Он идеально подходит для подключенных устройств и дистанционного зондирования.

| Specification | Details |
|---|---|
| Microcontroller | Raspberry Pi RP2040 |
| Clock Speed | 133 MHz |
| Flash Memory | 16 MB Flash (external) |
| SRAM | 264 KB |
| EEPROM | None |
| Power Input | 5V via USB or external 5V input |
| Digital I/O Pins | 22 (3 PWM) |
| USB Interface | Micro-USB |
| Wireless Connectivity | Wi-Fi, Bluetooth (Nina W102 uBlox ESP32) |
| Special Features | Built for IoT, includes uBlox Nina W102 chip, ideal for wireless applications |
Arduino Nano Every
Nano Every предлагает больше памяти и возможностей ввода-вывода по сравнению со стандартным Nano, что делает его подходящим для более сложных проектов. Он сохраняет совместимость с классическим форм-фактором Nano.

| Specification | Details |
|---|---|
| Microcontroller | Microchip ATMega4809 |
| Clock Speed | 20 MHz |
| Operating Voltage | 5V |
| Digital I/O Pins | 14 |
| Flash Memory | 48 KB |
| SRAM | 6 KB |
| EEPROM | 256 Bytes |
| USB Interface | Micro-USB |
| Wireless Connectivity | None |
| Special Features | Compatible with Arduino Nano form factor, improved memory, and speed |
Arduino Nano 33 IoT
Nano 33 IoT оснащен беспроводными модулями связи (Wi-Fi и Bluetooth) и предназначен для применения в системах IoT. Он также включает в себя 6-осевой акселерометр и гироскоп, что делает его идеальным для проектов, связанных с определением движения.

| Specification | Details |
|---|---|
| Microcontroller | Microchip SAMD21G18A (Cortex-M0+) |
| Clock Speed | 48 MHz |
| Flash Memory | 256 KB |
| SRAM | 32 KB |
| EEPROM | None |
| Operating Voltage | 3.3V |
| Digital I/O Pins | 14 |
| USB Interface | Micro-USB |
| Wireless Connectivity | Wi-Fi, Bluetooth (Nina W102 ESP32) |
| Special Features | Built for IoT, includes NINA W102 module, sensors, hardware encryption |
Arduino Nano 33 BLE
Nano 33 BLE предлагает Bluetooth-соединение с низким энергопотреблением, что делает его идеальным для носимых устройств, датчиков здоровья и других приложений на базе Bluetooth. Он также оснащен передовыми датчиками, такими как 9-осевой акселерометр, гироскоп и магнитометр.

| Specification | Details |
|---|---|
| Microcontroller | Nordic nRF52840 (Cortex-M4F) |
| Clock Speed | 64 MHz |
| Flash Memory | 1 MB |
| SRAM | 256 KB |
| Operating Voltage | 3.3V |
| Digital I/O Pins | 14 |
| USB Interface | Micro-USB |
| Wireless Connectivity | Bluetooth 5.0 (U-blox NINA B306 module) |
| Special Features | Low power consumption, suitable for wearables, includes 9-axis sensor |
Arduino Nano 33 BLE Sense
Nano 33 BLE Sense похож на Nano 33 BLE, но оснащен дополнительными встроенными датчиками, включая датчики температуры, влажности, давления, освещенности, цвета, распознавания жестов и цифровой микрофон. Это делает его идеальным для приложений с большим количеством датчиков, включая мониторинг окружающей среды и носимые устройства.

| Specification | Details |
|---|---|
| Microcontroller | Nordic nRF52840 (Cortex-M4F) |
| Clock Speed | 64 MHz |
| Flash Memory | 1 MB |
| SRAM | 256 KB |
| Operating Voltage | 3.3V |
| Digital I/O Pins | 14 |
| USB Interface | Micro-USB |
| Wireless Connectivity | Bluetooth 5.0 (U-blox NINA B306 module) |
| Special Features | Includes additional sensors for temperature, pressure, humidity, light, and gesture recognition |
Программирование Arduino Nano
Arduino Nano можно программировать с помощью Arduino IDE, как и другие платы Arduino. Он поставляется с предустановленным загрузчиком, что означает, что для загрузки кода не требуется внешний программатор.
Шаг 1: Установите Arduino IDE
Загрузите Arduino IDE:
перейдите на официальный сайт Arduino и загрузите последнюю версию Arduino IDE, подходящую для вашей операционной системы (Windows, macOS или Linux).

- Установите IDE:
следуйте инструкциям по установке для вашей операционной системы. После установки запустите Arduino IDE.
Шаг 2: Добавьте плату ATtiny в Arduino IDE
Arduino IDE по умолчанию не поддерживает ATtiny85, поэтому вам необходимо добавить плату ATtiny в Arduino IDE. Откройте «Файл» -> «Настройки» и введите в поле «Дополнительные URL-адреса менеджера плат»:
http://drazzy.com/package_drazzy.com_index.json

Шаг 3: Выберите плату Arduino Nano и порт
Выберите плату Arduino Nano:
- Перейдите в
Toolsв верхней части IDE. - Выберите
Board>Arduino Nano. - Если вы используете определенную версию Nano (например, Nano Every или Nano 33 IoT), выберите соответствующую версию из списка.
- Перейдите в

Выберите правильный процессор:
- Все еще находясь в
Toolsперейдите вProcessor. - Для стандартного Arduino Nano (ATmega328P) выберите
ATmega328P. Если вы используете более новую модель Nano, такую какArduino Nano Every, выберите соответствующий процессор.
- Все еще находясь в

Выберите последовательный порт:
- В
Toolsперейдите вPortи выберите порт, к которому подключен Arduino Nano. В большинстве систем Arduino будет отображаться какCOM3(Windows) или/dev/ttyUSB0(Linux/macOS).
- В

Установите необходимые драйверы (необязательно):
Если вы используете Arduino Nano 3.0 с чипом CH340 USB-to-Serial, вам может потребоваться установить дополнительные драйверы, чтобы ваша система правильно распознавала Nano.
Шаг 4: Подключите ATtiny85 к Arduino Nano
| ATtiny85 Pin | Arduino Nano Pin |
|---|---|
| Pin 8 (VCC) | 5V |
| Pin 4 (GND) | GND |
| Pin 1 (RESET) | D10 |
| Pin 5 (MOSI) | D11 |
| Pin 6 (MISO) | D12 |
| Pin 7 (SCL) | D13 |

Шаг 5: Напишите свою первую программу
После того, как все настроено, можно приступать к написанию кода. Вот пример классической программы «Blink», которая заставляет светодиод, подключенный к выводу 13, мигать.
Откройте File меню и выберите Examples > 01.Basics > Blink. Это загрузит простую программу, которая заставляет светодиод мигать.

А затем добавьте код следующим образом:
void setup() {
pinMode(13, OUTPUT); // Set pin 13 as an output
}
void loop() {
digitalWrite(13, HIGH); // Turn the LED on
delay(1000); // Wait for one second
digitalWrite(13, LOW); // Turn the LED off
delay(1000); // Wait for one second
}
Пояснение:
setup(): Эта функция запускается один раз при запуске программы. Она устанавливает вывод 13 в качестве выхода.loop(): Эта функция выполняется повторно. Она включает и выключает светодиод каждую секунду.
Шаг 6: Загрузите код на Arduino Nano
Перед загрузкой кода Blink убедитесь, что вы подключили Arduino Nano к компьютеру с помощью USB-кабеля.
- В Arduino IDE нажмите кнопку «Загрузить» (значок стрелки вправо) в левом верхнем углу окна. Это скомпилирует ваш код и загрузит его в Arduino Nano.

- После завершения загрузки светодиод Onboard (подключенный к выводу 13) на Arduino Nano должен начать мигать, указывая на то, что программа была успешно загружена.
Заключение
Arduino Nano — это универсальная и компактная плата, идеально подходящая для различных электронных проектов. Независимо от того, работаете ли вы над небольшой встроенной системой или устройством IoT, небольшой размер Nano в сочетании с мощными функциями, такими как цифровые выводы ввода/вывода, аналоговые входы и поддержка различных протоколов связи, делает его ценным инструментом как для начинающих, так и для опытных разработчиков. Многочисленные варианты Arduino Nano, включая модели с Wi-Fi, Bluetooth и дополнительными датчиками, обеспечивают еще большую гибкость для широкого спектра применений.




