Проблема связи ESP8266

У меня возникла проблема при взаимодействии с ESP8266 через последовательные порты Arduino Uno.

Я могу подключиться к нему с помощью python -m serial.tools.miniterm /dev/ttyUSB0 115200 команду, но при попытке отправить команду AT она выглядит так:

�tC�

ERROR
�v[�
ERROR
at

OK

Так что иногда мне удаётся правильно отправить команду, но обычно то, что я печатаю, превращается в бессмыслицу. Я пробовал другие значения скорости, но работает только 115200.

Я питаю Arduino через USB от моего ноутбука. Я видел некоторые упоминания о том, что такое поведение может быть вызвано низким напряжением, но, к сожалению, в настоящее время я не могу проверить, так ли это в данном случае.

Моя схема выглядит так: Схема

Я новичок в этом деле, поэтому если я упустил какую-либо важную информацию, пожалуйста, дайте мне знать, и я постараюсь ее предоставить.

, 👍0

Обсуждение

Где находятся делители напряжения от Arduino TX до ESP RX для переключения с 5 В на 3,3 В? Вы уверены, что модуль не на скорости по умолчанию 9600 бод? Почему EN ESP не подтянут? Помогает ли добавление большого конденсатора между 3,3 В и GND?, @Maximilian Gerhardt

По поводу делителей напряжения: я не знал, что они нужны. Я более или менее следовал этой инструкции: http://www.instructables.com/id/Arduino-motion-detector-PIR-that-writes-to-SQL-via/ По поводу 9600 бод: почти уверен — когда я пытаюсь подключиться на скорости 9600, получается полная тарабарщина. ESP EN: Рассмотрю этот вопрос. Конденсатор: рассмотрю этот вопрос., @Krzysztof Piszko

Приложение: Под EN (Enable) я имел в виду CH_PD (chip powerdown) -- но у вас он уже подключен к 3V3, так что все в порядке. Скорее всего, это из-за смещения напряжения или слишком плохого блока питания., @Maximilian Gerhardt

Контакт 3,3 В Uno не может обеспечить необходимый ток для esp8266., @Juraj

115200 — скорость передачи данных по умолчанию для прошивки AT., @Juraj

@Juraj Я постараюсь завтра подключить какой-нибудь внешний источник питания и доложу., @Krzysztof Piszko

проверьте провода и соединения. попробуйте подключить заземление напрямую, а не через макетную плату, @Juraj

@MaximilianGerhardt Кажется, проблема была в напряжении TX 5V. Я купил несколько резисторов, добавил делитель напряжения, и все работает отлично. Скоро отвечу на свой вопрос с обновленной схемой, @Krzysztof Piszko


1 ответ


Лучший ответ:

2

Проблема, как Максимилиан Гергардт предположил в комментариях, была в том, что TX/RX Arduino отправлял сигнал 5 В. Добавление делителей напряжения на линию RX решило проблему. Подробности см. на схеме ниже:

,