Меню Рубрики

Установка arduino pro micro

Arduino Micro и Arduino Pro Micro

Arduino Micro — это миниатюрная плата совмещающая в себе все необходимые возможности, простоту в использовании и низкую стоимость. Она может определяться как периферийное устройство.

Arduino Micro не сильно отличается от своих собратьев. На плате расположены 12 аналоговых вводов и 20 цифровых вводов/выводов. 7 из них могут быть использованы как ШИМ выходы. Так же имеется кварцевый генератор с частотой 16 МГц, кнопка перезагрузки и разъем микро-USB. Основное отличие ардуино микро от ардуино нано заключается в самом микроконтроллере. Здесь использован ATmega32u4. Он имеет встроенную поддержку USB соединения. Благодаря этому Arduino Micro может определяться компьютером не только как последовательный COM порт, но и как периферийное устройство. Можно сказать что это уменьшенная копия Arduino Leonardo

Версия Arduino Pro Micro отличается меньшими размерами и имеет 22 пина. Из них 5 могут быть использованы в качестве ШИМ выводов и 4 как аналоговые входы.

Arduino Pro Micro выглядит вот так:

Arduino Micro

Так как ардуино микро и про микро практически не отличаются друг от друга, я расскажу подробнее про одну из них.

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

  • Микроконтроллер: ATmega32u4
  • Предельное напряжение питания: 5-20 В
  • Рекомендуемое напряжение питания: 7-12 В
  • Цифровых вводов/выводов: 20 (18 в Pro версии)
  • ШИМ: 7 цифровых пинов могут быть использованы как выводы ШИМ (5 в Pro версии)
  • Аналоговые выводы: 12 (4 в Pro версии)
  • Максимальная сила тока: 40 mAh с одного вывода и 500 mAh со всех выводов.
  • Flash память: 32 КБ
  • SRAM: 2,5 КБ
  • EEPROM: 1 КБ
  • Тактовая частота: 16 МГц

Подключение питания к Arduino Micro

Этот микроконтроллер можно питать через порт micro-USB от компьютера, паувербанка или от адаптера, подключенного в розетку.Так же пин +5V является не только выводом, но и вводом. Можно подавать ток на него и все это будет работать только при условии, что напряжение подаваемого тока строго равно пяти вольтам!
Еще можно подавать постоянный ток с напряжением от 6 до 20 вольт на пин VIN. Это предельные значения! При подачи напряжения 20 вольт на плате будет сильно греться стабилизатор напряжения вплоть до выхода из стоя. Если же подавать 5 вольт, то ардуинка может вообще не заработать. Если и заработает то на цифровых пинах напряжение будет ниже 5 вольт. Это связанно с тем, что стабилизатор напряжения имеет не 100% КПД. Рекомендуемое напряжение для питания через пин VIN — от 7 до 12 вольт.

Распиновка Arduino Micro

Как уже было написано выше, плата имеет 20 цифровых пинов. Они могут быть как входом так и выходом. Рабочее напряжение этих пинов составляет 5 В. Каждый из них имеет подтягивающий резистор и поданное на один из этих пинов напряжения ниже 5 вольт все равно будет считаться как 5 вольт (логическая единица).

Аналоговые входы: A0 — A5, A6 — A11 (на цифровых выводах 4, 6, 8, 9, 10 и 12). Всего Micro имеет 12 аналоговых входов, причем входы с A0 по A5 маркированы непосредственно на выводах, а другие, к которым также можно получить доступ в программе с использованием констант с A6 до A11, распределены соответственно на цифровых выводах 4, 6, 8, 9, 10 и 12. Все они также могут использоваться в качестве цифровых вход/выходов. Они измеряют поступающее на них напряжение и возвращают значение от 0 до 1024 при использовании функции analogRead(). Эти пины измеряют напряжение с точностью до 0,005 В.

Широтно-импульсная модуляция (ШИМ) Arduino Micro

У ардуино микро есть 7 выводов ШИМ, это пины 3, 5, 6, 9, 10, 11 и 13. Для использования ШИМ у Arduino есть специальная функция analogWrite().

