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

Arduino Leonardo — платформа для разработки на базе микроконтроллера ATmega32U4. На плате предусмотрены: 20 цифровых входов/выходов (7 из них могут работать в качестве ШИМ-выходов, 12 — в качестве аналоговых входов), кварцевый резонатор на 16 МГц, разъём микро-USB, разъём питания, разъём для внутрисхемного программирования ICSP (In-Circuit Serial Programming) и кнопка сброса.

Отличие Arduino Leonardo от других плат в том, что его USB-контроллер встроен непосредственно в микроконтроллер ATmega32U4, исключая необходимость в дополнительном процессоре. При подключении к компьютеру Leonardo определяется HID-устройство (вроде клавиатуры или мыши) — сделать на основе Arduino Leonardo новый компьютерный манипулятор значительно проще, чем с другими платами.

Подключение и настройка

Для работы с платой Arduino Leonardo в операционной системе Windows скачайте и установите на компьютер интегрированную среду разработки Arduino IDE.

Что-то пошло не так?

Элементы платы

Микроконтроллер ATmega32U4

Сердцем платформы Iskra Neo является 8-битный микроконтроллер семейства AVR — ATmega32U4. Он предоставляет в ваше распоряжение 32 КБ флеш-памяти для хранения прошивки, 2.5 КБ оперативной памяти SRAM и 1 КБ энергонезависимой памяти EEPROM для хранения данных. Этого вполне достаточно для решения множества задач вроде управления роботом, промышленной автоматикой, умным домом, световыми инсталляциями и т.д.

Пины питания

  • VIN: Напряжение от внешнего источника питания (не связано с 5 В от USB или другим стабилизированным напряжением). Через этот вывод можно как подавать внешнее питание, так и потреблять ток, когда устройство запитано от внешнего адаптера.
  • 5V: На вывод поступает напряжение 5 В от стабилизатора платы. Стабилизатор обеспечивает питание микроконтроллера ATmega32U4. Питать устройство через вывод 5V не рекомендуется — в этом случае не используется стабилизатор напряжения, что может привести к выходу платы из строя.
  • 3.3V: 3,3 В от стабилизатора напряжения платы. Максимальный ток — 50 мА.
  • GND: Выводы земли.
  • IOREF: Этот вывод предоставляет платам расширения информацию о рабочем напряжении микроконтроллера. В зависимости от напряжения, плата расширения может переключиться на соответствующий источник питания либо задействовать преобразователи уровней, что позволит ей работать как с 5 В, так и с 3,3 В устройствами.

Порты ввода/вывода

  • Цифровые входы/выходы: пины 013
    Логический уровень единицы — 5 В, нуля — 0 В. Максимальный ток выхода — 40 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно.
  • ШИМ: пины 3,5,6,9,10,11 и 13
    Позволяют выводить 8-битные аналоговые значения в виде ШИМ-сигнала.
  • АЦП: пины A0A5, A6A11(на цифровых пинах 4, 6, 8, 9, 10 и 12).
    В Arduino Leonardo есть 12 аналоговых входов, каждый из которых может представить напряжение в виде 10-битного кода (1024 значений). Разрядность АЦП — 10 бит.
  • TWI/I²C: пины SDA и SCL
    Для общения с периферией по синхронному протоколу, через 2 провода с использованием библиотеки Wire.
  • SPI: пины разъёма ICSP
    Выводы позволяют осуществлять связь по интерфейсу SPI. Обратите внимание, что линии SPI выведены только на разъём ICSP и не соединены с выводами платы, как на Arduino Uno. Те SPI-платы расширения, у которых нет 6-контактного разъёма ICSP для подсоединения к Leonardo — работать не будут.
  • UART: пины 0(RX) и 1(TX)
    Используется для коммутации платы Arduino с другими устройствами через класс Serial1. Для связи Arduino Leonardo с компьютером через порт micro-USB, используйте класс Serial

Светодиодная индикация

Имя светодиода Назначение
RX и TX Мигают при обмене данными между Arduino Leonardo и ПК.
L Светодиод выводу 13. При отправке значения HIGH светодиод включается, при отправке LOW – выключается.
ON Индикатор питания Arduino Leonardo.

Разъём micro-USB

Разъём micro-USB предназначен для прошивки платформы Arduino Leonardo с помощью компьютера.

Разъём для внешнего питания

Разъём для подключения внешнего питания от 7 В до 12 В.

ICSP-разъём

ICSP-разъем предназначен для внутрисхемного программирования микроконтроллера ATmega32U4. Также с применением библиотеки SPI данные выводы могут осуществлять связь по интерфейсу SPI. Обратите внимание линии SPI не продублированы на цифровых контактах, как например на Arduino Uno. Это означает, что если плата расширения использует SPI и не имеет снизу ICSP-разъёма ответного к этим штырькам на Arduino, она работать не будет.

Распиновка

Принципиальная и монтажная схемы

Характеристики

  • Микроконтроллер: ATmega32u4
  • Тактовая частота: 16 МГц
  • Напряжение логических уровней: 5 В
  • Входное напряжение питания: 7–12 В
  • Портов ввода-вывода общего назначения: 20
  • Максимальный ток с пина ввода-вывода: 40 мА
  • Максимальный выходной ток пина 3.3V: 50 мА
  • Максимальный выходной ток пина 5V: 800 мА
  • Портов с поддержкой ШИМ: 7
  • Портов, подключённых к АЦП: 12
  • Разрядность АЦП: 10 бит
  • Flash-память: 32 КБ
  • EEPROM-память: 1 КБ
  • Оперативная память: 2,5 КБ
  • Габариты: 69×53 мм

Ресурсы