Arduino Nano – одна из самых популярных моделей плат семейства Ардуино. Является отладочной платой на базе 8-битного микроконтроллера ATmega328P (есть версии на младшем ATmega168P и современном ATmega328PB) семейства AVR – довольно старом, но хорошо сбалансированном по характеристикам и комфортном в освоении и программировании. На базе этого же МК существуют платы Arduino UNO и Arduino Pro Mini, но они очень сильно уступают модели Nano в удобстве использования: UNO имеет крайне неудачную конструкцию (не вставляется в макетную плату) и на ней выведены не все аналоговые пины микроконтроллера, несмотря на огромный размер самой платы. Pro Mini в свою очередь требует наличие внешнего USB программатора и имеет неудобное расположение пинов для работы на макетной плате.
Классическая Arduino Nano работает на МК ATmega328P, рекомендуется покупать именно её. Существуют платы на базе ATmega168P (меньше памяти) и ATmega328PB (новый чип, требует установки поддержки плат) - не рекомендуется их покупать во избежание проблем и несоответствий
Arduino Nano является самой лучшей платой для знакомства с миром Arduino и робототехники, а также использования в качестве основы для проекта:
- Загрузка прошивки через бортовой USB порт
- Широкий диапазон напряжений питания: стабильно работает от ~3 до 5 Вольт при питании "напрямую" (от 1.5 Вольт при понижении частоты процессора)
- Бортовой стабилизатор напряжения для внешнего питания 7.. 15 Вольт
- Небольшое потребление тока, несколько режимов энергосбережения
- Удобный форм-фактор – плата вставляется в макетку, что позволяет быстро собирать схемы любой сложности
- Удобно "паяется" в проект
- Много ног: 20 цифровых пинов, 8 аналоговых (из них 6 совмещены с цифровыми)
- Логический уровень – 5 Вольт
- Хорошая токоотдача у пинов по сравнению с другими Ардуино-совместимыми платами: может самостоятельно питать светодиоды и качать транзисторы
- Аппаратная поддержка самых популярных интерфейсов: UART, I2C, SPI
- Достаточно памяти для большинства проектов
- Полная поддержка Arduino-фреймворка
- "Настоящая" EEPROM память с большим ресурсом перезаписи
- Очень предсказуемая и стабильная работа
- Удобный в использовании, хорошо написанный официальный даташит для полноценной работы с МК и доступа ко всем его возможностям
- Быстрая компиляция и загрузка прошивки
- Невысокая цена по сравнению с остальными Arduino платами, но не самое лучшее соотношение цена/возможности среди остальных Ардуино-совместимых плат на рынке
Информация #
Документация:
Купить:
Arduino Nano идёт в нашем наборе GyverKIT START
Характеристики #
Характеристика | Значение |
---|---|
Микроконтроллер | AVR ATmega328p (бывает ATmega168p, ATmega328pb) |
Логический уровень | 5V |
Напряжение питания | ~3.. 5.5V (от 1.5V при пониженной частоте) |
Питание через стабилизатор | 7.. 15V |
Макс. ток с пина | 20 mA (пик 40 mA) |
Мак. суммарный ток с пинов | 200 mA |
Ток потребления | От ~5 uA (МК в режиме сна на модиф. плате) до ~20 mA (на стоковой плате в обычном режиме) |
Частота тактирования | внешнее 16 MHz, внутреннее 8 MHz / 1 MHz / 128 kHz |
Flash | 32 kB (из них 2 kB загрузчик) |
RAM | 2 kB |
EEPROM | 1 kB |
GPIO | 20 |
ADC | 10 bit 8 каналов, компаратор |
ШИМ пины | 6 |
Таймеры | 2x 8 bit, 1x 16 bit |
Аппаратные интерфейсы | 1x SPI, 1x I2C, 1x UART |
Распиновка #
Отмеченные пины:
- GPIO Arduino – цифровые пины, ввод/вывод логических сигналов, нумерация Arduino. По этим номерам можно обращаться в программе
- GPIO AVR – "настоящие" названия и номера пинов МК
- PWM – выводы таймеров (генерация ШИМ сигнала)
- ADC – выводы АЦП (измерение аналогового сигнала)
- UART – выводы UART
- SPI – выводы шины SPI
- I2C – выводы шины I2C
- LED – светодиод на пине D13
Неотмеченные пины:
- 3V3 – выход питания 3.3V, ток до 100 мА
- AREF – вход внешнего опорного напряжения
- RST – перезагрузка (низкий сигнал)
- VIN – вход внешнего питания (на стабилизатор): 7.. 15V
Светодиоды:
- L – отладочный светодиод на пине D13
- PWR – индикатор питания
- RX – индикатор приёма данных по UART
- TX – индикатор отправки данных по UART
Нумерация пинов #
- Как цифровой пин (функции
digitalRead
/digitalWrite
,analogWrite
,pinMode
):- D-пины – по номеру D-пина или номеру GPIO (они совпадают): D2 –
2
, D13 –13
- A-пины – по номеру GPIO или А-номеру с буквой A: A1 –
15
, A5 –A5
- D-пины – по номеру D-пина или номеру GPIO (они совпадают): D2 –
- Как аналоговый пин (функция
analogRead
):- A-пины – по номеру GPIO или А-номеру с буквой A: A1 –
15
, A5 –A5
- A-пины – по номеру GPIO или А-номеру с буквой A: A1 –
Стандартные параметры ШИМ #
Таймер | Пины | Частота | Разрядность |
---|---|---|---|
Timer 0 | D5 и D6 | 976 Гц | 8 бит (0.. 255) |
Timer 1 | D9 и D10 | 488 Гц | 8 бит (0.. 255) |
Timer 2 | D3 и D11 | 488 Гц | 8 бит (0.. 255) |
Начало работы #
Имеет встроенную поддержку в Arduino IDE - работает "из коробки".
platformio.ini #
[env:nano328]
platform = atmelavr
board = nanoatmega328 ; или nanoatmega328new
framework = arduino
monitor_speed = 115200
lib_deps =