Содержание

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++

  1. Для начала работы с платформой WiFi Slot на языке C++ скачайте и установите на компьютер интегрированную среду разработки Arduino IDE.
  2. По умолчанию среда программирования настроена только на AVR-платы. Для платформы WiFi Slot добавьте в менеджере плат поддержку платформ на модуле ESP8266.
  3. В пункте меню Инструменты Плата Amperka WiFi Slot.

После выполненных действий платформа 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

  1. Для старта с платформой 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);

После загрузки светодиод начнёт мигать раз в полсекунды.

Элементы платы

Мозг платформы

WiFi Slot основан на модуле ESP-12 с чипом ESP8266EX от Espressif.

Чип 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

Кнопка служит для ручного перевода модуля в режим прошивки:

  1. Зажмите кнопку PROG;
  2. Нажмите и отпустите кнопку RESET;
  3. Отпустите кнопку 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 читайте в соответствующей статье

Распиновка

Пины питания

Пины ввода/вывода

В отличии от большинства плат Arduino, родным напряжением платформы WiFi Slot является 3,3 В, а не 5 В. Выходы для логической единицы выдают 3,3 В, а в режиме входа ожидают принимать не более 3,3 В. Большее напряжение может повредить модуль!

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

Чтобы иметь возможность подключать модули с аналоговым входом к пинам A0 и A1 и при этом не мешать прошивке через UART, разрежьте соответствующие перемычки на задней стороне WiFi Slot.

Принципиальная и монтажная схемы

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

Ресурсы