Arduino Nano. Описание, характеристики, распиновка, подключение
Arduino Nano представляет собой полнофункциональное законченное устройство, которое в большинстве случаев базируется на микроконтроллере ATmega328. В первую очередь в нужно отметить, что Arduino Nano выпускается в различных версиях и самые распространённые: Nano v.2 и Nano v.3. Главное отличие – в самом микроконтроллере. Младшая версия использует Atmega168, а старшая Atmega328.
Технические характеристики
- Микроконтроллер: ATmega328PU
- Рабочее напряжение: 5В
- Напряжение питания (рекомендуемое): 7-12В
- Напряжение питания (предельное): 6-20В
- Цифровые входы/выходы: 14 (из них 6 могут использоваться в качестве ШИМ-выходов)
- Аналоговые входы: 6
- Разрядность АЦП: 10-бит
- Максимальный ток одного вывода/вывода: 40 мА (рекомендуемый: 20мА)
- Максимальный выходной ток вывода 3.3V: 50 мА
- Flash-память: 16 Кб (ATmega168) или 32 Кб (ATmega328) из которых 2КБ используются загрузчиком
- SRAM: 1 Кб (ATmega168) или 2 Кб (ATmega328)
- EEPROM: 512 байт (ATmega168) или 1 Кб (ATmega328)
- Тактовая частота: 16 МГц
- Размеры платы: 43мм х 18,5мм.
Печатная плата Arduino Nano является Open-Hardware (открытым проектом), поэтому все ее характеристики и роинципиальные схемы доступны в открытом доступе и их можно свободно скачать.
Память
Плата Arduino Nano по умолчанию содержит три типа памяти:
Flash – флеш-память объемом 32 кБ. Это основное хранилище для команд Ардуино. Когда вы загружаете скетч (программу которую вы написали в Arduino IDE) в контроллер, то он записывается именно в эту память. Примерно 2кБ из данного объема памяти занимает bootloader-программа, которая занимается инициализацией системы, загрузкой скетча через USB и непосредственным запуска скетча.
Оперативная SRAM память объемом 2 кБ - здесь по-умолчанию хранятся переменные и объекты, создаваемые в ходе работы скетча. Память эта энерго-зависимая, при отключении питания все данные хранящиеся в этой памяти просто напросто сотрутся.
Энергонезависимая память (EEPROM) объемом 1кБ - здесь можно хранить данные которые использует скетч (настройки программы), которые не сотрутся при отключении питания платы Ардуино. Но процедура записи и считывания EEPROM требует использования дополнительной Ardiono библиотеки EEPROM, которая доступна в Arduino IDE по-умолчанию. Также нужно помнить об ограничении циклов перезаписи (порядка не более 10000 циклов записи/перезаписи), присущих технологии памяти EEPROM.
Питание
Arduino Nano содержит всё необходимое для работы с микроконтроллером; для того, чтобы начать работу с ней, просто подключите ее к компьютеру с помощью USB кабеля. Плата не имеет встроенной защиты USB порта от коротких замыкания и выбросов тока, это надо обязательно учитывать при работе. Можно подайть питание на вход Vin от блока питания напряжением: 7-12В (Если используется питание более 12В, то регулятор напряжения может перегреться и повредить плату!), либо через пин питания +5В (Будьте внимательны! На этот пин нужно подавать ровно +5В).
Примечание. Если одновременно подключить два источника питания, то плата выберет тот, потенциал которого будет выше. Независимо от способа подключения, вывод GND платы Arduino Nano является общим минусом.
Выводы питания
Плата может питаться через разъем питания (7–12В), через USB разъем (5В) или через вывод Vin на плате (7–12В).
Vin - вход питания платы при использовании внешнего источника питания (используется при отсутствии 5В от USB подключения или от другого регулируемого источника питания). Вы можете подать питание через этот вывод, или, если напряжение питания подается через разъем питания, то это напряжение 5В будет доступно и на этом выводе.
5V - с этого вывода можно получить регулируемое напряжение +5В с выхода регулятора напряжения на плате. Подача повышенного напряжения через вывод 5V может повредить плату, т.к. напряжение с данных выводов обходит встроенный регулятор напряжения. Поэтому не советую подавать питание на плату через этот вывод.
3V3 - питание 3,3В вольта, выдаваемое регулятором напряжения на плате. Максимальный выходной ток на данном выводе составляет не более 50 мА. Подключение повышенной нагрузки на данный вывод может так же повредить плату.
GND - земля. Необходим для создания замкнутой цепи при подключении к контактам Vin, 5V или 3V3. Во всех случаях вывод GND необходимо выводить как минус, иначе цепь не будет замкнута и питание (что внешнее, что внутреннее) не подасться.
AREF - опорное напряжение для аналоговых входов (АЦП).
Подключение к компьютеру через USB порт
Для взаимодействия с компьютером по USB-UART (эмулятор COM порта) Ардуино использует микросхема преобразователь USB-в-TTL CH340G. Светодиоды RX и TX будут мигать, когда данные передаются через преобразователь USB-в-TTL при соединении с компьютером через USB-порт.
Для работы с платой обычно используют программу для разработки кода Arduino IDE, однако можно использовать и другий программы. Чтобы настроить Arduino IDE на работу с Arduino Nano, нам необходимо узнать, какой номер COM-порта присвоил компьютер Arduino Nano. Номер COM-порта можно найти в «Диспетчер устройств» в ОС Windows, в разделе "Порт (COM и LPT)". Если подключить к компьютеру другую плату Ардуино, то операционная система назначит ей другой номер (COM порт). Стандартная скорость работы COM порта обычно составляет 9600 бод.
Входы и выходы
Arduino Nano предоставляет пользователю 14 цифровых и 6 аналоговых выводов.
Цифровые двухнаправленные выводы - выводы имеют обозначения D0-D13, и способны работать в двух направлениях, т.е. каждый из них может быть как входом, так и выходом. Помимо этого, для каждого цифрового пина имеется возможность программно включить подтягивающий резистор (pull up resistor), соединённый с плюсом питания микроконтроллера. Номинал подтягивающего резистора лежит в диапазоне 20-50кОм.
Аналоговые выводы - выводы имеют обозначения А0-А5. Каждый из них соединён со встроенным 10-битным АЦП микроконтроллера ATMega328. Это означает, что мы можем одновременно измерять 6 напряжений и получать по 1024 значения для каждого канала. По умолчанию диапазон измеряемого напряжения равен 0-5В, т.е. при 0В значение АЦП будет равно 0, а при 5В значение АЦП станет равным 1023. Этот диапазон можно изменить подачей на вывод AREF своего опорного напряжения, которое станет верхней границей измерения. Если в аналоговых выводах нет необходимости, они без проблем могут использоваться как цифровые.
UART порт - последовательный интерфейс использует цифровые выводы 0 (RX) и 1 (TX). Используются для получения (RX) и передачи (TX) данных по последовательному интерфейсу. Эти выводы соединены с соответствующими выводами микросхемы ATmega8U2, выполняющей роль преобразователя USB-UART.
Внешние прерывания - прерываение - когда программа останавливает выполнение основного кода и производит выполнение кода прерывания - для внешний прерываний используются цифровые выводы 2 и 3. Выводы могут конфигурироваться на вызов различных прерываний: на переднем или заднем фронте, при изменении значения, на младшем значении.
I2C интерфейс - I2C - низкоскоростной последовательный протокол связи, подходящий для передачи данных на короткие расстояния? использует аналоговые выводы A4 и A5 – контакты I2C (SDA и SCL соответственно).
Встроенный светодиод (build led) - использует цифровый вывод 13. При отправке значения HIGH светодиод включается, при отправке LOW - выключается.
Интерфейс SPI - англ. Serial Peripheral Interface, SPI bus — последовательный периферийный интерфейс, шина SPI, использует цифровые выводы: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). С применением библиотеки SPI данные выводы могут осуществлять связь по интерфейсу SPI.
ШИМ выводы (PWM)
ШИМ - расшифровывается как Широтно-импульсная модуляция (ШИМ, англ. pulse-width modulation (PWM)) — процесс управления выходной мощностью методом пульсирующего включения и выключения ключа. В ШИМ в качестве ключевых элементов использует транзисторы (могут быть применены и др. полупроводниковые приборы) которые работают ключевом режиме, то есть транзистор всё время либо разомкнут (выключен), либо замкнут (находится в состоянии насыщения). Для генерации ШИМ используется Широтно-импульсный модулятор, который генерирует последовательность импульсов со скважностью, пропорциональной уровню сигнала на его входе.
ШИМ поддерживают следующие цифровые выводы платы 3, 5, 6, 9, 10 и 11 и они могут генерировать 8-битные аналоговые значения в виде ШИМ-сигнала.
Выводы
Arduino Nano одна из самых маленьких полноценных версий плат Ардуино. По сути своей, она с точностью повторяет Arduino Uno и может использоваться в малогобаритных проектах.