Views: 6358
Музыкальная тема к статье, слушаем:
Настало время познакомиться c ESP32 и для меня, для этого я приобрел в ГАММЕ отладочную плату с модулем ESP-WROOM-32 (ESP32-DevKitC).
Первая задача, как он подключается, ну сразу втыкаем в USB, соединитель вроде как имеется, ну чего бы не воткнуть. CP2102 великолепный мост подключается легко к Windows. Горит светик на плате, типа все ок.
Что сразу беспокоит, какая версия залита, как её проверить и как обновить модуль. Если по ангиологии с ESP8266, то ничего не получилось. Потом порылся в инете и нашел следующие открытия ESP32 имеет уже 2 ком порта, первый порт выведен (на этой плате) на CP2102 и предназначен для обновления прошивки. Второй порт выведен на “ноги” 16 и 17 на плате. Этот порт предназначен для работы с AT командами.
Для полноценного тестирования необходимо для начала подключить плату к имеющемуся порту, ко второму порту надо будет подключить еще один преобразователь. Подключение надо выполнить следующим образом:
SP32-DevKitC | Дополнительный адаптер | Примечание |
GND | GND | общий (земля) |
17 (TXD) | RXD | Передача данных с модуля |
16 (RXD) | TXD | Прием данных с ПК |
Модуль с подключенным к нему вторым адаптером для работы с AT – командами.
Собрав схему нам потребуется программа Flash Download Tools (ESP8266 & ESP32) для прошивки модуля, загрузить её можно с сайта производителя здесь. На момент тестирования была версия V3.6.5.
Последнюю прошивку для модуля можно скачать здесь. На момент написания статьи версия была V1.1.2.
Для работы с компортом рекомендую программу c сайта http://www.cmsoft.cn, там конечно ничего не понятно, но хром и гугл-транслятор вам в помощь. Они сделали две программы NetAssist и UartAssist вещи просто не заменимы для работы с компортом и для тестирования модулей для работы в сети. Эти программы разработчик постоянно поддерживает. В последних добавлена значительно удобная панель для работы предустановленными последовательностями, а также калькулятор CRC.
Когда скачаны все необходимы программы и обновления прошивки, необходимо для начала разобраться что необходимо загружать в модуль для обновления. После скачивания прошивки мы получим файл ESP32-WROOM-32_AT_V1.1.2.zip. Разархивируем его в папку, мы получим:
Нас интересует папка ESP32-WROOM-32_AT_V1.1.2 заходим внутрь, там еще одна пака ESP32-WROOM-32_AT_V1.1.2 заходим в неё и там куча всего. Есть два варианта как обновить прошивку сложный и простой. Сложный это собрать прошивку из файлов расположенных по разным адресам, адреса записаны в файле download.config. Но нам напрягаться нельзя! Поэтому выбираем простой метод берем файл factory.bin это полная копия прошивки с учетом флэшки в 32 Мбита.
Запустим программу Flash Download Tools
Выберем инструменты загрузки ESP32
У нас откроется панель инструментов, подключим нашу демоплату, как описано выше и выберем компорт, с который связан с USB-мост на плате (у меня это COM6). Скорость как и для ESP8266 устанавливаем максимальную 11152000 (1,2 Мбит). У ESP в бутлоадере используется автобанд, определитель скорости, а сама программа использует последовательности для настройки скорости. Чем выше скорость тем быстрее перепрошивка модуля.
Проверим соединение с модулем, нажмем клавишу START, если связь установлена корректно, то будут прочитаны параметры модуля
Теперь нам необходимо указать место где находиться наш файл factory.bin. Нажмет
Выберем файл.
Адрес загрузки укажем 0x00.
Не забудьте поставить птичку.
Теперь жмем кнопку START и ждем секунд 30, перепрошиваются все 32 Мб. По окончании процесса, вы увидите сообщение FINISH
Процесс перепрошивки можно конечно ускорить, если прошивать, только “необходимые места”. Это конечно вариант для любителей, но он делается так. Необходимо отдельно загрузить и указать адреса, начала загрузки, для каждого файла, смотри таблицу ниже:
ESP32 | |
Адрес | Файл |
0x1000 | bootloader/bootloader.bin |
0x20000 | at_customize.bin |
0x21000 | customized_partitions/ble_data.bin |
0x24000 | customized_partitions/server_cert.bin |
0x26000 | customized_partitions/server_key.bin |
0x28000 | customized_partitions/server_ca.bin |
0x2a000 | customized_partitions/client_cert.bin |
0x2c000 | customized_partitions/client_key.bin |
0x2e000 | customized_partitions/client_ca.bin |
0xf000 | phy_init_data.bin |
0x100000 | esp-at.bin |
0x8000 | partitions_at.bin |
Картинка должна быть где то такая, слева файл, справа адрес.
Нажмем START для программирования, в этом случае время перепрошивки занимает не более 10 секунд!!!
Проверка работоспособности! Для этого загрузим программу UartAssist.exe. Выберем тот же порт который использовался для программирования, скорость 115200 и нажмем кнопку OPEN, это необходимо для перезапуск прошивки в “горячем состоянии”.
ESP32 выбросит в компорт все свои параметры:
Отсоединимся от компорта, нажмем кнопку CLOSE. И выберем порт который подключен к нашему второму USB-мосту, (у меня это COM9).
Нажмем кнопку OPEN, введем AT-команду AT+GMR и получит сообщение о текущей версии прошивки:
AT+GMR AT version:1.1.2.0(f045c0c - Aug 30 2018 04:20:47) SDK version:v3.0.3 compile time:Sep 4 2018 08:53:40 Bin version(Wroom32):1.1.2 OK
Прошивка модуля обновлена!!
У меня часто используемые команды уже прописаны в Shorcut программы UartAssist.
Считаю для первого знакомства достаточно! Удачи!
Это может быть интересно
- Униполярный шаговый двигатель – часть 2Views: 797 В этой части только итог и версия 2.0 универсальной, которая позволяет управлять шаговым двигателем во всех трех режимах и 3.0 специальной библиотеки только для одного полушагового режима. В …
- Проект с использованием MCC часть 11Views: 825 Можно несколько облагородить программу вынести наши процедуры обработки нажатия кнопок в отдельные функции. Но вы должны понимать, что это хоть и не значительно, но будет тормозить общую скорость …
- PIC18 – модуль DMAViews: 1155 Введение Модуль прямого доступа к памяти (DMA) предназначен для обслуживания передачи данных непосредственно между различными областями памяти без вмешательства процессора. Исключив при этом необходимость в интенсивной обработки …
- Мультизоновый индикатор-терморегулятор ch-c3010Views: 1154 Часто возникает необходимость получить информацию по температуре с множества точек контроля. Вам необходимо знать температуру в комнате, в коридоре, температуру на улице, а в погребе (или на балконе) …
- MCC – K42 – настройка модуля DMAViews: 738 MCC – в версии v.3.95.0 и начиная ядра 4.85.0 конфигуратор предоставляет графический интерфейс для настройки модуля DMA. Для начала: Посмотреть какая версия МСС можно в закладке версии, если …
- LED модуль P10C4V12Views: 3071 LED панели на обычных регистрах типа 74HC595. Они выпускаются как монохромные так двух и полно цветные, особенность, что они предназначены для текстовой информации и имеют один уровень яркости. Общую яркость …
- The art of DJViews: 85 The art of DJ. The art of DJ has gained wide popularity. Today, a DJ is not just someone whose task is to mix tracks; a DJ is …
- Trimax – кодирование и декодирование ИК-командViews: 2149 Первое, что надо понять назначение кнопок клавиш пульта, а также, что за кодирование реализовано в ИК- пульте. Для назначения клавиш обратимся к описанию, а для взлома кодирования воспользуемся …
- Самый простой диммер для светодиодного освещенияViews: 2976 Светодиоды все больше входят в нашу жизнь как источники освещения и как само собой разумеющееся, это вопрос регулировки яркости. Существует множество схемных решений, но в нашем варианте мы …
- Самый простой индикатор уровня звукового сигналаViews: 6216 Демонстрационный проект создания индикаторов уровня с использованием WS2812B. Изучив этот проект вы сможете самостоятельно изготавливать и конструировать свои индикаторы уровня звукового сигнала. Дополнительно читайте статью Бегущие огни на …
Комментарии