Другие пины:

  • Пины 0 (RX) и 1 (TX) используются для передачи данных по последовательному интерфейсу.
  • Выводы для связи по интерфейсу SPI не подключены к цифровым пинам.
  • Так же на выводе D13 имеется встроенный в плату светодиод.
  • Пины 2 (SDA) и 3 (SCL) могут использоваться для связи с другими устройствами по шине I2C. Подробнее про этот интерфейс вы можете почитать на википедии. В среде разработке Arduino IDE есть встроенная библиотека «wire.h» для более легкой работы с I2C.

Физические характеристики

Arduino Micro имеет следующие размеры: длина 48 мм и ширина 18 мм. Однако разъем USB немного выпирает за пределы печатной платы. Arduino Micro весит всего около 12 грамм. Плата имеет 4 отверстия для возможности ее закрепления на поверхности. Расстояние между выводами равняется 2,54 мм.

источник

Установка arduino pro micro

Руководство к Arduino Leonardo и Micro

Для подключения к компьютеру Arduino Leonardo или Micro вам понадобится USB-кабель с разъемом Micro-B. Такой USB-кабель служит как для передачи данных, так и для питания платы. Чтобы прошить Arduino Leonardo, в среде разработки Arduino IDE из меню Tools > Board необходимо выбрать пункт » Arduino Leonardo» или «Arduino Micro» .

Читайте также:  Установка воздушно плазменной резки что это

Отличия от Arduino Uno

В целом, порядок работы и программирования Leonardo и Micro точно такой же, как и в других моделях Ардуино. Тем не менее, существует и несколько важных отличий.

Единый процессор — и для выполнения программ, и для связи по USB.

Leonardo и Micro отличаются от других моделей Ардуино, прежде всего, тем, что в них для выполнения всех функций используется один микроконтроллер — и для выполнения программ, и для взаимодействия с компьютером по интерфейсу USB. В Arduino Uno и других моделях для выполнения этих двух функций используются разные микроконтроллеры, соответственно, USB-соединение с компьютером всегда остается активным, независимо от текущего состояния главного микроконтроллера. Объединение обеих функций в один микроконтроллер позволило сделать Leonardo более гибким во взаимодействии с компьютером, а также уменьшить его себестоимость за счет отсутствия дополнительного процессора.

Переназначение порта при сбросе платы.

В составе устройства нет отдельной микросхемы, обслуживающей последовательную связь, поэтому используемые последовательные порты являются виртуальным — как в операционной системе ПК, так и на самом устройстве. При запуске загрузчика, Leonardo/Micro автоматически создает экземпляр класса для работы с последовательным интерфейсом, точно так же, как компьютер создает экземпляр драйвера последовательного порта при подключении Ардуино. В системе подключенная плата является экземпляром специального класса драйвера для работы с USB (Connected Device Class — CDC).

Такая организация приводит к тому, что при каждом сбросе платы, USB-соединение с компьютером будет разрываться и устанавливаться вновь. В системе устройство будет исчезать из списка доступных портов, соответственно последовательные порты будут перенумеровываться. Поэтому все программы, в которых был открыт порт Ардуино, потеряют соединение с устройством. Это одно из явных отличий Leonardo/Micro от Arduino Uno, в котором сброс микроконтроллера (ATmega328P) не приводит к разрыву USB-соединения (которое поддерживается дополнительным процессором ATmega8U2 или ATmega16U2). Эти отличия приводит к некоторым особенностям установки драйвера, процесса прошивки и взаимодействия с устройством, которые описаны ниже.

Отсутствие сброса при открытии последовательного порта.

В отличие от Arduino Uno, Arduino Leonardo и Micro не перезапускают загруженный скетч при каждом открытии последовательного порта на компьютере. Это означает, что компьютер не получит данные, отправленные платой до открытия в операционной системе последовательного порта (в том числе, например, данные, отправляемые в блоке setup()).

Такое изменение приводит к тому, что любые функции для передачи последовательных данных (такие, как print(), println(), write() и др.), написанные в блоке setup, не будут вызываться в момент открытия последовательного порта. Чтобы обойти эту проблему, можно программно проверять статус последовательного порта после вызова функции Serial.begin(), например, так:

Эмуляция клавиатуры и мыши.

