Конструктор Arduino: новый взгляд сквозь SparkFun Pro Micro

Конструктор Arduino: новый взгляд сквозь SparkFun Pro Micro

Arduino — платформа конструктор под создание проектов электроники. Проект Arduino содержит физическую печатную плату (программируемый микроконтроллер) плюс интегрированную среду разработки (IDE). Эта среда совместима с классическим ПК и успешно используется для написания компьютерного кода с последующей загрузкой на физическую плату. Платформа Arduino быстро завоевала популярность среди начинающих электронщиков. Это понятно, потому как конструктор Arduino неприхотлив в отношении аппаратного обеспечения. К тому же налицо форм-фактор, где все функции современного микроконтроллера разбиты на мелкие пакеты.

Конструктор Arduino: совершенству нет предела

Серия «Unos» виделась одной из самых популярных плат семейства Arduino, считалась отличным выбором для новичков. Но это видение исчезло с появлением SparkFun Pro Micro – как заявлено разработчиками, крутой новинки. Один чип на плате полностью перекрывает функциональность «Unos», «Duemilanoves» и «Diecimeillas». Посмотрим?

Обзор оборудования SparkFun Pro Micro

Прежде чем заниматься вопросами установки и применения SparkFun Pro Micro, рассмотрим конфигурацию платы с аппаратными причудами.

Также отметим, что первая часть наименования продукта — это всего лишь торговая марка известного магазина электроники, обслуживающего жителей США.

Контактный интерфейс печатной платы

Все входы/выходы микропроцессора SparkFun Pro Micro сосредоточены на двух параллельных кромках платы. Часть контактов предназначается для подвода или отвода линий питания. Другая часть контактов предназначена под функции системного ввода-вывода (I/O) – цифровые или аналоговые.

Схема контактов SparkFun Pro Micro
Схема расположения клеммных групп: PWM — интерфейс ШИМ; Analog — аналоговые сигналы; SPI — последовательный периферийный интерфейс; I2C — последовательная ассиметричная шина; Serial — линии сигналов TX/RX; Arduino — контактный шлейф материнки; Power — шина 3.3 или 5.0В

Конструктор отличается разнообразием сетей питания и цепей, связанных с энергетикой. Клемма RAW — это нерегулируемый вход напряжения для SparkFun Pro Micro.

Когда питание платы осуществляется через USB порт, напряжение на этом контакте будет около 4.8В (5В USB минус падение напряжения на диоде Шоттки).

С другой стороны, если плата питается от внешнего источника, через этот вывод приложенное напряжение может достигать 12В. Клемма VCC — это напряжение, подаваемое на микросхему ATmega32U4, расположенную на борту.

Величина этого напряжения зависит от типа используемого чипа (с питанием 3.3В и частотой 8 МГц или с питанием 5.0В и частотой 16 МГц). Соответственно, подаётся напряжение либо – 3.3В, либо 5.0В. Это напряжение регулируется напряжением, приложенным к выходу RAW.

Если питание платы SparkFun Pro Micro осуществляется через разъем RAW (или USB), этот вывод (VCC) может использоваться как выход для питания других устройств.

Клемма RST аппаратно предназначена для перезапуска SparkFun Pro Micro. Этот контакт подтянут к линии земли резистором 10 кОм. Через сопротивление с высоким значением Ом инициируется сброс системы.

Функционал SparkFun Pro Micro останется «выключенным», пока линия сброса не возвратится к состоянию с высоким потенциалом.

Клемма GND, соответственно, является общей шиной платы конструктора, где присутствует цокольное напряжение (0В опорного напряжения) системы.

Клеммы системного ввода-вывода (I/O)

Плата содержит 18 клемм ввода/вывода, являющихся многофункциональными. Каждый вывод может использоваться как цифровой вход или выход, например, для светодиодной индикации или кнопочного переключения.

Внешний вид платы Pro Mikro
Плата соответствует своему названию «микро». Размеры текстолита, на котором размещены миниатюрные радиодетали, сопоставимы с размерами пятирублевой монеты

Эти контакты являются частью IDE и применяются для обращения к Arduino с помощью целочисленных значений от 0 до 21. (Контакты A0-A3 могут использовать под цифровой или аналоговый сигнал).

Девять контактов имеют аналого-цифровые преобразователи (АЦП) и могут использоваться как аналоговые входы. Они полезны для работы, к примеру, с потенциометрами или другими аналоговыми устройствами с использованием функции analogRead.

На плате SparkFun Pro Micro имеются пять контактов, поддерживающих передачу сигналов широтно-импульсной модуляцией (PWM), что позволяет использовать возможности аналоговых выходов с использованием функции analogWrite.

Отмеченные клеммы обозначены на плате конструктора круговым кантом белого цвета. Также доступны аппаратные клеммы: UART, I2C, SPI. Эта контактная группа предназначена для взаимодействия с цифровыми устройствами:

  • дисплеями ЖК,
  • радио-модулями XBee,
  • сенсорами IMU,
  • другими датчиками.

