Справочник по распиновке WeMos D1 Mini
Когда речь идёт о платах на базе ESP8266, WeMos D1 Mini выделяется как отличный выбор для тех, кто только начинает знакомиться с IoT. Она маленькая, хорошо поддерживается и невероятно дешёвая — цены начинаются от $3 за штуку. Эта доступность сделала её излюбленным вариантом как среди любителей, так и среди профессионалов.
В этой статье мы подробно рассмотрим распиновку WeMos D1 Mini.
Распиновка WeMos D1 Mini
D1 Mini имеет 16 выводов. Распиновка выглядит следующим образом:
Давайте подробнее рассмотрим выводы WeMos D1 Mini и их функции один за другим.
Выводы GPIO WeMos D1 Mini
D1 Mini имеет 11 выводов GPIO, которые можно запрограммировать для выполнения различных функций. Каждый GPIO можно настроить с внутренним подтягивающим резистором к питанию или к земле, или установить в режим высокого импеданса.
Имейте в виду, что все выводы работают на логическом уровне 3.3В; превышение этого напряжения приведёт к повреждению платы.
Какие GPIO безопасны для использования?
Хотя D1 Mini имеет множество выводов с различными функциями, некоторые из них могут не подходить для ваших проектов. В таблице ниже показано, какие выводы безопасны для использования, а какие следует использовать с осторожностью.
🟢 — Ваши приоритетные выводы. Они полностью безопасны для использования.
🟡 — Обратите особое внимание, поскольку их поведение, особенно при загрузке, может быть непредсказуемым. Используйте их только при крайней необходимости.
🔴 — Рекомендуется избегать использования этих выводов.
Маркировка |
GPIO |
Безопасно? |
Причина |
|---|---|---|---|
D0 |
GPIO16 |
🟡 |
HIGH при загрузке, используется для пробуждения из глубокого сна |
D1 |
GPIO5 |
🟢 |
|
D2 |
GPIO4 |
🟢 |
|
D3 |
GPIO0 |
🟡 |
подключён к кнопке FLASH, загрузка не удастся, если подтянут к LOW |
D4 |
GPIO2 |
🟡 |
HIGH при загрузке, загрузка не удастся, если подтянут к LOW |
D5 |
GPIO14 |
🟢 |
|
D6 |
GPIO12 |
🟢 |
|
D7 |
GPIO13 |
🟢 |
|
D8 |
GPIO15 |
🟡 |
Требуется для загрузки, загрузка не удастся, если подтянут к HIGH |
RX |
GPIO3 |
🔴 |
Вывод Rx, используется для прошивки и отладки |
TX |
GPIO1 |
🔴 |
Вывод Tx, используется для прошивки и отладки |
A0 |
ADC0 |
🔴 |
Аналоговый вход, не может быть настроен как выход |
На изображении ниже показано, какие выводы GPIO можно безопасно использовать.
Вывод АЦП WeMos D1 Mini
D1 Mini имеет один аналоговый вход — A0. Этот аналоговый входной вывод может измерять напряжение от 0 до 3.3В.
Он подключён к встроенному SAR АЦП с разрешением 10 бит, что означает, что он может различать 1024 (2^10) различных уровня напряжения. Другими словами, он может преобразовывать входные напряжения в диапазоне от 0 до 3.3В (рабочее напряжение) в целочисленные значения от 0 до 1024. Это даёт разрешение 3.3 вольта / 1024 единицы, или 0.0032 вольта (3.2 мВ) на единицу.
Выводы SPI WeMos D1 Mini
D1 Mini имеет один аппаратный интерфейс SPI (HSPI). Он поддерживает следующие общие функции SPI:
Полнодуплексная связь SPI
4 режима синхронизации формата передачи SPI
Максимальная тактовая частота 20 МГц
FIFO-буфер до 64 байт
Стоит отметить, что хотя имеется только одна шина SPI, программный SPI (также известный как bit-banging) может быть реализован на любых выводах GPIO, если требуются дополнительные шины SPI, но за счёт скорости и, возможно, увеличенной нагрузки на процессор.
Выводы I2C WeMos D1 Mini
D1 Mini имеет один интерфейс I2C, который реализован программно (методом «bit-banging»), то есть любой вывод GPIO может быть определён как SCL и SDA. Это работает довольно хорошо, и ESP8266 достаточно быстр, чтобы соответствовать скорости «уровня Arduino» (максимальная тактовая частота 100 кГц).
По умолчанию GPIO4 (SDA) и GPIO5 (SCL) используются для связи I2C и являются выводами I2C по умолчанию для многих библиотек и примеров, которые вы найдёте.
Выводы UART WeMos D1 Mini
D1 Mini имеет один рабочий UART (Universal Asynchronous Receiver/Transmitter — универсальный асинхронный приёмопередатчик), который используется для программирования, а также для общей последовательной связи (например, отправка или приём данных на/от компьютера или датчика с последовательным интерфейсом).
Эти выводы подключены через преобразователь USB-to-Serial CH340, поэтому их не следует подключать или использовать, если вы не абсолютно уверены, что хотите это сделать, поскольку на них также будет присутствовать трафик USB!
Выводы PWM WeMos D1 Mini
Почти все цифровые выводы (кроме D0) могут генерировать сигнал широтно-импульсной модуляции (PWM). Это полезно для управления скоростью двигателей, регулировки яркости светодиодов и других задач.
Обратите внимание, что сигнал PWM имеет разрешение 10 бит, а диапазон частоты PWM регулируется от 1000 мкс до 10000 мкс, то есть от 100 Гц до 1 кГц.
Выводы питания WeMos D1 Mini
WeMos D1 Mini имеет несколько выводов, предназначенных для питания:
Вывод 5V: При подключении через USB этот вывод выдаёт напряжение 5В, получаемое непосредственно от USB-порта. Он также может использоваться для питания платы при использовании внешнего источника питания.
Вывод 3V3: Этот вывод обеспечивает выходное напряжение 3.3В, которое можно использовать для питания внешних компонентов. Питание берётся от встроенного стабилизатора напряжения и имеет ограниченный ток; от него можно получить до 600 мА.
GND: вывод заземления.
Выводы прерываний WeMos D1 Mini
Все GPIO (кроме GPIO16) могут быть настроены для срабатывания прерывания по нарастающему фронту, спадающему фронту или при изменении состояния. Это необходимо для задач, управляемых событиями, таких как реакция на нажатие кнопки или сигнал датчика.
Управляющие выводы WeMos D1 Mini
Вывод RST — это вывод сброса. Подтягивание этого вывода к LOW сбрасывает микроконтроллер, что аналогично нажатию кнопки сброса на плате.
Вывод FLASH используется D1 Mini для определения момента загрузки в режим загрузчика. Подтягивая этот вывод к LOW при включении питания, вы можете перевести D1 Mini в режим прошивки, который необходим для программирования платы новой прошивкой.
Вывод WAKE используется для пробуждения D1 Mini из режима глубокого сна.