Одно из преимуществ использования единого процессора для выполнения программ и USB-связи — это гибкость при взаимодействии устройства с компьютером. В частности, благодаря этому Ардуино может определяться в системе не только, как виртуальный последовательный порт (также называемый CDC), используемый для прошивки и передачи данных (подобно Arduino Uno), но и работать в качестве HID-устройства, эмулируя клавиатуру или мышь. Предупреждения об использовании этого режима см. в разделе «Правила хорошего тона при программировании», приведенном ниже.

Раздельное функционирование USB и UART.

В Arduino Leonardo и Micro, основной класс Serial ассоциирован с драйвером виртуального последовательного порта для соединения с компьютером через USB. Физически он не соединен с выводами 0 и 1, как это сделано на платах Arduino Uno и в более старых версиях. Для обращения к аппаратному последовательному порту (выводам 0 и 1, RX и TX) используйте класс Serial1 . (Для получения дополнительной информации см. справку по классу Serial).

Распиновка Arduino Leonardo несколько отличается от стандартного расположения некоторых выводов (особенно выводов интерфейсов SPI и TWI). Эти отличия подробно описаны на странице описания устройства.

Установка драйверов для Arduino Leonardo и Micro

  • При первом подключении Leonardo или Micro к компьютеру Mac, автоматически запустится программа «Keyboard Setup Assistant». Т.к. для Leonardo настраивать здесь особо нечего, можно просто закрыть это окно, кликнув по красной кнопке в левом верхнем углу.

Инструкции для Windows

Нижеследующие инструкции, прежде всего, относятся к Windows 7, хотя они также подходят и для Windows XP (лишь с небольшими отличиями в диалоговых окнах).

  • Подключите плату к компьютеру и дождитесь, пока Windows не запустит мастер установки драйверов. Если мастер не запустился автоматически, то вручную перейдите к Диспетчеру устройств (Пуск > Панель управления > Оборудование) и отыщите в списке строку Arduino Leonardo. Щелкните по ней правой кнопкой и выберите пункт «Обновить драйвер».

  • Жмите кнопку «Обзор. «. В появившемся окне перейдите к папке с программным обеспечением Ардуино (которое вы предварительно скачали). Выберите папку drivers и нажмите ОК, а затем Далее.

  • Возникнет сообщение о том, что устанавливаемое оборудование не проходило тестирование в Windows Logo. Жмите на кнопку Все равно продолжить.
Читайте также:  Установка кондиционера в фольксваген каравелла

  • Через несколько секунд появится сообщение о том, что мастер завершил установку программного обеспечения для Arduino Leonardo. Теперь закройте окно.

Linux

Под Linux установка драйверов не требуется вообще. (Проверено на Ubuntu 10.0.4)

Прошивка программ в Arduino Leonardo и Micro

В целом, процесс загрузки программы в Arduino Leonardo или Micro особо ничем не отличается от прошивки Uno или других моделей Ардуино. Достаточно в среде разработки нажать кнопку Upload, и ваша программа будет автоматически загружена в память Ардуино и запущена им на выполнение. В общих чертах этот процесс устроен точно так же, как и в Arduino Uno: среда Arduino инициирует сброс платы, который приводит к запуску загрузчика, отвечающего за получение, хранение и запуска нового скетча.

Однако, поскольку последовательный порт, взаимодействующий с устройством, является виртуальным и исчезает при каждом сбросе платы, то среда разработки Ардуино придерживается несколько другой стратегии при выборе таймингов на загрузку скетча, в отличие от Uno и других моделей. В частности, после автоматического сброса Leonardo или Micro (через последовательный порт, выбранный в меню Tools > Serial Port), среда Ардуино ожидает появления в системе нового виртуального последовательного (CDC) / COM-порта — того, который предположительно будет «прослушивать» загрузчик. После этого среда осуществляет отправку скетча на этот вновь созданный порт.

Если автоматический сброс не сработал, то ввиду описанных отличий, использовать физическую кнопку сброса для прошивки Arduino Leonardo/Micro нужно несколько по-другому. Нажмите и удерживайте нажатой кнопку сброса на плате, после этого в среде разработки Ардуино кликните по кнопке Upload. Отпускайте кнопку сброса только после того, как в строке состояния программы появится надпись «Uploading. «. После этого на плате запустится загрузчик, что приведет к созданию виртуального (CDC) последовательного порта на компьютере. Среда разработки увидит новый порт в системе и начнет передачу прошивки через этот порт. Опять таки, эти действия необходимы, только если на устройстве не сработала традиционная процедура прошивки (т.е. по нажатию одной кнопки Upload). (Обратите внимание, что автоматический сброс устройства происходит, если компьютер открывает последовательный порт на скорости 1200 бод и затем закрывает его; соответственно, он может не сработать, если что-то в системе оказывает влияние на USB-соединение с платой — например, отключенные прерывания).

