====== Arduino Leonardo: распиновка, схема подключения и программирование ====== [[amp>product/arduino-leonardo?utm_source=man&utm_campaign=arduino-leonardo&utm_medium=wiki|Arduino Leonardo]] — платформа для разработки на базе микроконтроллера ATmega32U4. {{ :продукты:arduino-leonardo:arduino_leonardo_overview.jpg?nolink |}} На плате предусмотрены: 20 цифровых входов/выходов (7 из них могут работать в качестве ШИМ-выходов, 12 — в качестве аналоговых входов), кварцевый резонатор на 16 МГц, разъём микро-USB, разъём питания, разъём для внутрисхемного программирования ICSP (In-Circuit Serial Programming) и кнопка сброса. Отличие Arduino Leonardo от других плат в том, что его USB-контроллер встроен непосредственно в микроконтроллер ATmega32U4, исключая необходимость в дополнительном процессоре. При подключении к компьютеру Leonardo определяется HID-устройство (вроде клавиатуры или мыши) — сделать на основе Arduino Leonardo новый компьютерный манипулятор значительно проще, чем с другими платами. ===== Подключение и настройка ===== Для работы с платой Arduino Leonardo в операционной системе Windows [[articles:arduino-ide-install|скачайте и установите]] на компьютер интегрированную среду разработки Arduino IDE. ==== Что-то пошло не так? ==== * [[установка-и-настройка-arduino-ide:arduino-leonardo-restore|У меня не появляется новых устройств при подключении Arduino]] ===== Элементы платы ===== {{ :продукты:arduino-leonardo:arduino_leonardo_annotation.png?nolink |}} ==== Микроконтроллер 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 В устройствами. ==== Порты ввода/вывода ==== * **Цифровые входы/выходы:** пины ''0''–''13''\\ Логический уровень единицы — 5 В, нуля — 0 В. Максимальный ток выхода — 40 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно. * **ШИМ:** пины ''3'',''5'',''6'',''9'',''10'',''11'' и ''13''\\ Позволяют выводить 8-битные аналоговые значения в виде ШИМ-сигнала. * **АЦП:** пины ''A0''–''A5'', ''A6''–''A11''(на цифровых пинах 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 не продублированы на цифровых контактах, как например на [[amp>product/arduino-uno?utm_source=man&utm_campaign=arduino-leonardo&utm_medium=wiki|Arduino Uno]]. Это означает, что если плата расширения использует SPI и не имеет снизу ICSP-разъёма ответного к этим штырькам на Arduino, она работать не будет. ===== Распиновка ===== {{:продукты:arduino-leonardo:arduino_leonardo_pinout.png?direct&700 |}} ===== Принципиальная и монтажная схемы ===== {{:продукты:arduino-leonardo:arduino_leonardo_schematic.png?direct&350 |}} {{ :продукты:arduino-leonardo:arduino_leonardo_layout.png?direct&300|}} ===== Характеристики ===== * Микроконтроллер: ATmega32u4 * Тактовая частота: 16 МГц * Напряжение логических уровней: 5 В * Входное напряжение питания: 7–12 В * Портов ввода-вывода общего назначения: 20 * Максимальный ток с пина ввода-вывода: 40 мА * Максимальный выходной ток пина 3.3V: 50 мА * Максимальный выходной ток пина 5V: 800 мА * Портов с поддержкой ШИМ: 7 * Портов, подключённых к АЦП: 12 * Разрядность АЦП: 10 бит * Flash-память: 32 КБ * EEPROM-память: 1 КБ * Оперативная память: 2,5 КБ * Габариты: 69×53 мм ===== Ресурсы ===== * {{:продукты:arduino-leonardo:atmega32u4.pdf|Datasheet на микроконтроллер Atmega32U4}} * [[amp>product/arduino-leonardo?utm_source=man&utm_campaign=arduino_leonardo&utm_medium=wiki|Arduino Leonardo ]] в магазине.