Цена:
WiFi Контроллер Wemos D1 Mini Lite на чипе беспроводной связи ESP8266EX
Одновременно с выходом в недалёком 2014 году чипа беспроводной связи ESP8266EX по стандарту WiFi, набравшего по-настоящему оглушительную популярность в кругу любителей собирать самодельные устройства, компания WEMOS Electronics представила общественности большую линейку собственных модульных электронных плат под торговой маркой WeMos, задав новый вектор развития ардуино-совместимых платформ. Взяв за основу микроконтроллер от компании Espressif Systems, разработчики значительно потрудились не только над уменьшением размеров базовых модулей, сделав их максимально компактными, но и над выпуском целого спектра расширений, предложив пользователям богатый функционал, способный помочь в реализации задач различного уровня сложности при проектировании и конструировании разнообразных полезных изобретений.
Современные электронные продукты WeMos входят в категорию эффективных низкоценовых решений и позиционируются создателями как открытая платформа для самостоятельной разработки многоцелевых устройств на основе беспроводной связи по технологии WiFi. При этом основной упор сделан на создание и развитие изделий с поддержкой сетей нового поколения "Интернет вещей" (англ. - Internet of Things, IoT), чему активно способствуют существующие возможности облачных вычислений и межмашинных взаимодействий.
Чтобы потребитель не смог запутаться в физической совместимости плат, каждая серия обладает своими отличительными особенностями. Например, серия WeMos D1 Mini, к которому принадлежит Модуль Lite с контроллером WiFi на чипе ESP8266EX, имеет синий цвет поверхности текстолита и небольшой скруглённый угловой вырез рядом с маркировкой 3V3. Вырез служит ориентиром, гарантирующим правильное совмещение нескольких плат между собой.
Технические характеристики
Маленькая с виду, плата WeMos D1 Mini Lite обладает внушительными возможностями, предлагая начинающим энтузиастам-радиолюбителям или профессиональным разработчикам возможность в создании собственных проектов практически "с нуля". Микроконтроллерная платформа WeMos вполне способна стать полноценной заменой неустаревающей Ардуино, при этом она намного превышает свой прямой аналог в производительности и функциональности. Мощный 32-битный процессор позволяет выполнять вычисления или обработку данных на порядок быстрее, а способность общаться с другими электронными устройствами при помощи беспроводной связи WiFi открывает необъятный простор в разработке и проектировании простых или сложных умных устройств.
Платформа WeMos — модульная платформа, позволяющая пользователю конструировать схемы, "заточенные" под определённые задачи. Она поддерживает немалый набор совместимых расширений из OLED-дисплеев, переключателей, датчиков температуры, давления и освещения, светодиодов и контроллеров сервомоторов, которые можно компоновать по своему усмотрению, располагая их друг над другом.
NodeMCU или WeMos D1 Mini?
Слово "mini" в названии появилось не спроста. Наряду с возможностью работать на стандартных прошивках Non-OS от компании Espressif Systems, поддерживающих удобный способ управления связью через АТ команды, микросхема ESP8266EX отлично понимает прошивки на MicroPhyton. В отличии от оригинальных полноразмерых плат с поддержкой NodeMCU, модули Wemos D1 mini немногим менее функциональны за счёт уменьшения количества доступных выводов с неприпаянными штырьевыми ножками. Приставка "мини" символично характеризует самое компактное решение, размер которого ориентирована на максимальную экономию занимаемого контроллером пространства.
Первое подключение, порт USB
Организация связи и программирование микросхемы ESP8266 реализовано по главной шине интерфейса UART. Для того, чтобы WeMos D1 Mini Lite научился понимать сигналы, приходящие в порт USB от компьютера, в схеме модуля интегрирован преобразователь сигналов USB-TTL на микросхеме CH340G. При первом включении, операционная система ПК скорее всего не сможет его обнаружить, если соответствующий драйвер заведомо не был установлен. Установите драйвер CH340, затем подключите плату кабелем USB к ПК. Контроллер WeMos D1 Mini Lite готов к работе.
Питание WeMos D1 Mini
Подать питание микроконтроллеру WeMos D1 Mini Lite возможно двумя способами:
Микросхема регулятора ME6211 пропускает через себя ток, не превышающий 500 миллиампер. С целью его защиты, в модуле установлен полимерный самовосстанавливающийся предохранитель. Контроллер ESP8266EX Lite потребляет в пике до 300 миллиампер, ввиду чего на подключение дополнительных расширений или датчиков остаётся всего около 200 миллиампер.
Крайне не рекомендуется запитывать WeMos D1 Mini Lite через вывод 3V3. Входящее напряжение будет поступать на чип ESP8266 напрямую, минуя все защиты от перенапряжения и короткого замыкания.
Программирование ESP8266 D1 Mini Lite в среде Arduino IDE
Начните знакомство с платформой с самого простого. В качестве первого примера, раскрывающий базовые методы программирования, изучите работу простейшего скетча, заставляющего плату с ESP8266 мигать встроенными светодиодами. Нижеприведённый текст программы не просто зажигает и гасит светодиод, а делает это с наибольшей плавностью.
// определяем встроенный светодиод
const int ledPin = BUILTIN_LED;
// переменная яркости светодиода (0 = максимально яркий,
// 512 = половина яркости, 1023 = полностью погашен)
int brightness = 0;
// переменная с шагом затухания/зажигания
int fadeAmount = 5;
// небольшой интервал в каждом цикле
const int delayMillis = 10;
void setup() {
// инициализируев светодиод на вывод
pinMode(ledPin, OUTPUT);
}
void loop() {
// устанавливаем яркость светодиода
analogWrite(ledPin, brightness);
// добавляем/уменьшаем яркость для следующего цикла
brightness = brightness + fadeAmount;
// сверяем предел яркости (10-бит, значения 0-1023)
if (brightness < 0) brightness = 0;
if (brightness > 1023) brightness = 1023;
// если предел достигнут, изменяем направление между затуханием/зажиганием
if (brightness == 0 || brightness == 1023) {
fadeAmount = -fadeAmount;
}
// пауза, чтобы можно было рассмотреть уровень яркости
delay(delayMillis);
}
Внутренняя память WeMos D1 Mini Lite, файловая система SPIFFS
Модуль WeMos D1 Mini Lite отличается от своих "старших собратьев" чипом памяти, размер которой составляет 1 Мегабайт (8 Мегабит). Представленного размера часто достаточно для размещения кода несложного приложения и, если возникает необходимость, то и создания упрощённой файловой системы SPIFFS. С установленной библиотекой ESP8266 в среде Ардуино ИДЕ, распределение доступного размера памяти модуля под хранение скетча и под область SPIFFS определяется настройками параметров программного деления на слои. В процессе записи новой прошивки, пользователь самостоятельно выбирает необходимость наличия файловой системы и её размер из предложенных вариантов. В области SPIFFS можно хранить данные скетча, файлы конфигурации или содержимое простейшего веб-сервера.
В большинстве случаев, скетчи умещаются в памяти без труда. Если речь заходит о написании и выполнении объёмного текста кода, пользователь может попробовать сэкономить память, воспользовавшись модифицированной прошивкой NodeMCU с интерпретатором языка Lua (основанной на NONOS-SDK), изменив её состав при помощи наборов разработчика NodeMCU SDK путём исключения или добавления поддержки определённых функций разрабатываемого проекта. Учитывая, что все исполняемые файлы программ на языке Lua хранятся в области SPIFFS, обновление прошивки модуля на ПО NodeMCU несколько по иному распределяет память, формируя файловую систему из оставшегося свободного пространства, не занятого самой прошивкой.
Структура файловой системы имеет небольшой ряд ограничений из-за конструктивных особенностей чипа памяти. Она не поддерживает разбитие на внутренние разделы и не работает с папками, храня файлы в виде списка. Максимальный размер имени файла не должен превышать 32 символа, включая специальный символ, отведённый под окончание строки.
Перенести файлы в систему SPIFFS можно как из популярной среды программирования Arduino IDE, так и с помощью широко известного в ESP-сообществе java-редактора ESPlorer. По умолчанию, ни одной подобной функции в Ардуино ИДЕ не предусмотрено, и пользователю придётся установить необходимое небольшое дополнение за несколько шагов.
Загрузите скетч, демонстрирующего сводные данные о файловой системе и содержащихся в ней файлах. Скетч выполняется один раз после перезапуска платы и выводит информацию в последовательный порт. Пример выполнения (взято из демонстрации ПО для версии с 4МБайт памяти):
Поменяйте в тексте программы и в настройках монитора последовательного порта скорость на 74800 бод, чтобы загрузочная информация ESP8266 стала читаемой (первая строка на картинке).
Распиновка WeMos D1 Mini Lite (Диаграмма выводов, WeMos D1 Mini Lite подключение)
Модуль WeMos D1 Mini Lite обладает цифровыми выводами (физические контакты 3-7, 11-16) общего назначения, работающими с логикой напряжений "1" и "0". Под единицей подразумевается входящее/исходящее напряжение +0.75*Vin—3.6 вольта, называемое высоким сигналом. Под нулём - входящее/исходящее напряжение -0.3—0.25*Vin вольт, называемое низким сигналом. Некоторые выводы имеют встроенный подтягивающий или стягивающий резисторы (например, D3 и D4 подтянуты к плюсу, D8 стянут на минус). Большинство контактов могут быть смультиплексированы с различными интерфейсами (I2C, I2S, 1-Wire, UART, PWM). Рекомендуемый ток отдельного вывода составляет 6 миллиампер, предельный ток - 12 миллиампер.
Примечание! Избегайте превышение значений максимального тока более 12 миллиампер и напряжения более 3.3 вольта, способного повредить микроконтроллер.
Обозначение контактов на плате WeMos D1 Mini Lite значительно разнится от привычной маркировки выводов GPIO в модулях с ESP8266. Постоянно помнить их соответствие затруднительно, куда удобнее обращаться к выводам по их оригинальному названию при написании скетчей в Arduino IDE. Вспомогательная библиотека, входящая в состав пакета поддержки ESP8266, содержит все переназначаемые определения GPIO в соответствии с платформой NodeMCU.
Специальные функции
Все цифровые контакты ввода/вывода, за исключением GPIO16, поддерживают обработку прерываний.
Режимы энергосбережения ESP8266EX
За исключением стандартных режимов полного функционирования и выключенного состояния, модуль WeMos D1 Mini Lite поддерживает энергосберегающие режимы, предназначенные для каждого определённого случая.
Обновление прошивки на NodeMCU Lua, WeMos D1 mini Lite прошивка
Микроконтроллер D1 Mini WeMos Lite полностью поддерживает работу на прошивке, включающей в себя интерпретатор NodeMCU скриптового языка Lua, выполняющего команды наподобие АТ инструкций. Загрузка новой прошивки в память ESP8266 выполняется через порт USB или по воздуху. Причём загружаемая прошивка может быть как оригинальной, так и модифицированной с применением инструментов разработки ПО (SDK). Либо вообще быть написанной самостоятельно на языке С/С++.
Для внесения прошивки в контроллер WeMos D1 Mini, воспользуйтесь утилитой esptool-ck. Исходный код прошивки NodeMCU доступен в репозитории GitHub.
В качестве альтернативного варианта, подойдёт хорошо известная программа Node MCU Flasher для Windows. Последняя версия доступна для загрузки из репозитория GitHub. Процесс записи предварительно скомпилированного файла (формат .bin) прошивки прост, состоит из нескольких шагов и не занимает много времени.
Перед записью прошивки, крайне рекомендуется полная очистка флешь-памяти. Чаще всего, после обновления, прошивка работает без нареканий. Если предварительно не производить чистку памяти, можно столкнуться с ситуацией, когда заново загруженная версия NodeMCU не совпадёт с предыдущей версией прошивки, вследствие чего плата попросту не запуститься в нормальном режиме. В таком случае, от пользователя потребуется запись отдельного файла инициализации модуля "esp_init_data_default.bin" из той версии SDK, на которой выполнялась сборка прошивки.
Программа Node MCU Flasher умеет записывать в память не только прошивки NodeMCU, но и оригинальные или кастомные прошивки с поддержкой АТ команд на основе существующих комплектов инструментов разработки (SDK) от компании-производителя Espressif System, выпускающей контроллеры ESP.
Программирование ESP8266 D1 Mini в среде ESPlorer
Откройте редактор ESPlorer, в правой верхней части окна терминала укажите COM-порт (#1), к которому подключен WeMos D1 Mini Lite. Затем, установите скорость 115200 бод (#2) и откройте порт для установления связи с платой (#3). После выполнения ручного сброса контроллера (#4), ESP8266 выдаст загрузочную информацию о версии прошивки (#5) и включится в рабочий режим.
Написанная на языке Lua, программа может состоять из двух и более частей исполняемого кода, но всегда должна начинаться с файла инициализации. В левой части окна напишите простую команду (#6), сохраните её в файле с именем "init.lua" (#7) и прошейте в память кнопкой Save to ESP (#8). Результат выполнения сразу же отобразится в окне терминала (#9). Получить информацию о размере файловой системы, свободном и занятом пространстве (#10), а также списке файлов с кодом .lua в памяти (#11), позволит кнопка Reload (#12).
Добавление платформы WeMos в Ардуино ИДЕ
Запустите редактор Ардуино, перейдите в пункт "Настройки" из меню "Файл". В строке "Дополнительные ссылки для менеджера плат" введите адрес:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Закройте окно и перейдите в "Менеджер плат", двигаясь по меню "Инструменты".
Для быстрого нахождения нужного дополнения, в строке поиска укажите esp8266. Нажмите "Установить" и дождитесь надписи Installed, означающей завершение процесса.
Все платформы, входящие в состав пакета установки, стали доступны для программирования, включая LOLIN (WEMOS) D1 R2 & mini, который следует выбрать.
Техническая информация
Полезные ссылки
г. Москва, Пятницкое ш. д. 18, пав. 566
zakaz@compacttool.ru
8-495-752-55-22
Информация представленная на данном информационном ресурсе преследует исключительно рекламные цели и не является договором-офертой !
© Все права защищены 2015 - 2024г https://compacttool.ru