Правила хорошего тона при программировании Arduino Leonardo и Micro

Несколько слов предостережения об использовании библиотек USB Mouse и Keyboard : постоянно запущенные на устройстве библиотеки Mouse или Keyboard могут сильно усложнить процесс прошивки Ардуино. Такие функции, как Mouse.move() и Keyboard.print() перемещают указатель мыши или постоянно отправляют сигналы о нажатии клавиш подключенному компьютеру, поэтому они должны вызываться только тогда, когда вы готовы обрабатывать поступающие от них события. Рекомендуется использовать какую-нибудь систему управления, позволяющую выключать подобную функциональность, например, в зависимости от положения переключателя или сигнала на выводе, состояние которого вы можете контролировать. Перед использованием функций библиотек Mouse или Keyboard непосредственно с компьютером, лучше всего протестировать возвращаемые ими значения с помощью функции Serial.print(). Так вы сможете удостовериться в правильности отправляемых значений. Подробнее см. примеры работы с библиотеками Mouse и Keyboard.

Эффективное использование программы Serial Monitor: поскольку последовательные данные идут только через один процессор, Ардуино может заполнять приемный буфер компьютера гораздо быстрее, чем другие устройства. Вам следует помнить, что при циклической отправке данных по последовательному интерфейсу, например, так:

Serial Monitor в среде разработки может подтормаживать, поскольку он не будет успевать отображать поступающие от Ардуино данные. Если у вас возникла такая ситуация, добавьте небольшую задержку внутрь вашего цикла, чтобы приемный буфер компьютера не заполнялся слишком быстро. Поможет даже небольшая задержка в 1 мс:

Приложения, работающие с последовательным портом через родные библиотеки, а не через библиотеку RXTX, как правило, считывают данные с порта гораздо быстрее, поэтому в большинстве случаев вы не столкнетесь с этой ошибкой за исключением программ, построенных на базе функций RXTX (в том числе Serial Monitor, Processing и пр.).

Для получения дополнительной информации об Arduino Leonardo и Micro, см. описание устройств Leonardo и Micro. Подробнее о возможностях работы с USB см. справку по библиотекам Mouse и Keyboard.

источник

Входы и выходы Pro Micro.

— 18 цифровых вывода могут работать как входами, так и выходами. Напряжение на выводах 5 или 3,3В в зависимости от версии платы, при токе в 40мА на каждом пине;
— последовательный интерфейс с пинами TX и RX;
— I2C интерфейс с пинами SDA и SCL;
— ШИМ выводы: 3, 5, 6, 9, 10;
— SPI интерфейс с пинами MISO, MOSI и SCK;
— Светодиоды сигнализирующие: наличие питания, RX и TX;
— 9 аналоговых входов A0-A3 и A6-A10;
— RESET – вывод для перезагрузки микроконтроллера, аналогичен физической кнопки сброса.

Защита от КЗ и перегрузки.

На плате имеется восстанавливающий предохранитель MF-MSMF050-2, который защитит USB-порты вашего компьютера, если будет короткое замыкание и перегрузка по току. Предохранитель автоматически разорвёт соединение, если к USB компьютера будет подключено более 500 мА. В таком состоянии он будет находится пока не будет устранено короткое замыкание или перегрузка.

Читайте также:  Установка дворников на бмв е39

Про питание Pro Micro.

Pro Micro может быть запитана от USB порта вашего ПК, для этого используется USB разъём на плате.

Для питания платы от внешнего не стабилизированного источника, питание нужно подавать на вывод RAW. На этот вывод рекомендуется подавать от 7 до 12В. Если питать плату от 6В, плата может работать не стабильно. При напряжении более 12В, встроенный стабилизатор напряжения может сгореть. С этого вывода, напряжение будет преобразовываться внутренним стабилизатором до необходимого и питать микроконтроллер.

