Как сбросить настройки модуля Wi-Fi ESP8266
Я запрограммировал ESP8266
, чтобы сделать его доступным по сети, используя следующую программу.
Первая программа
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
//SSID и пароль Wi-Fi-роутера
const char* ssid = "Moto";
const char* password = "reset1234";
ESP8266WebServer server(80);
void setup() {
Serial.begin(9600);
WiFi.begin(ssid, password); //Подключитесь к вашему WiFi-роутеру
Serial.println("");
// Ожидание соединения
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
//Если соединение успешно, покажите IP-адрес в последовательном мониторе
Serial.println("");
Serial.print("Connected to ");
Serial.println(ssid);
Serial.print("IP address: ");
Serial.println(WiFi.localIP()); //IP-адрес, назначенный вашему ESP
server.begin(); //Запустить сервер
Serial.println("HTTP server started");
}
void loop() {
server.handleClient(); //Обработка клиентских запросов
}
Работает нормально. Как сбросить настройки, чтобы запустить программу ниже? Я хотел отправить AT-команды на последовательный монитор, используя программу ниже, которая была успешно загружена, но не отвечает на AT-команды на последовательном мониторе, так как ESP8266 запускает программу выше и показывает вывод программы выше при запуске программы ниже на последовательном мониторе.
Я хочу сбросить ESP8266, чтобы он реагировал на следующую программу. Как это сделать?
Connected to Moto
IP address: 192.168.43.115
HTTP server started
ВтораяПрограмма
#include "SoftwareSerial.h"
SoftwareSerial esp8266(2, 3); // RX, TX
void setup()
{
Serial.begin(9600); // последовательный порт, используемый для отладки
esp8266.begin(9600); // скорость передачи данных вашего ESP может отличаться
}
void loop()
{
if(esp8266.available()) // проверяем, отправляет ли ESP сообщение
{
while(esp8266.available())
{
char c = esp8266.read(); // прочитать следующий символ.
Serial.write(c); // записывает данные в последовательный монитор
}
}
if(Serial.available())
{
delay(10); // ждем, пока все входные команды будут в последовательном буфере
Serial.write("Hello");
// прочитать входную команду в строке
String cmd = "";
while(Serial.available())
{
cmd += (char)Serial.read();
}
// отправить на esp8266
esp8266.println(cmd);
}
}
@N Sharma, 👍2
2 ответа
Лучший ответ:
Вам необходимо переустановить прошивку AI Thinker AT.
Вот как это сделать: Как прошить ESP8266 обновление прошивки ESP-01 AI thinker
В прошлый раз я использовал программу esptool.py и прошивку ai-thinker-0.9.5.2.bin (там есть две версии: стандартная 115200 бод и вариант 9600 бод).
В Linux я затем использовал команду:
foo@bar:~$ ./esptool.py --port /dev/ttyUSB0 --baud 57600 write_flash 0 ai-thinker-0.9.5.2.bin
Connecting....
Detecting chip type... ESP8266
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 512KB
Flash params set to 0x0000
Compressed 520192 bytes to 165297...
Wrote 520192 bytes (165297 compressed) at 0x00000000 in 29.0 seconds (effective 143.3 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting...
Конечно, это было сделано при GPIO0, удерживаемом в состоянии LOW для режима программирования (на самом деле я использую адаптер с программным переключателем, который управляет GPIO0), а для других операционных систем вам нужно будет изменить имя порта соответствующим образом (COM3:
, /dev/cu.usbmodem4873
и т. д.).
//сброс настроек - в случае возникновения проблем просто введите свой код
//wifiManager.resetSettings();
Это все, что вам нужно
Если бы вы правильно отформатировали свой код, ваш ответ, возможно, имел бы больше смысла., @Greenonline
ESP.restart(); //готово, @Mahdi Safarmohammadloo
- AT-команда не отвечает на последовательный монитор
- Отправка данных Arduino в MySQL с помощью phpMyAdmin и XAMPP на Windows10
- Arduino выводит значения мусора на serial monitor с ESP8266
- ошибка: espcomm_upload_mem failed при загрузке скетча
- фатальная ошибка ESP8266WiFi.h: Такого файла или каталога нет
- Как подключить Wi-Fi Shield ESP-12E-ESP8266-UART-WIFI-Wireless-Shield к Arduino
- Получить данные с сайта с помощью ESP8266 с помощью AT-команд
- Захват изображений с OV7670 (без FIFO) с использованием Arduino Uno?
Комментарии не предназначены для расширенного обсуждения; эта беседа была [перенесена в чат](http://chat.stackexchange.com/rooms/58695/discussion-on-answer-by-majenko-how-to-reset-esp8266-wifi-module)., @Nick Gammon
Комментарии недолговечны. Длинные объяснения следует объединять с ответом (включая графику), а не оставлять в комментариях., @Nick Gammon