====== Arduino Yún: распиновка, схема подключения и программирование ======
[[amp>product/arduino-yun?utm_source=man&utm_campaign=linino&utm_medium=wiki|Arduino Yún]] — это симбиоз двух платформ Arduino и Linux, поддерживаемых Свободным Сообществом.
{{ :продукты:arduino-yun:arduino-yun._overview.jpg?nolink |}}
Arduino Yún похожа на [[amp>product/arduino-leonardo?utm_source=man&utm_campaign=linino&utm_medium=wiki|Leonardo]], поскольку имеет такой же микроконтроллер — {{:продукты:arduino-yun:atmega32u4.pdf|Atmega32U4}}, но в отличие от Leonardo, в нем также есть дополнительный процессор — {{:продукты:arduino-yun:ar9331.pdf|Atheros AR9331}}, работающий под управлением Linux, с беспроводным стеком OpenWrt. Прошивка контроллера 32U4 через USB осуществляется точно так же, как и в Leonardo. А после того, как вы настроите Yún на работу в вашей сети Wi-Fi, контроллер можно будет прошивать и по воздуху.
===== Видеообзор платы =====
{{youtube>x0ZjbbGpeE0?large}}
===== Подключение и настройка Arduino части =====
Для начала работы с платой Arduino Yún в операционной системе Windows [[articles:arduino-ide-install|скачайте и установите]] на компьютер интегрированную среду разработки Arduino IDE.
В вашем случае выбирайте плату Yún.
==== Что-то пошло не так? ====
* [[установка-и-настройка-arduino-ide:arduino-leonardo-restore|У меня не появляется новых устройств при подключении Arduino]]
===== Подключение и настройка Linux части =====
Для работы с Linux частью Arduino [[:linino|скоммутируйте и настройте]] Arduino с вашей сетью.
===== Элементы платы =====
{{ :продукты:arduino-yun:arduino-yun_annotation.png?nolink |}}
==== Микроконтроллер ATmega32U4 ====
Мозгом Arduino части платформы Arduino Yun является 8-битный микроконтроллер семейства AVR — ATmega32U4. Он предоставляет в ваше распоряжение 32 КБ флеш-памяти для хранения прошивки, 2.5 КБ оперативной памяти SRAM и 1 КБ энергонезависимой памяти EEPROM для хранения данных.
==== Микропроцессор Atheros AR9331 ====
Linux-часть Arduino Yún использует микрокомпьютер Atheros AR9331, работающий под управлением операционной системы Linino.
Atheros AR9331 работает на частоте 400 МГц, имеет 64 МБ оперативной и 16 МБ flash-памяти, встроенный Wi-Fi-интерфейс, Ethernet-интерфейс, USB-хост и слот для micro-SD карты. Linino содержит в себе пакетный менеджер opkg, который позволяет устанавливать большое количество Linux-приложений, а так же интерпретатор языка Python 2.7, с помощью которого вы можете писать свои приложения для Linino.
==== Пины питания ====
* **VIN:** Напряжение от внешнего источника питания (не связано с 5 В от USB или другим стабилизированным напряжением). Через этот вывод можно как подавать внешнее питание, так и потреблять ток, когда устройство запитано от внешнего адаптера.
* **5V:** На вывод поступает напряжение 5 В от стабилизатора платы. Стабилизатор обеспечивает питание микроконтроллера ATmega32U4. Питать устройство через вывод ''5V'' не рекомендуется — в этом случае не используется стабилизатор напряжения, что может привести к выходу платы из строя.
* **3.3V:** 3,3 В от стабилизатора напряжения платы. Максимальный ток — 50 мА.
* **GND:** Выводы земли.
* **IOREF:** Этот вывод предоставляет платам расширения информацию о рабочем напряжении микроконтроллера. В зависимости от напряжения, плата расширения может переключиться на соответствующий источник питания либо задействовать преобразователи уровней, что позволит ей работать как с 5 В, так и с 3,3 В устройствами.
На плате не встроенного стабилизатора напряжения на 5В. Поэтому, если напряжение, подаваемое на плату, больше 5 В, то Arduino Yún может выйти из строя. Питание устройства можно осуществлять не только через micro-USB, но и через выводы Vin и 5V на плате. Однако производителем рекомендуется использовать интерфейс USB для питания платы всегда, когда это возможно.
==== Порты ввода/вывода ====
* **Цифровые входы/выходы:** пины ''0''–''13''\\ Логический уровень единицы — 5 В, нуля — 0 В. Максимальный ток выхода — 40 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно.
* **ШИМ:** пины ''3'',''5'',''6'',''9'',''10'',''11'' и ''13''\\ Позволяют выводить 8-битные аналоговые значения в виде ШИМ-сигнала.
* **АЦП:** пины ''A0''–''A5'', ''A6''–''A11''(на цифровых пинах 4, 6, 8, 9, 10 и 12).\\ В Arduino Uno есть 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 части (ATmega34U2) с Linux частью (AR9331) через библиотеку [[https://www.arduino.cc/en/Reference/YunBridgeLibrary|Bridge]]. Для связи Arduino Yun с компьютером через порт micro-USB, используйте класс ''Serial''
==== Светодиодная индикация ====
^ Имя светодиода ^ Назначение ^
| RX и TX |Мигают при обмене данными между Arduino частью управляющей платы и ПК.|
| L13 | Светодиод выводу ''13''. При отправке значения HIGH светодиод включается, при отправке LOW – выключается.|
| WAN |Мигает при поиске и обмена данными через Ethernet|
| ON |Индикатор питания Arduino Yún.|
| WLAN |Мигает при поиске и обмена данными по WiFi|
| USB |Мигает при работе USB-хоста.|
==== Разъём micro-USB ====
Разъём micro-USB предназначен для прошивки платформы Arduino Yún с помощью компьютера.
==== 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 Yún расположены три кнопки сброса процессоров: AR9331, 32U4 и WiFi
=== Сброс Atheros AR9331 ===
Служит для сброса процессора AR9331 и перезагрузки Linino
=== Сброс ATmega32U4 ===
Осуществляет сброс микроконтроллера ATmega32U4 — перезапуск загруженной в Arduino программы.
=== Сброс WiFi ===
Если вы перешли на другую локальную сеть и, соответственно, потеряли доступ к веб-интерфейсу для беспроводного управления Arduino Yún, необходимо перезагрузить процессор AR9331 и сбросить сетевые настройки Ардуино. Для этого нажмите и удерживайте кнопку сброса WiFi от 5 до 30 секунд. Настройки WiFi будут сброшены и Arduino Yún запустит собственную WiFi-сеть с названием Arduino Yún-XXXXXXXXXXXX. Все остальные настройки и изменение останутся прежними.
Чтобы сбросить дистрибутив Linino в первоначальное состояние, зажмите кнопку сброса WiFi на время больше 30 секунд. Все настройки установятся в первоначальное состояние, как после покупки или перепрошивки платы. Помимо этого, такой сброс приведет к удалению всех установленных файлов и сетевых настроек.
===== Распиновка =====
{{ :продукты:arduino-yun:arduino-yun_pinout.png?nolink |}}
===== Характеристики =====
**Arduino микроконтроллер ATmega32U4**
* Архитектура: AVR
* Тактовая частота: 16 МГц
* Напряжение логических уровней: 5 В
* Портов ввода-вывода общего назначения: 20
* Максимальный ток с пина ввода-вывода: 20 мА
* Портов с поддержкой ШИМ: 6
* Портов, подключённых к АЦП: 6
* Разрядность АЦП: 10 бит
* Flash-память: 32 КБ
* EEPROM-память: 1 КБ
* Оперативная память: 2,5 КБ
**Linux микропроцессор**
* Процессор: Atheros AR9331
* Архитектура MIPS: 400 МГц
* Рабочее напряжение: 3,3 В
* Ethernet: IEEE 802.3 10/100 Мбит/сек
* Wi-Fi: IEEE 802.11b/g/n
* USB: Type-A 2.0 хост/устройство
* SD-модуль: Micro-SD
* Оперативная память: 64 МБ DDR2
* Flash память: 16 МБ
**Общие**
* Входное напряжение питания: 5 В
* Максимальный выходной ток пина 3.3V: 50 мА
* Габариты: 69×53 мм
===== Ресурсы =====
* [[amp>product/arduino-yun?utm_source=man&utm_campaign=uno-wifi&utm_medium=wiki|Arduino Yún]] в магазине.
* {{:продукты:arduino-yun:atmega32u4.pdf|Datasheet на микроконтроллер Atmega32U4}}
* {{:продукты:arduino-yun:ar9331.pdf|Datasheet на микрокомпьютер AR9331}}
* {{:продукты:arduino-yun:arduino-yun_schematic.pdf|Принципиальная схема}}