РАСПРЕДЕЛЕНИЕ GPIO У ESP8266
Общее данные
Программные номера контактов соответствуют номерам выводов GPIO ESP8266. Например для чтения GPIO2, нужно вызвать digitalRead(2);
Все цифровые входы/выходы защищены от перенапряжения и ESD цепью между выводом и землей. Напряжения пробоя около 6 вольт.
Рабочее напряжение на контактах: -2v < VCC < +2В
При старте все контакты сконфигурированы как INPUT.
GPIO0-GPIO15 могут быть INPUT, OUTPUT, или INPUT_PULLUP.
GPIO16 может быть INPUT, OUTPUT, или INPUT_PULLDOWN_16.
Он так же используется в режиме XPD для deepSleep() (не забываем про подтяжку и небольшой конденсатор).
GPIO6-GPIO11 используется для интерфейса к флешпамяти, и их задействовать нельзя. Однако на некоторых версиях можно использовать GPIO9 и GPIO10, указав режим DOUT работы с флешпамятью.
Аналоговый вход
ESP8266 имеет встроенный аналоговый вход общего назначения, разрядностью 10-бит, диапазон значений 0-1023. Напряжение работы 0 - 1.06В. Аналоговый вход не может быть использован при работе WiFi, либо прочитанные данные могут быть не точны.
analogRead(A0) позволяет читать аналоговый сигнал и подсоединен к выводу TOUT.
Прерывания
Прерывания могут быть назначены на любые контакты кроме GPIO16.
ШИМ / PWM
analogWrite(pin, value) включает програмный PWM на всех контактах кроме GPIO16.
analogWrite(pin, 0) выключает PWM. Диапазон значений 0 - 1023.
Назначение контактов
Наиболее часто используемые функции выводов можно назначит использую макро SPECIAL например: pinMode(pin, SPECIAL)
позволяет установить назначение контактов:
UART RX/TX на выводах 1 - 3,
HSPI на выводах 12-15,
CLK на выводах 0, 4 и 5.
SPECIAL назначается:
CLK_OUT
TX0
TX1
RX0
CLK_XTAL
CLK_RTC
SPI_MISO
SPI_MOSI
SPI_CLK
SPI_SS
Так же можно назначить используя макро FUNCTION pinMode(pin, FUNCTION1)
Загрузочная конфигурация
У ESP8266 есть три режима загрузки: режим SDIO, UART режим и FLASH режим. Конфигурация происходит подачей высокого/низкого состояния при включении питания на контакты: GPIO15, GPIO0 и GPIO2:
0 Низкий уровень
1 Высокий уровень
x не подсоединенный контакт
MODE GPIO15 GPIO0 GPIO2
SDIO (Загрузка с SDcard) 1 x x
UART (Загрузка программы) 0 0 x or 1
FLASH (Режим обычной работы) 0 1 x or 1
Note :- GPIO2 Лучше подтягивать к напряжению питания, так как при программной подтяжке он может перегореть. Источник.
LED контакт
GPIO1, он же TX, часто подсоединен к голубому LED. При подачи логического нуля, LED включается.
Ток нагрузки выходов
Максимальный допустимый ток на выходе 12mA. если потребение нагрузки больше то необходимо установить токограничивающий резистор, чтобы потребление было меньше 12mA. Пример - R=(Vout-Vled)/I и так: (3.3V-1.8V красный LED) при 12mA = минимум 125Ω.
Взял на странице http://espiot.ru/raspriedielieniie-gpio-u-esp8266/
Классическая схема для прошивки ЕСП с сайта esp8266.ru
Распределение GPIO
ESP8266-01, 07 и т.п.
-
- Лейтенант
- Сообщения: 530
- Зарегистрирован: 05 апр 2016, 23:30
- Откуда: Санкт-Петербург
- Имя: Илья
Вернуться в «Справка по ESP8266»
Перейти
- Правила размещений сообщений
- FLProg & SCADA
- ↳ FLProg
- ↳ FLProg-Scada
- ↳ Проекты
- ↳ Пожелания
- Основной
- ↳ Периферийное железо для контроллеров
- ↳ Датчики температуры, влажности и давления
- ↳ Прочие датчики и энкодеры
- ↳ Дисплеи и индикаторы
- ↳ Часы реального времени
- ↳ Управление двигателями
- ↳ Устройства памяти
- ↳ Расширители портов
- ↳ Кнопки и клавиатуры
- ↳ Звук, музыка и видео
- ↳ Светодиоды
- ↳ ЦАП и АЦП
- ↳ Печатные платы, блоки питания, корпуса и прочие компоненты
- ↳ Приборы и оборудование
- ↳ Espressif ESP
- ↳ ESP8266
- ↳ Справка по ESP8266
- ↳ Платы на основе ESP8266
- ↳ ESP32
- ↳ Справка по ESP32
- ↳ Платы на основе ESP32
- ↳ WEB интерфейс
- ↳ Готовые прошивки
- ↳ Спросить у знатоков
- ↳ Темы от автора
- ↳ Обсуждение работы сайта
- ↳ Справочники и даташиты
- ↳ Юмор. Отдохните, улыбнитесь и с новыми силами в бой!
- ↳ Покупка железа (Обмен опытом)
- ↳ Просто поболтать (На свободную тему)
- ↳ Торрент - ссылки
- ↳ HMI_панель на Андроиде - KaScada
- ↳ Полезные ссылки
- ↳ OnLine Общение
- ↳ Читальный зал
- ↳ HMI Virtuino
- ↳ Пользовательские контроллеры
- ↳ Коммуникация, связь, инструменты, программы
- ↳ MQTT
- ↳ Blynk
- ↳ Modbus
- ↳ Remote XY
- ↳ WiFi
- ↳ Bluetooth
- ↳ Radio 433 MHz
- ↳ GSM / GPRS
- ↳ GPS
- ↳ Infrared (IR)
- ↳ Ethernet
- ↳ UART
- ↳ CAN
- ↳ Другие
- ↳ Контроль доступа. Обсуждение
- ↳ RFID
- ↳ iButton
- ↳ Датчик отпечатка пальцев
- ↳ Конфиденциальность
- ↳ Базовые элементы
- ↳ Таймеры
- ↳ Математика
- ↳ Логика
- ↳ переменные
- ↳ Arduino. Другие МК
- ↳ ATmega328,168
- ↳ ATmega32u4,2560
- ↳ Atmel Cortex-M3
- ↳ Проекты различных устройств на Ардуино
- ↳ Инкубаторы
- ↳ STM32
- ↳ Проекты различных устройств на STM32
- ↳ Команда ecoins
- Видео. Уроки. Примеры.
- ↳ Обучающие видео материалы
- ↳ Видео от Автора программы
- ↳ Ключ к Arduino
- ↳ Видео от Rovki
- ↳ Обучающие примеры работы в FLProg
- ↳ Интересный контент с FLProg
- Проекты различных устройств
- ↳ Проекты различных устройств на Arduino
- ↳ Проекты различных устройств на ESP8266 / ESP32
- ↳ ESP8266
- ↳ ESP32
- ↳ Проекты различных устройств на STM32
- ↳ Проекты с разными контроллерами
- Песочница
- ↳ Начинающим
- ↳ Wiki
- ↳ Электронщикам - Непрограммистам
- ↳ Штатные блоки
- ↳ Помогите, а то я "нимагу"
- ↳ А что так можно было, да?
- ↳ Не могу найти тему ...
- Пользовательские блоки
- ↳ Триггеры, таймеры, счетчики, детекторы сигнала
- ↳ Блоки для рассчетов и цифровые фильтры
- ↳ Блоки сравнения (компараторы)
- ↳ Коммуникация и связь
- ↳ Управление шаговыми двигателями и сервоприводами
- ↳ Часы реального времени (RTC)
- ↳ Дисплеи, индикаторы и клавиатуры
- ↳ Работа со строками
- ↳ Датчики и энкодеры
- ↳ EEPROM и SD карты
- ↳ Конвертация типов, шифраторы и дешифраторы
- ↳ Микросхемы расширений
- ↳ ПИД регуляторы (PID), блоки для ШИМ
- ↳ Звук и видео
- ↳ Контроль доступа
- ↳ Светодиоды, освещение
- ↳ Другое
- ↳ Разработка пользовательских блоков
- ↳ Библиотеки пользователей
- ↳ Блоки для ESP32/ESP8266
- Программирование на С++
- ↳ Учебные материалы
- ↳ С++ в Ардуино
- ↳ Общие вопросы
- Одноплатные компьютеры
- ↳ Rapsberry Pi
- ↳ Orange Pi
- ↳ Banana Pi
- Умный Дом
- ↳ Проекты
- ↳ Умная Дача
- ↳ Home Assistant
- ↳ MajorDoMo
- ↳ OpenHAB
- ↳ ioBroker
- ↳ Облачные сервисы
- ↳ LoRa
- ↳ Общая информация и вопросы
- ↳ Проекты
- Объявления
- ↳ Доска объявлений
- ↳ Прием заказов
- ↳ Коллективные покупки
- Другие визуальные среды программирования
- ↳ Node-Red
- ↳ Примеры
- ↳ Настройки
- ↳ Общие вопросы
- ↳ HiAsm
- ↳ Примеры
- ↳ Настройки
- ↳ Общие вопросы
- ↳ LabVIEW
- ЧПУ
- ↳ Станок на ATmega 2560 с шилдом
- ↳ Проекты
- ↳ ЧПУ + FLProg
- ↳ Общие вопросы...
- Android
- ↳ Визуальное программирование в App Inventor
- ↳ Программы
- ↳ Денежные переводы
- ↳ Обсуждение программы FLProg (Не багтрекер, и не хотелки. Делимся опытом!!)
- ↳ Встроенные блоки
- ↳ Интерфейс программы
- ↳ Установка и работа FLProg на разных ОС
- ↳ FLProg и Arduino IDE
- ↳ Помощь и справочная информация
- ↳ Сторонняя SCADA для Ардуино
- ↳ Прочие вопросы
- ↳ Баг - Трекер
- ↳ Новые
- ↳ Принятые
- ↳ В работе
- ↳ Выполненно
- ↳ Отложенно (временно не возможно)
- ↳ Не принятые
- ↳ Архивы
- ↳ Архив (Версия 2.1)
- ↳ Архив (Версия 1.15)
- ↳ Архив (Версия 1.14)
- ↳ Архив (Версия 1.12)
- ↳ Архив (Версия 1.11.1)
- ↳ Архив версия 1.11
- ↳ Архив (Версия 1.10.4)
- ↳ Архив (Версия 1.10.3)
- ↳ Архив (Версия 1.10.2)
- ↳ Архив (Версия 1.10.1)
- ↳ Архив (Версия 1.10.4)
- ↳ Архив (Версия 1.10.3)
- ↳ Архив (Версия 1.10.2)
- ↳ Новый функционал
- ↳ Новые
- ↳ Принято
- ↳ В работе
- ↳ Выполненно
- ↳ Отложенно (временно не возможно)
- ↳ Не принято
- Самые интересные и популярные темы (эксперимент)
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя