esp-01 не найден
- Войдите на сайт для отправки комментариев
Вс, 13/05/2018 - 15:33
У меня pro mini не может найти esp-01.
Подключил esp-01 к отдельному питанию, ардуину к usb_to_ttl, связал питание и ttl по земле, подключил esp-01 во 2 и 3 порты, ардуину к ttl по rx-tx (0 и 1 порты), чтобы видеть терминал.
В терминал при попытке отправить команду на esp-01 пишет "-1".
Вот как отправляю:
#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3); // RX, TX
void setup() {
mySerial.begin(9600);
mySerial.println("AT+RST");
Serial.println(mySerial.read());
}
Отдельно esp-01 подключал к ttl для проверки работоспособности - она команды принимает, отвечает.
Ниже схема, которой пользовался для подключения (у меня без датчика темпераруты и не uno, а pro mini):
1. Вы проверяли его точно на 9600? У меня они из коробки с 115200 шли (в этом случае софт-сериал не тянет).
2. Почему не преобразовываете уровни?
3. Свободные пины модуля у Вас так и висят в воздухе?
1. Угу. Проверял на 9600. Я ещё ему сделал: AT+UART_DEF=9600,8,1,0,0$0D$0A
2. У меня ардуина 3.3в, блок питания и ttl тоже 3.3в.
3. Так и висят. Я ещё пробовал подключать CH_PD к питанию - ничего не изменилось.
Подключил ttl rx-tx к 2 и 3 порту ардуины. В терминал команды выводит.
PS: посмотрел ответ esp-01: на команду AT+RST даёт ответ:
А если читать и разбирать по мере поступления символов?
Я решил вопрос через mySerial.setTimeout(3000);
У меня сейчас проблема с AT+CIPSEND. Или выдаёт "busy p..." или пишет "OK", но ответ от сервера не возвращает и сервер сообщения реально не получает. Пробую заставить работать на "GET / HTTP/1.1\r\nHost: google.com\r\n\r\n".
PS: решил вопрос с "busy p...". Но не понял как. Играл с делеями, вроде подобрал какой надо. Но мне кажется, что ранее я то же самое делал, но не помогало.