Сайт разработчика Александра Климова

/* Моя кошка замечательно разбирается в программировании. Стоит мне объяснить проблему ей - и все становится ясно. */
John Robbins, Debugging Applications, Microsoft Press, 2000

Технические характеристики

Выполнена на базе процессора ATmega328p с тактовой частотой 16 МГц, обладает памятью 32 кБ и имеет 20 контролируемых контактов ввода и вывода для взаимодействия с внешним миром.

Arduino Uno может питаться как от USB подключения, так и от внешнего источника: батарейки или обычной электрической сети. Источник определяется автоматически.

Платформа может работать при наличии напряжения от 6 до 20 В. Однако при напряжении менее 7 В работа может быть неустойчивой, а напряжение более 12 В может привести к перегреву и повреждению. Поэтому рекомендуемый диапазон: 7−12 В.

Электрическая цепь должна быть замкнута, ток течёт от "+" к "-". В качестве плюса используются пины "3.3V" и "5V".

Питание

На Arduino доступны следующие контакты для доступа к питанию:

  • Vin предоставляет тот же вольтаж, что используется для питания платформы. При подключении через USB будет равен 5 В. Служит для подачи питания на плату, минуя USB или разъём питания. Например, если в вашем проекте используется источник или батарейный отсек и вы не хотите использовать громоздкие адаптеры или USB-разъёмы
  • 5V предоставляет 5 В вне зависимости от входного напряжения. На этом напряжении работает процессор. Максимальный допустимый ток, получаемый с этого контакта — 800 мА.
  • 3.3V предоставляет 3,3 В. Максимальный допустимый ток, получаемый с этого контакта — 50 мА.
  • GND — земля. Используется в качестве "-"

Память

Платформа оснащена 32 кБ flash-памяти, 2 кБ из которых отведено под так называемый bootloader. Он позволяет прошивать Arduino с обычного компьютера через USB. Эта память постоянна и не предназначена для изменения по ходу работы устройства. Её предназначение — хранение программы и сопутствующих статичных ресурсов.

Также имеется 2 кБ SRAM-памяти, которые используются для хранения временных данных вроде переменных программы. По сути, это оперативная память платформы. SRAM-память очищается при обесточивании.

Ещё имеется 1 кБ EEPROM-памяти для долговременного хранения данных. По своему назначению это аналог жёсткого диска для Arduino.

Ввод / вывод

На платформе расположены 14 контактов (0-13), которые могут быть использованы для цифрового ввода и вывода. Какую роль исполняет каждый контакт, зависит от вашей программы. Все они работают с напряжением 5 В, и рассчитаны на ток до 40 мА. Также каждый контакт имеет встроенный, но отключённый по умолчанию резистор на 20 - 50 кОм. Некоторые контакты обладают дополнительными ролями:

  • Serial: 0-й и 1-й. Используются для приёма и передачи данных по USB.
  • Внешнее прерывание: 2-й и 3-й. Эти контакты могут быть настроены так, что они будут провоцировать вызов заданной функции при изменении входного сигнала.
  • PWM: 3-й, 5-й, 6-й, 9-й, 10-й и 11-й. Могут являться выходами с широтно-импульсной модуляцией (pulse-width modulation, ШИМ) с 256 градациями. Помечены значком тильда (~)
  • LED: 13-й. К этому контакту подключен встроенный в плату светодиод. Если на контакт выводится 5 В, светодиод зажигается; при нуле — светодиод гаснет.

Помимо контактов цифрового ввода/вывода на Arduino имеется 6 контактов аналогового ввода A0-A5, каждый из которых предоставляет разрешение в 1024 градации (10 бит) через аналогово-цифровой преобразователь (АПЦ). По умолчанию значение меряется между землёй и 5 В, однако возможно изменить верхнюю границу, подав напряжение требуемой величины на специальный контакт AREF.

Контакты A4 и A5 используются для работы I2C-шины.

Предназначен для чтения данных с аналоговых датчиков. При нехватке цифровых выходов можно использовать аналоговые в качестве цифровых.

По умолчанию все порты работают на выход. С помощью метода pinMode() можно установить режим на вход.

Кроме этого на плате имеется входной контакт Reset. Его установка в логический ноль приводит к сбросу процессора. Это аналог кнопки Reset обычного компьютера.

Взаимодействие

Arduino Uno обладает несколькими способами общения с другими Arduino, микроконтроллерами и обычными компьютерами. Платформа позволяет установить последовательное (Serial UART TTL) соединение через контакты 0 (RX) и 1 (TX). Установленный на платформе чип ATmega16U2 транслирует это соединение через USB: на компьютере становится доступен виртуальный COM-порт. Программная часть Arduino включает утилиту, которая позволяет обмениваться текстовыми сообщениями по этому каналу.

Встроенные в плату светодиоды от выходов RX и TX светятся, когда идёт передача данных между чипом ATmega162U и USB компьютера.

Отдельная библиотека позволяет организовать последовательное соединение с использованием любых других контактов, не ограничиваясь штатными 0-м и 1-м.

С помощью отдельных плат расширения становится возможной организация других способов взаимодействия, таких как ethernet-сеть, радиоканал, Wi-Fi.

Защита USB

Arduino Uno обладает предохранителем, защищающим USB-порты вашего компьютера от перенапряжения и коротких замыканий. Хотя большинство компьютеров обладают собственными средствами защиты, предохранитель даёт дополнительную уверенность. Он разрывает соединение, если на USB-порт подаётся более 500 мА, и восстанавливает его после нормализации ситуации.

Габариты

Размер платы составляет 6,9 × 5,3 см. Гнёзда для внешнего питания и USB выступают на пару миллиметров за обозначенные границы. На плате предусмотрены места для крепления на шурупы или винты. Расстояние между контактами составляет 0,1″ (2,54 мм), но в случае 7-го и 8-го контакта — расстояние: 0,16″.

Реклама