WiFi Slot: распиновка, схема подключения и программирование
WiFi Slot — платформа для быстрой разработки компактных устройств с Wi-Fi на борту. Мозгом платы выступает модуль ESP-12 с чипом ESP8266EX от Espressif.
Обзор платы
Общие сведения
WiFi Slot содержит на борту всё необходимое для быстрой и комфортной работы: USB-разъём для программирования и отладки, десять цифровых входов/выходов с поддержкой ШИМ-сигнала (восемь из которых восемь могут использоваться как аналоговый вход) и две служебные кнопки.
Больше нет нужды нажимать специальные кнопки при каждой прошивке. Специальная схема вводит плату в режим программирования при прошивке через USB-разъём.
Родным напряжением чипа является 3,3 В. Мы установили на плату мощный DC-DC преобразователь, который позволяет запитать плату от 5 В при помощи USB, Power Bank или Li-Ion-аккумулятора. Понижающий преобразователь обеспечит нагрузку током до 1 А. Забудьте о глюках при нехватке питания от маломощных регуляторов напряжения — тока хватит всем.
WiFi Slot позволяет подключить до четырёх Troyka-модулей. Используемые пины для связи сенсоров и модулей с WiFi Slot зависят от конкретного устройства, точнее: от типа его коммуникации, сигнала и протокола. Обратитесь к странице с обзором сенсоров, чтобы определить как организована коммуникация с каждым устройством. После чего можно приступать к работе с модулем.
Платформа программируется двумя способами:
Программирование на C++
- Для начала работы с платформой WiFi Slot на языке C++ скачайте и установите на компьютер интегрированную среду разработки Arduino IDE.
- По умолчанию среда программирования настроена только на AVR-платы. Для платформы WiFi Slot добавьте в менеджере плат поддержку платформ на модуле ESP8266.
- В пункте меню.
После выполненных действий платформа WiFi Slot готова к программированию через Arduino IDE.
Подробности о функциях и методах работы WiFi Slot (ESP8266) на языке C++ читайте на ESP8266 Arduino Core’s.
Пример работы
В качестве примера повторим первый эксперимент «Маячок» из набора Матрёшка. Для этого установите светодиод 5 мм (Troyka-модуль) в пин A2
. После чего прошейте платформу кодом ниже.
- Blink.ino
// пин подключения светодиода #define LED_PIN A2 void setup() { // настраиваем пин светодиода в режим выхода pinMode(LED_PIN, OUTPUT); } void loop() { // подаём на пин светодиода «высокий уровень» digitalWrite(LED_PIN, HIGH); // ждём одну секунду delay(1000); // подаём на пин светодиода «низкий уровень» digitalWrite(LED_PIN, LOW); // ждём одну секунду delay(1000); }
После загрузки светодиод начнёт мигать раз в полсекунды. Это значит всё получилось и можно смело переходить к экспериментам на WiFi Slot.
Программирование на JavaScript
- Для старта с платформой WiFi Slot на языке JavaScript скачайте и установите интегрированную среду разработки — Espruino Web IDE.
Подробнее о функциях и методах работы ESP8266 на языке JavaScript читайте на Espruino.
При программировании платформы через Espruino IDE используйте имена пинов модуля ESP-12. Например пину A2
равносильно название D16
. Для информации изучите распиновка платформы.
Пример работы
В качестве примера повторим второй эксперимент «Маячок» из набора Йодо. Для этого установите светодиод 5 мм (Troyka-модуль) в пин D16
. После чего прошейте платформу скриптом ниже.
- Blink.js
// создаём объект для работы со светодиодом на пине D16 var led = require('@amperka/led').connect(D16); // мигаем светодиодом каждые полсекунды led.blink(0.5, 0.5);
После загрузки светодиод начнёт мигать раз в полсекунды.
Элементы платы
Мозг платформы
Чип ESP8266EX
Чип ESP8266 — выполнен по технологии SoC (англ. System-on-a-Chip — система на кристалле). В основе кристалла входит процессор семейства Xtensa — 32-х битный Tensilica L106 с частой 80 МГц с ультранизким энергопотреблением, радиочастотный трансивер с физическим уровнем WiFi IEEE 802.11 b/g/ и блоки памяти SRAM. Мощности процессорного ядра хватает для работы сложных пользовательских приложений и цифровой сигнальной обработки.
Программное приложение пользователя должно храниться на внешней микросхеме Flash-памяти и загружаться в ESP8266EX
через один из доступных интерфейсов (SPI, UART, SDIO и др.) каждый раз в момент включения питания системы.
Чип ESP8266 не содержит в себе Flash-память и многих других компонентов для пользовательского старта. Микросхема является основой на базе которой выпускаются модули с необходимой периферией, например ESP-12.
Модуль ESP-12
ESP-12 — модуль с чипом ESP8266EX
, Flash-памятью на 2 МБ и всей необходимой обвязкой, которые спрятаны под металлическим кожухом.
Рядом с кожухом расположен индикаторный светодиод и миниатюрная антенна из дорожки на верхнем слое печатной платы в виде змейки. Металлический кожух экранирует компоненты модуля и тем самым улучшает электромагнитные свойства.
Разъём micro-USB
Разъём micro-USB предназначен для прошивки платформы WiFi Slot с помощью компьютера.
Преобразователь USB-UART
Преобразователь USB-UART на микросхеме CP2102 обеспечивает связь модуля ESP-12E с USB-портом компьютера. При подключении к ПК — WiFi Slot определяется как виртуальный COM-порт.
Понижающий DC-DC
Понижающий DC-DC NCP1529 с выходом 3,3 вольта, обеспечивает питание микроконтроллера. Максимальный выходной ток составляет 1 А.
Светодиодная индикация
Имя светодиода | Назначение |
---|---|
PWR | Индикатор питания |
RX и TX | Мигают при обмене данными между WiFi Slot и компьютером. |
Аналоговый мультиплексор
Модуль ESP-12 имеет только один 10-битный аналоговый вход, который способен измерять напряжение от нуля до одного вольта. Мы расположили на плате аналоговый мультиплексор 74HC4052D с селектором выбора каналов на микросхеме SN74HC393. А резисторный делитель поднимает верхний порог измеряемого напряжения до 3,3 В. Всё это даёт платформе WiFi Slot восемь аналоговых портов.
Кнопка RESET
Кнопка предназначена для ручного сброса прошивки — аналог кнопки RESET
обычного компьютера.
Кнопка PROG
Кнопка служит для ручного перевода модуля в режим прошивки:
- Зажмите кнопку
PROG
; - Нажмите и отпустите кнопку
RESET
; - Отпустите кнопку
PROG
При использовании с Arduino IDE проводить эту процедуру необязатьельно. Специальная схема на плате сделает всё за вас.
Разъём Slot Connector
Вы можете подключить к WiFi Slot одну или несколько плат расширения Slot Expander. Плата управляется через интерфейс I²C и предоставляет 10 дополнительных пинов ввода/вывода, 9 из которых поддерживают АЦП и ШИМ. Slot Expander физически подключается через специальный разъём с переходником Slot Connector.
Распиновка разъёма
Имя контакта | Назначение |
---|---|
5V | питание |
GND | земля |
SDA | линия данных I²C |
SCL | линия синхронизации I²C |
Подробнее о Slot Expander читайте в соответствующей статье
Распиновка
Пины питания
- 5V: На вывод поступает напряжение 5 В от разъёма micro-USB.
- 3.3V: На вывод поступает 3,3 В от понижающего DC-DC преобразователя на плате. Преобразователь обеспечивает питание модуля
ESP-12
. Максимальный ток — 1 А. - GND: Выводы земли.
Пины ввода/вывода
В отличии от большинства плат Arduino, родным напряжением платформы WiFi Slot является 3,3 В, а не 5 В. Выходы для логической единицы выдают 3,3 В, а в режиме входа ожидают принимать не более 3,3 В. Большее напряжение может повредить модуль!
Будьте внимательны при подключении периферии: убедитесь, что она может корректно функционировать в этом диапазоне напряжений.
- Цифровые входы/выходы: 10 пинов;
A0
–A7
,SDA(2)
иSCL(0)
Логический уровень единицы — 3,3 В, нуля — 0 В. Максимальный ток выхода — 12 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно. - ШИМ: 10 пинов;
A0
–A7
,SDA(2)
иSCL(0)
Позволяет выводить аналоговые значения в виде ШИМ-сигнала. Разрядность ШИМ – 10 бит. - АЦП: 8 пинов;
A0
–A7
Позволяет представить аналоговое напряжение в виде числа. Разрядность АЦП установлена в 10 бит. Изменить разрядность АЦП нельзя. На аналоговые входы WiFi Slot можно подавать напряжение в диапазоне от 0 до 3,3 В. При подаче большего напряжения модуль может выйти из строя.
Чтобы иметь возможность подключать модули с аналоговым входом к пинам A0
и A1
и при этом не мешать прошивке через UART
, разрежьте соответствующие перемычки на задней стороне WiFi Slot.
Принципиальная и монтажная схемы
Характеристики
- Модуль: ESP-12 (ESP8266)
- Тактовая частота: 80 МГц, 160 МГц
- Объём Flash-памяти: 2 МБ
- Беспроводной интерфейс: Wi-Fi 802.11 b/g/n 2,4 ГГц
- Режимы работы:
- Клиент (STA)
- Точка доступа (AP)
- Клиент + Точка доступа (STA + AP)
- Портов ввода-вывода всего: 10
- Портов с АЦП: 8
- Разрядность АЦП: 10 бит
- Портов с ШИМ (Программный): 10
- Разрядность ШИМ: по умолчанию 10 бит
- Аппаратных интерфейсов SPI: 1
- Программных интерфейсов I²C / TWI: 1
- Аппаратных интерфейсов UART / Serial: 2
- Номинальное рабочее напряжение: 3,3 В
- Максимальный ток с шины 3.3V: 1 А (включая питание микроконтроллера)
- Максимальный ток с пина или на пин: 12 мА
- Габариты: 50,8×50,8 мм
Ресурсы
- Wi-Fi Slot в магазине.