WiFi-реле Arduino UNO + ESP8266 от LC Technology
У меня есть Arduino Uno, и недавно я приобрел WiFi-реле ESP8266 от LC Technology. Я пытался найти информацию об этом в сети, но все ответы/предложенные решения мне не помогли. Позвольте мне кратко объяснить проблему.
Я подключил этот модуль к Arduino очень простым способом:
- TX -> контакт 7
- RX -> контакт 6
- 5В -> ВХ+
- ЗЕМЛЯ -> ВХОД -
Простой код:
#include "Arduino.h"
#include <SoftwareSerial.h>
#define TxPin 7
#define RxPin 6
SoftwareSerial ESPrelay(RxPin, TxPin);
void setup() {
Serial.begin(9600);
ESPrelay.begin(9600);
readRx();
ESPrelay.println("AT");
readRx();
}
void loop() {
Serial.println(ESPrelay.read());
// this above is constant -1
}
void readRx() {
String msg = "";
while (ESPrelay.available()) {
char rxByte = ESPrelay.read();
msg += rxByte;
}
Serial.println(msg);
delay(500);
}
Я вижу точку доступа Wi-Fi, созданную модулем, поэтому думаю, что сам модуль работает нормально — связь между Arduino и модулем несколько нарушена.
Я попробовал все разные AT-команды, но ни одна из них, похоже, не дала эффекта (пробовал переключать режимы и подключаться к домашнему WiFI, но безуспешно), а также никакого ответа. Может ли кто-нибудь попытаться помочь мне решить эту проблему?
Я пробовал менять 9600 на 115200 при общении, но и тут не получилось.
@pagenoare, 👍0
Обсуждение1 ответ
Лучший ответ:
Последовательное соединение требует подключения контакта передачи TX к контакту приема RX. Последовательные контакты вашего программного обеспечения — это контакт 6 RX и контакт 7 TX. Таким образом, ваша проводка должна быть такой: esp8266 TX к контакту 6 Uno и esp8266 RX к контакту 7 Uno.
Подключите питание 5 В и заземление к контактному разъему, а не к винтовым клеммам. Клеммы IN предназначены для питания катушки реле.
Вызов read readRx() в цикле(). Добавьте задержку перед отправкой «AT» в настройках, чтобы дать esp8266 время загрузиться.
- Как заставить 5-вольтовое реле работать с NodeMCU
- Esp8266 Vin контакт
- Правильный PIN для активации беспроводного реле с ESP8266 ESP-01
- Управление реле 5В с помощью Wemos D1 R1
- NodeMCU продолжает отключаться
- Управление 5В от ESP8266 Wemos D1 mini
- Реле с активным низким уровнем и контакты ESP8266 GPIO
- ESP8266 отключается через несколько часов
Вы удалили ESP-01 из платы реле?, @Juraj
Нет, я не..., @pagenoare
и как ты его тогда подключил?, @Juraj
https://imgur.com/a/xoNjI62 - слева: 1) IN+ -> 5V 2) IN- -> GND 3) RXD -> контакт 6 4) TXD -> контакт 7, @pagenoare
подключайте все к контактному разъему, а не к винтовым клеммам. клеммы IN предназначены для питания катушки реле., @Juraj
Я сейчас сделал, и ничего не изменилось. По-прежнему 0 ответов на команды AT и AT+RST., @pagenoare
вам следует подключить RX к TX. Передача на 6 и прием на 7, @Juraj
так наоборот, чем то, что у меня было? Извините, немного запутался. Я попробовал подключить его наоборот, но все равно ничего... Готовы ли вы зайти в чат Discord? Может быть проще/быстрее общаться..., @pagenoare
вызовите read readRx в цикле(). добавьте задержку перед отправкой «AT» в настройке, чтобы дать esp8266 время для загрузки, @Juraj
Раньше у меня было настроено 115200, поэтому я ничего не видел. Сменил обратно на 9600 и вижу ответ от модуля!, @pagenoare