Плата Arduino Leonardo: описание, схема, подключение и сравнение 

Arduino Leonardo — платформа, в основе которой лежит микроконтроллер  ATmega32u4. С помощью этой платы можно создавать проекты, в которых устройство Ардуино активно взаимодействует с компьютером и выступает как привычная периферия – мышки, клавиатуры, игровые контроллеры. В отличие от хорошо всем знакомой платы Uno, эта модель имеет ряд особенностей, в этой статье мы узнаем – какие. Вы сможете найти описание характеристик, распиновку и особенности подключения к Arduino IDE.

Описание платы Arduino Leonardo

Платформа Ардуино позволяет создавать самые разнообразные автономные устройства, но вот при подключении к компьютеру традиционных плат Uno, Nano, Mega невозможно было заставить их работать как обычную периферию – например, мышки или клавиатуры. Нельзя просто подключить обычный джойстик через ардуино уно к компьютеру и управлять им, например, курсором – придется устанавливать приложение на самом компьютере, которое будет интерпретировать коды с последовательного порта и устанавливать курсор в нужное место.

Плата Arduino Leonardo существенно расширяет возможности для подключения Arduino к компьютеру. Она рассматривается компьютером как стандартное HID-устройство и может напрямую слать нужные управляющие сигналы. Нельзя сказать, что эта плата может заменить Uno, но обладая уникальными свойствами, она может стать основной новых очень интересных и необычных проектов.

В основе Leonardo лежит достаточно продвинутый микроконтроллер ATmega32u4. Сама плата достаточно сильно похожа на Uno, на ней можно найти два десятка входов и выходов, разъем micro-USB, кнопка для перезагрузки, а также разъемы ICSP и силовой вход. Питание платы стандартное для ардуино, рекомендуемой напряжение 7-12 вольт.

Количество цифровых входов и выходов 20, а аналоговых — 12. К обычным аналоговым пинам A0-A5 тут добавляются еще пины 4,6,8, 9,10, 12, подключенные к АЦП. Встроенная flash-память имеет объем 32 КБ, из которых четыре предназначены загрузчику. ОЗУ устройства 2,5 КБ, а тактовая частота равна 16 МГц.

Особенности платы Arduino Leonardo (некоторые из них являются общими для любых устройств на микроконтроллеров ATMega):

  1. Возможность прямого подключения, от внешнего источника питания или через USB. Выбор питания осуществляется в автоматическом режиме. Платформа работает при подаче напряжения в пределах от 6 до 20 Вольт.
  2. Программирование производится с помощью драйвера Arduino Leonardo. Микроконтроллер в основе устройства поставляется уже с загрузчиком, что упрощает установку ПО. Для связи применяется протокол AVR109.
  3. Предусмотрена автоматическая перезагрузка (нет необходимости нажимать дополнительную кнопку). Процесс запускается при открытии виртуального CDC COM-порта со скоростью в 1200 бод. После этого система перезагружается. При желании можно активировать процесс вручную с помощью специальной кнопки Reset. При подаче питания контроллер сразу работает с учетом установленного ПО.
  4. В устройстве предусмотрен предохранитель, обеспечивающий защиту от повышенных токов перегруза и КЗ в системе. Несмотря на наличие такой опции во всех ПК, дополнительная надежность не бывает лишней. Вставка плавкая перегорает при протекании тока больше 0,5 Ампер. Цепочка разрывается до момента восстановления нормального режима.
  5. Плата Arduino Leonardo имеет стандартные для Uno габариты — всего 69 на 53 мм. Вне границы устройства выходит только силовой разъем. Расстояние между седьмым и восьмым выводом равно 4 мм, а в остальном — 2,5 мм.

В целом, плата выглядит довольно традиционно, но отдельного внимания заслуживают разъемы платы, на которых остановимся подробно.

Схема и распиновка

Схема и распиновка 
Схема и распиновка

Перед подключением важно представлять распиновку Arduino Leonardo и разобраться с тонкостями подключения.

Питающие PIN:

  • VIN — подача напряжения от внешнего ИП. Этот вход не имеет связи с пятью Вольтами USB-разъема или другим напряжением стабилизации. На ПИНы можно подать внешнее питание, когда к контроллеру подключен внешний блок.
  • 5V — разъем для подачи пяти Вольт от стабилизатора на плате. Напряжение применяется для микроконтроллера. Использовать этот вход для непосредственного питания устройства нельзя. При таком подходе возможна поломка платы при скачках напряжения (подключение стабилизатора может решить этот вопрос).
  • 3.3V — напряжение от стабилизатора. Верхнее ограничение по рабочему току составляет 0,05 А.
  • IOREF. Задача ПИНа состоит в расшифровке сведений о напряжении ATmega32u4. В зависимости от этого параметра плата переключается на более подходящий ИП или применяется преобразователь уровней. В последнем случае открывается возможность питания от 5 или 3.3 Вольт.