Плата конструктора SparkFun Pro Micro поддерживает пять внешних прерываний, которые позволяют мгновенно вызывать функцию триггера, при высоком или низком уровне потенциала на контакте (или и тем и другим).

Если назначается прерывание контакта, необходимо помнить о конкретных прерываниях,  вызывающих действия триггера:

  • клемма 0 прерывание 2,
  • клемма 1 прерывание 3,
  • клемма 2 прерывание 1,
  • клемма 3 прерывание 0,
  • клемма 7 прерывание 4.

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

Конфигурация SparkFun Pro Micro предусматривает применение трёх светодиодов разного свечения: красного, жёлтого, зелёного. Красный светодиод в активном состоянии отображает наличие питания.

Светодиодная индикация на плате
Светодиодная индикация состояния и линия сброса: 1 — индикатор желтого света; 2 — индикатор зелёного света; 3 — индикатор красного цвета; К1 — линия сброса

Два других светодиода указывают факт передачи данных через USB интерфейс. Желтый светодиод представляет данные USB, поступающие по каналу RX, а зеленый светодиод указывает отправление данных по каналу TX.

Напряжение питания и частота

Микроконтроллер SparkFun Pro Micro выпускается двумя вариантами конструкции. Отличается один от второго питающим напряжением системы и рабочей частотой. Стандартный 5-вольтный SparkFun Pro Micro работает на частоте 16 МГц и полностью сопоставим с Arduino Leonardo.

Версия микропроцессора, где используется 3.3-вольтное питание, работает на скорости вполовину сниженной, равной – 8 МГц. Снижение частоты микропроцессора обусловлено гарантиями безопасной рабочей зоны при работе в более низком диапазоне питающих напряжений.

Проверка напряжения питания
Нижняя сторона печатной платы конструктора, где отмечен допустимый уровень вольтажа. На поддерживаемом значении (5В или 3.3В) наносится метка

Рабочим напряжением платы определяется максимально допустимый вольтаж на любой из клемм ввода/вывода. Так что, если используется версия 3.3-вольтного питания, нельзя увязывать плату с устройствами, где используется рабочее напряжение 5.0 вольт. Версия платы указывается снизу в углу.

Как подключить SparkFun Pro Micro

Поскольку основной особенностью микроконтроллера является его врожденная функциональность на базе USB интерфейса, логичный способ питания устройства — через порт USB.

Питание 5 вольт берётся непосредственно от шины USB, а до уровня 3.3 вольта SparkFun Pro Micro формирует питание модулем стабилизатора.

Интерфейс USB можно брать от компьютера, USB-концентратора, внешнего адаптера. Последнее устройство, как правило, обеспечивает повышенную мощность.

В качестве альтернативы, когда нет никакой возможности применить USB-интерфейс, микроконтроллер SparkFun Pro Micro может питаться через контакты RAW или VCC.

Питание, поступающее через клемму RAW, регулируется до правильного (допустимого) рабочего уровня (5.0В или 3,3В). Максимальный порог входного напряжения RAW не должен превышать 12В.

Но вместе с тем рекомендуется устанавливать уровень вольтажа по входу минимум на 1В больше рабочего уровня (например, 6В для 5-вольтной версии).

Если подключение SparkFun Pro Micro осуществляется через клемму VCC, регулировка входного питания не предусматривается.

Подключение питания к устройству
Вариант подключения энергии батарей на Про Микро, которым поддерживается рабочий вольтаж 5.0В. На адаптере используются четыре батареи по 1.5В

Поэтому клемму VCC разумно применять только в случае наличия источника питания с конкретным выходным уровнем – 3.3В или 5.0В. Кстати, 3.3-вольтную версию допускается питать от литий-ионных батарей или аккумуляторов иного типа.

Программатор микросхем SPI Flash на базе Arduino

Возможности конструктора Arduino в области базовой электроники безграничны. Между тем электронщикам этот конструктор должен быть интересен ещё и свойствами программатора.

Так, на базе платы расширения SparkFun Pro Micro с лёгкостью собирается программатор широко распространённых SPI Flash микросхем 25 серий.

Схема программатора микросхем SPI Flash
Схема программатора на основе платы расширения Arduino: U+ — индикатор рабочего состояния; RX — индикатор приёма данных; TX — индикатор передачи данных

На практике подтверждена успешная работа программатора на базе SparkFun Pro Micro с чипами:

  • PM25LD010
  • W25Q64FVSIG
  • 25P16VG,
  • MX25l8005
  • 25l8000
  • PM25lV512
  • 25Q128FVSG
  • 25L3206E

Для выполнения функций программного характера требуется софт программатора, а также системные библиотеки и скетч-файл. Здесь ПО для 64-битных версий Windows. Особенности монтажа: рекомендуется делать проводники максимально укороченные, скрученные в жгут.

Основополагающие принципы конструктора Arduino на видео

При помощи видеоматериала ниже потенциальный конструктор сможет открыть для себя основополагающие принципы популярного набора. Видеоролик рекомендуется к просмотру для скорейшего понимания и освоения контроллера: