• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Нужна помощь Проблемы с АТ-командами

espilya

New member
Всем привет, заказал esp8266-01 подключил к ардуино нано как указано тут, с 5В от ардуино сделал 3.3В и запитал esp-01, появляется точка доступа вай-фай, далее соединил как на картинке. Через CoolTerm нашел скорость (115200) что-бы в конце говорил "ready". Через тот же CoolTerm попытался отправить команду "AT", написал ее, но вместо нее, я написал какой-то мусор и при отправке получил ответ в виде мусора. Подумал мол прошивка хреновая и решил обновить через XTCOM_UTIL как сказано тут все прошил хорошо но проблема не исчезла.
Вот интересно я что-то делаю не так или esp-01 бракованный? Хотя прошивку нормально загрузил
Проблема в том что не могу получить OK на мой ATCXEMA.png
 

=AK=

New member
Надо соединять Rx к UTXD, а Tx к URXD. То есть, вход приемника - к выходу передатчика. Если выходы передатчиков соединить друг с другом, а входы приемников - тоже друг с другом, то связи не будет.

Если мусор на экране - это скорей всего скорости у UART-ов разные настроены.

После AT надо послать символы CR и LF, это не забываете?
 
Последнее редактирование:

espilya

New member
Надо соединять Rx к UTXD, а Tx к URXD
Подключил, теперь даже мусора нет, вообще пусто на разных скоростях.
Если мусор на экране - это скорей всего скорости у UART-ов разные настроены.
Мусор есть в начале но потом пишет ready. Значить проблема не в этом наверное.
После AT надо послать символы CR и LF, это не забываете?
Можно поподробнее пожалуйста.

Проблема скорее не в этих вещах. Когда я пишу АТ вместо АТ выходить что то типа такого "Aэ" или такого "aф" а если нажму enter то ответ будет error, ничего не ответить или посчитает что enter это новый символ. Крайне редко пишет нормально АТ и получаю ответ OK.
 

Сергей_Ф

Moderator
Команда форума
@espilya рекомендую поставить резестивный делитель на RX у esp до 3.3 в. Или , что лучше, преобразователь уровней.
 

=AK=

New member
Мусор есть в начале но потом пишет ready.
После сброса ESP примерно полсекунды работает на кривой скорости 78.6 кбит, потом перенастрастраивается на 115.2 кбит. Если видите ready - значит связь есть.

Можно поподробнее пожалуйста.
Каждая АТ команда к должна заканчиваться символами CR (код 0х13) и LF (код 0х10). Их еще обозначают \r\n, потому что так они задаются в текстовых строках на языке С.

Многие (но не все) терминальные программы могут настраиваться, чтобы добавлять эти два символа автоматически, как только вы нажали Enter. Ардуновский Serial Monitor это может. А программа, которой вы пользуетесь - неизвестно, может ли. Иногда программа добавляет не два символа, а только один.
 

=AK=

New member
рекомендую поставить резистивный делитель на RX у esp до 3.3 в. Или , что лучше, преобразователь уровней.
Вот это дельный совет, присоединяюсь. 5В сигнал от Ардуины к перегружает вход ESP, нужен хотя бы делитель напряжения. А 3.3В сигнал от ESP к пятивольтовой Ардуине маловат, из-за этого Ардуина может принимать символы с ошбками. Лучше всего - преобразователь уровней.
 

Сергей_Ф

Moderator
Команда форума
А 3.3В сигнал от ESP к пятивольтовой Ардуине маловат,
Что бы решить эту проблему, достаточно запитать Ардуино от 4.5-4.7 вольт. Все будет работать без сбоев.
Но если ТС видит ready, то дело не в Ардуино, имхо.
 
Последнее редактирование:

espilya

New member
Я загрузил видео на ютуб чтобы увидели что показывает программа, заходил я через arduino ide и coolterm:
Подключено все по схемы как в картинке выше, я отсылаю AT или AT+GMR, также я перезагружал иногда CH_PD там видно по строке ready. Не знаете что может быть?
Я вот думаю что может из-за длинного юсб кабеля, но на вряд ли.
Завтра попытаюсь сделать делитель напряжение с резисторами из R1 - 1kO, R2 - 2kO.
 

=AK=

New member
Трудно разобрать чего вы там вводите. Насколько я понял вы там и русскими буквами вводите, и маленькими буквами вместо больших, и команды вводите не целиком, а кусочками, не понимая, что CR+LF по Enter при этом добавляется после каждого такого кусочка. Один раз вроде бы ввели AT и получили ОК в ответ. А все остальное - похоже, просто ваша неряшливость при вводе команд. КулТерм, как я помню, не обеспечивает добавки CR+LF по Enter , поэтому с ним работать не будет.

И со схемой разберитесь. То, что у вас нарисовано в схеме - неверно, у вас там вход со входом соединен, а выход с выходом, так работать не будет. А если работает - значит, соединено не так, как нарисовано в схеме. "ТщательнЕе надо..." (с)
 

espilya

New member
Трудно разобрать чего вы там вводите. Насколько я понял вы там и русскими буквами вводите, и маленькими буквами вместо больших, и команды вводите не целиком, а кусочками, не понимая, что CR+LF по Enter при этом добавляется после каждого такого кусочка. Один раз вроде бы ввели AT и получили ОК в ответ. А все остальное - похоже, просто ваша неряшливость при вводе команд. КулТерм, как я помню, не обеспечивает добавки CR+LF по Enter , поэтому с ним работать не будет.
Да нет, я ввожу как раз таки все хорошо. В этом и проблема что отправляется не то что я ввожу...
Если не верите что я ввожу могу даже сделать вам пруф и снять клавиатуру и потом экран.

И со схемой разберитесь. То, что у вас нарисовано в схеме - неверно, у вас там вход со входом соединен, а выход с выходом, так работать не будет. А если работает - значит, соединено не так, как нарисовано в схеме. "ТщательнЕе надо..." (с)
Если вы про тх и rx то все там правильно на схеме UTXD (esp-01) подключен к TX (ардуино), а RX к URXD. А если подключаю наоборот то вообще нет отзывается, то есть нет даже мусора не говоря уже о ready .
Один раз вроде бы ввели AT и получили ОК в ответ.
Это просто повезло и программа написала то что я писал.
 

espilya

New member
Да нет, я ввожу как раз таки все хорошо. В этом и проблема что отправляется не то что я ввожу...
Если не верите что я ввожу могу даже сделать вам пруф и снять клавиатуру и потом экран.


Если вы про тх и rx то все там правильно на схеме UTXD (esp-01) подключен к TX (ардуино), а RX к URXD. А если подключаю наоборот то вообще нет отзывается, то есть нет даже мусора не говоря уже о ready .

Это просто повезло и программа написала то что я писал.
И еще можете посмотреть вверху в терминале arduino ide нам видно что я ввожу.
 

Сергей_Ф

Moderator
Команда форума
Я вот думаю что может из-за длинного юсб кабеля, но на вряд ли.
А вот очень может быть, что из за кабеля. Попробуйте поменять. И делитель обязательно - у меня без него не работало и симптомы были те же.
 

=AK=

New member
Если вы про тх и rx то все там правильно на схеме UTXD (esp-01) подключен к TX (ардуино), а RX к URXD. А если подключаю наоборот то вообще нет отзывается, то есть нет даже мусора не говоря уже о ready .
Что-то здесь не так. Вот правильное подключение:

esp8266-esp-01-flashing-diagram.png esp8266-esp-01-flashing-diagram.png

Может у вас Ардуина какая-то кривая? С неправильно обозначенными Rx и Tx?

У вас на схеме еще и ресет на землю посажен, неужто работает?
 

Сергей_Ф

Moderator
Команда форума
@=AK= Вы путаете адаптер и ардуино. На ардуино надо подключать напрямую rx-rx и tx-tx. На ардуино это обозначение входов, а для встроенного адаптера и получится перекрестное подключение.
А ресет на землю - что бы сама ардуино не запускалась. Из неё используется только адаптер.
 
  • Like
Реакции: =AK=
Сверху Снизу