Плата Arduino Nano: особенности, распиновка, модели и учебные пособия по программированию

Содержание

Arduino Nano — популярный выбор среди изобретателей, любителей и инженеров, которым нужен мощный микроконтроллер для своих электронных проектов. Он отличается компактностью и гибкостью. Независимо от того, создаете ли вы простое приложение на основе датчиков или более сложное устройство IoT, Arduino Nano предоставляет все необходимые функции в портативном и удобном в использовании пакете. В этой статье мы расскажем о его функциях, технических характеристиках, распиновке и учебных материалах по программированию.

Что такое Arduino Nano?

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

Arduino Nano Boards V3.0
Arduino Nano Boards V3.0

Основные характеристики и технические данные

  • Процессор: 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. Ниже приводится перечень важных контактов и их функций:

3561cc39f592f1f5a2672e0653f6bd2704807edf
Плата Nano V3.0 (Источник изображения: forum.arduino)
  • Контакт 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 и более требовательных проектов.

Плата Arduino Nano ESP32 (Источник изображения: store.arduino)
SpecificationDetails
MicrocontrollerESP32 (Dual-core 32-bit)
Clock Speed240 MHz
Flash Memory4 MB
SRAM520 KB
EEPROMNone
USB InterfaceMicro-USB
Wireless ConnectivityWi-Fi, Bluetooth
Special FeaturesBuilt 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. Он идеально подходит для подключенных устройств и дистанционного зондирования.

Плата Arduino Nano RP2040 Connect (Источник изображения: store.arduino)
SpecificationDetails
MicrocontrollerRaspberry Pi RP2040
Clock Speed133 MHz
Flash Memory16 MB Flash (external)
SRAM264 KB
EEPROMNone
Power Input5V via USB or external 5V input
Digital I/O Pins22 (3 PWM)
USB InterfaceMicro-USB
Wireless ConnectivityWi-Fi, Bluetooth (Nina W102 uBlox ESP32)
Special FeaturesBuilt for IoT, includes uBlox Nina W102 chip, ideal for wireless applications

Arduino Nano Every

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

Плата Arduino Nano Every (Источник изображения: store.arduino)
SpecificationDetails
MicrocontrollerMicrochip ATMega4809
Clock Speed20 MHz
Operating Voltage5V
Digital I/O Pins14
Flash Memory48 KB
SRAM6 KB
EEPROM256 Bytes
USB InterfaceMicro-USB
Wireless ConnectivityNone
Special FeaturesCompatible with Arduino Nano form factor, improved memory, and speed

Arduino Nano 33 IoT

Nano 33 IoT оснащен беспроводными модулями связи (Wi-Fi и Bluetooth) и предназначен для применения в системах IoT. Он также включает в себя 6-осевой акселерометр и гироскоп, что делает его идеальным для проектов, связанных с определением движения.

Плата Arduino Nano 33 IoT (Источник изображения: store.arduino)
SpecificationDetails
MicrocontrollerMicrochip SAMD21G18A (Cortex-M0+)
Clock Speed48 MHz
Flash Memory256 KB
SRAM32 KB
EEPROMNone
Operating Voltage3.3V
Digital I/O Pins14
USB InterfaceMicro-USB
Wireless ConnectivityWi-Fi, Bluetooth (Nina W102 ESP32)
Special FeaturesBuilt for IoT, includes NINA W102 module, sensors, hardware encryption

Arduino Nano 33 BLE

Nano 33 BLE предлагает Bluetooth-соединение с низким энергопотреблением, что делает его идеальным для носимых устройств, датчиков здоровья и других приложений на базе Bluetooth. Он также оснащен передовыми датчиками, такими как 9-осевой акселерометр, гироскоп и магнитометр.

Плата Arduino Nano 33 BLE (Источник изображения: store.arduino)
SpecificationDetails
MicrocontrollerNordic nRF52840 (Cortex-M4F)
Clock Speed64 MHz
Flash Memory1 MB
SRAM256 KB
Operating Voltage3.3V
Digital I/O Pins14
USB InterfaceMicro-USB
Wireless ConnectivityBluetooth 5.0 (U-blox NINA B306 module)
Special FeaturesLow power consumption, suitable for wearables, includes 9-axis sensor

Arduino Nano 33 BLE Sense

Nano 33 BLE Sense похож на Nano 33 BLE, но оснащен дополнительными встроенными датчиками, включая датчики температуры, влажности, давления, освещенности, цвета, распознавания жестов и цифровой микрофон. Это делает его идеальным для приложений с большим количеством датчиков, включая мониторинг окружающей среды и носимые устройства.

Плата Arduino Nano 33 BLE Sense (Источник изображения: store.arduino)
SpecificationDetails
MicrocontrollerNordic nRF52840 (Cortex-M4F)
Clock Speed64 MHz
Flash Memory1 MB
SRAM256 KB
Operating Voltage3.3V
Digital I/O Pins14
USB InterfaceMicro-USB
Wireless ConnectivityBluetooth 5.0 (U-blox NINA B306 module)
Special FeaturesIncludes 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).

Arduino IDE 2.3.4
  • Установите IDE:
    следуйте инструкциям по установке для вашей операционной системы. После установки запустите Arduino IDE.

Шаг 2: Добавьте плату ATtiny в Arduino IDE

Arduino IDE по умолчанию не поддерживает ATtiny85, поэтому вам необходимо добавить плату ATtiny в Arduino IDE. Откройте «Файл» -> «Настройки» и введите в поле «Дополнительные URL-адреса менеджера плат»:

http://drazzy.com/package_drazzy.com_index.json
Setting Boards Manager URLs on Arduino IDE
Setting Boards Manager URLs on Arduino IDE

Шаг 3: Выберите плату Arduino Nano и порт

Выберите плату Arduino Nano:

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

Выберите правильный процессор:

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

Выберите последовательный порт:

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

Установите необходимые драйверы (необязательно):

Если вы используете Arduino Nano 3.0 с чипом CH340 USB-to-Serial, вам может потребоваться установить дополнительные драйверы, чтобы ваша система правильно распознавала Nano.

Шаг 4: Подключите ATtiny85 к Arduino Nano

ATtiny85 PinArduino 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
Wiring ATtiny 85 and Arduino Nano Board
Wiring ATtiny 85 and Arduino Nano Board

Шаг 5: Напишите свою первую программу

После того, как все настроено, можно приступать к написанию кода. Вот пример классической программы «Blink», которая заставляет светодиод, подключенный к выводу 13, мигать.

Откройте File меню и выберите Examples > 01.Basics > Blink. Это загрузит простую программу, которая заставляет светодиод мигать.

Select Built in Examples for Arduino Nano
Select Built-in Examples for Arduino Nano

А затем добавьте код следующим образом:

				
					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.
Upload Blink Code to Arduino Nano Board
Upload Blink Code to Arduino Nano Board
  • После завершения загрузки светодиод Onboard (подключенный к выводу 13) на Arduino Nano должен начать мигать, указывая на то, что программа была успешно загружена.

Заключение

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

Подписаться

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

Об авторе

Picture of Aidan Taylor
Aidan Taylor

I am Aidan Taylor and I have over 10 years of experience in the field of PCB Reverse Engineering, PCB design and IC Unlock.

Нужна помощь?

Прокрутить вверх

Instant Quote