PIN ввода и вывода:

  • Цифровые ПИНы (с 0–13).  Логический уровень для «нуля» — 0 Вольт, а для «единицы» — 5 Вольт. Предусмотрены подтягивающие резисторы, которые по умолчанию не работают, но при необходимости их можно включить.
  • Пины с подключением к АЦП (А0-А5, А6-А11). Указанные входы являются аналоговыми, но их можно использовать и в цифровом режиме.  Напряжение по умолчанию от 0 до 5 Вольт.
  • ШИМ — PIN с наименованиями «три», «пять», «шесть», «девять», «десять», «одиннадцать» и «тринадцать». Доступно разрешение 8 бит с помощью функции analogWrite.
  • SPI — PIN разъема ICSP. Особенность платы Arduino Leonardo состоит в отсутствии разводки между цифровыми входами и выходами (ранее применялся такой подход). Если у платы отсутствует разъем ICSP с шестью контактами, изделие не сможет работать.
  • UART — PIN 0 (RX) и 1 (TX) для получения и передачи информации соответственно. Применяется для подключения к другим устройствам с применением класса Serial1. Если контроллер питается через USB от компьютера, применяется класс Serial.
  • TWI/I2C. Этот ПИН применяется для взаимодействия с периферийными устройствами с помощью синхронного протокола. Подключение осуществляется с помощью двух проводов с применением библиотеки Wire.

На плате Arduino Leonardo R3 предусмотрена группа светодиодов, по которым можно судить о работоспособности устройства:

  • RX и TX — светодиоды, мигающие во время передачи информации между компьютером и контроллером.
  • L (для ПИНа 13). Он включается при отправке параметра HIGH, а при LOW отключается.
  • ON — светодиод, свидетельствующий о подаче питания на плату Arduino Leonardo.

К дополнительным разъемам стоит отнести micro-USB, разъем для подачи внешнего питания от 7 до 12 Вольт, а также ICSP-разъем. Последний применяется для программирования микроконтроллера.

Подключение и прошивка Ардуино Leonardo

Для подключения устройства требуется кабель USB, подключенный к ПК, или подача питания от внешнего источника.
Для подключения устройства требуется кабель USB, подключенный к ПК, или подача питания от внешнего источника.

Для подключения устройства требуется кабель USB, подключенный к ПК, или подача питания от внешнего источника. Это может быть выносная батарея или адаптер типа AC/DC. Такое решение сделало контроллер более дешевым в производстве, повысилась гибкость применения в работе с компьютером.

При установке драйвера Arduino Leonardo нужно действовать таким образом:

  • подключение устройства к ПК;
  • ожидание запуска мастера установки ПО (при отсутствии запуска ручной переход в раздел оборудования, выбор строчки Arduino Leonardo и нажатие обновления);
  • поиск драйверов на ПК и нажатие «Далее»;
  • в папке с ПО выбор нужного драйвера;
  • согласие с установкой.

Для прошивки устройства достаточно нажатия кнопки Upload, чтобы автоматически загрузить софт в память устройства. Далее инициируется сброс контроллера, что приводит к пуску загрузчика (отвечает за получение, сохранение и старт нового ПО). В отличие от других моделей здесь после автоматического сброса платформа ожидает нового последовательного порта. Далее скетч направляется на вновь созданный COM-порт. Если автоматический сброс по какой-либо причине не активировался, нужно сделать следующее:

  • нажатие кнопки сброса и удерживание ее до момента появления слова Uploading;
  • контроль запуска загрузчика (система должна увидеть новый порт).

Указанные действия необходимы, если стандартная система прошивки не сработала.

Сравнение с Arduino Uno, Nano, Mega

В отличие от предшественников плата Arduino Leonardo работает всего на оном чипе. Здесь появился независимый разъем USB. В основе лежит микроконтроллер ATmega32u4, имеющий больший функционал по сравнению с Mega, Nano и Uno.

Дополнительные отличия:

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

В модели Леонардо увеличился объем оперативной памяти, стало больше входов ШИМ. Но главное изменение — возможность подключения устройства через USB-разъем, что существенно повысило удобство подключения и функционал платформы.

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here