VCC – данный пин можно использовать как для подачи напряжения для питания платы, так и для снятия напряжения, для запитки всевозможных датчиков / сенсоров. Для питания платы через этот пин, нужно строго подавать то стабилизированное напряжение, на которое рассчитана плата. С этого пина напряжение не идёт через внутренний стабилизатор, а напрямую подаётся на контроллер, поэтому если оно будет выше необходимого — плата сгорит.
При питании платы через USB разъём или RAW, на данном выводе будет присутствовать напряжение, равное напряжению питания Pro Micro. Этим напряжением можно запитывать различные датчики. Максимальный выходной ток для всей платы не должен превышать 500мА, на отдельный пин не больше 5 — 10мА.

J1 – Если плата прошита загрузчиком Arduino Micro, то эти контакты используются при конфигурировании версии платы. При 5-вольтовой версии контакты запаяны, при 3,3В — разомкнуты. Поскольку у меня плата распознаётся как «Leonardo», эта перемычка не используется и она разомкнута.

Установка драйвера на Pro Micro.

При подключении платы к компьютеру загорится красный светодиод, сигнализирующий о наличии питания на плате.

В диспетчере устройств появится неизвестное устройство «Arduino Leonardo«. Почему так, а не «Pro Mini»? Потому что разработчик прошил микроконтроллер загрузчиком от Leonardo, на работе это никак не скажется.

Для Windows 10 ничего не придётся скачивать, драйвер установится автоматически.

Для остальных систем семейства Windows скачиваем драйвер и устанавливаем его в ручном режиме.

При установки драйвера на Windows 7 у меня появилось сообщение о невозможности проверки издателя драйверов. В таком случае выбираем «Всё равно установить этот драйвер».

В итоге, в диспетчере устройств появится устройство «Arduino Leonardo«. Рядом будет указан номер виртуального COM-порта, в моём случае это COM14.

Загрузка скетча в Arduino Leonardo и Pro micro.

Попробуем загрузить в плату скетч Blink и убедится в её работоспособности. Открываем стандартный скетч «Blink». Выбираем в Arduino IDE плату.

Поскольку загрузчик в ней от Leonardo, значит эту плату и выбираем: «Инструменты» — Плата: «Arduino Leonardo».

Если у вас загрузчик будет от Arduino Micro, значит выбираете его. Не забывайте так же выбрать версию платы 5 или 3,3В, как это выбирается с платой Pro mini. Отсюда выплывает объяснение, почему 5-вольтовый китайский аналог Micro, прошит загрузчиком Leonardo. Плата Leonardo присутствует в Arduino IDE, а плату Pro Micro нужно добавлять вручную через менеджер плат. Видимо что бы пользователи не заморачивались в этих настройках, плату прошивают как Leonardo. Подобные доводы имеют место быть, если мы говорим про версию платы 5В. Если нужна плата на ATmega32u4 с логическими уровнями 3,3В, без ручного добавления платы в Arduino IDE не обойтись.

Выбираем номер виртуального COM-порта, который прописан в Диспетчере устройств, в моём случае это COM14.

Нажимаем кнопку «Вгрузить» (Upload) и ждём загрузку скетча.

В процессе загрузки в колонках услышите звук извлечения / подключения USB устройства. Это происходит потому что последовательный порт с которым взаимодействует устройство, на платах Leonardo и Micro является виртуальным. При каждом автоматическом сбросе платы, виртуальный порт исчезает, затем вновь появляется, чем объясняется характерный звук в колонках.
Обычно скетч загружается в плату без нажатия кнопки reset, видимо поэтому на китайском аналоге решили избавится от этой кнопки. В редких случаях, когда автоматический сброс не сработает, нужно использовать физическую кнопку сброса или пин reset.

Загрузив в плату скетч «Blink» мы не сможем наблюдать мигание светодиода. Дело в том, что на плате Pro Micro нет светодиода подключенного к 13 пину. Придётся его отдельно подключать к ножкам через резистор. Можно поступить по другому, на плате имеются светодиоды RX и TX, можно ими помигать.

Загружаем следующий скетч:

Если открыть монитор последовательного порта, увидим надпись Hello World! и теперь светодиоды RX и TX будут перемигиваться.

источник

Добавить комментарий