Обновить ESP до espduino с помощью flash NodeMCU
Я использую Cactus Micro Rev2 и пытаюсь общаться с ESP через Mega32U4. Я думаю, мне нужно обновить до espduino, чтобы иметь возможность программировать ESP-сторону.
И я не знаю текущей версии прошивки ESP. Я попробовал обновить прошивку (https://github.com/AprilBrother/espduino/tree/master/esp8266/release) через esptool, но это дало ошибку подключения. И я не могу стереть прошивку, она все равно выдает ошибку. На этот раз я попробовал через мигалку NodeMCU:
Скриншот:
Это удается. Но когда я загрузил базовый скетч последовательной связи на ESP и сторону Mega32U4, я все еще не получил ответа.
Скетч стороны ESP:
{
Serial1.begin(115200);
}
void loop()
{
Serial1.println(“Hello”);
delay(1000);
}
Боковой скетч MEGA32U4:
String character = Serial1.readString();
Serial.println(character);
}
Поверьте мне, я точно не знаю, где я ошибся. Я написал более подробно, но меня попросили задать один вопрос. Короче говоря, как именно я могу обновить espduino с помощью мигалки NodeMCU?
@samedbll, 👍2
2 ответа
Лучший ответ:
Плата Cactus Micro Rev2 оснащена ATmega32U4 с загрузчиком LiliPad в качестве основного микроконтроллера и esp8266 в качестве адаптера Wi-Fi.
UART esp8266 подключен к 32u4 Serial1. Последовательный на 32u4 подключен к компьютеру через USB.
Для подключения esp8266 к компьютеру вы можете использовать скетч SerialPassthrough из раздела "Связь" базовых примеров Arduino IDE в меню "Файл".
Производитель платы сделал скетч для ATmega32U4, который устанавливает esp8266 в режим загрузчика и соединяет esp8266 с USB.
Скетч esp8266Programmer.ino в основном представляет собой сквозной скетч Serialpas со сбросом esp8266 в режим загрузчика в программе установки().
Выберите "Arduino LiliPad USB" в Arduino IDE и загрузите скетч esp8266Programmer.ino в 32u4.
С помощью программы esp8266.ino в 32u4 вы можете загрузить в esp8266 с помощью Arduino IDE или esptool.py.
Если вы хотите взаимодействовать с приложением (прошивкой или скетчем) в esp8266, используйте скетч SerialPassthrough из примеров Arduino IDE (поскольку скетч программы esp8266 всегда устанавливает esp8266 в режим загрузчика).
Для успешной загрузки из IDE или esptool.py по скетчу программы esp8266 сброс перед загрузкой должен быть подавлен. В IDE это опция "Метод сброса" (выберите no_dtr
), для esptool.py это параметр --before no_reset
.
На борту есть esp-03. Сначала мы загрузили esp8266programmer.ino
, а затем загрузили скетч esp из IDE. Наши настройки esp должны быть такими:
Размер flash: "1 МБ (нет OTA)
Режим flash: "DIO"
Метод сброса: "нет dtr (он же ck)"
Мы загрузили наш скетч. Скетч Atmega должен содержать следующие две строки кода в функции setup ()
:
digitalWrite(program_pin, HIGH); //Set GPIO to boot into programming mode
digitalWrite(enable_pin, HIGH); //Enable ESP-03 module
Скорость последовательной передачи данных должна быть меньше 74880. Таким образом, проблема будет решена. Спасибо @Juraj за поддержку.
- Загрузка кода Arduino, OTA, через подключенный ESP8266-12E с запущенным Esp-Link
- Проблема с WiFi на Mega + WiFi R3 ATmega2560 + ESP8266
- Последовательная связь arduino mega и D1 Wemos Mini
- ESP8266 отправляет веб-страницу клиенту, но html-коды отображаются в браузере вместо веб-страницы
- Ошибка ESP8266 error: espcomm_upload_mem failed while uploading sketch
- Какой максимальный размер статического документа Json в Arduino JSON?
- esp8266 esp-01 печатает значения мусора на последовательном мониторе
- Ошибка тайм-аута с Arduino Mega и ESP8266 в качестве модуля Wi-Fi
Давайте [продолжим это обсуждение в чате](https://chat.stackexchange.com/rooms/128207/discussion-between-juraj-and-samedbll)., @Juraj