Arduino IDE Serial Monitor работает, но не Putty - esp8266

У меня есть esp8266, который чаще всего не работает с Putty, но всегда работает с Serial Monitor в Arduino IDE.

Скорость передачи данных установлена на 115200. Putty заполняет окно терминала странными символами, а питание esp8266 пропадает при открытии окна Putty.

ESP запрограммирован на ожидание команд через последовательный порт и запись ответа на него. Для этого я использую метод serialEvent().

Я пробовал добавить Serial.setTimeout(10000), но это не помогло.

Есть идеи?

, 👍-1

Обсуждение

убедитесь, что настройки в PuTTY такие же, как у последовательного монитора, @jsotola


1 ответ


1

Основное отличие PuTTY от последовательного монитора Arduino заключается в следующем: что последний отправляет одно сообщение за раз, со всеми персонажами сообщение сразу же следует одно за другим, тогда как PuTTY отправляет каждое Символ сразу после того, как вы его напечатаете. Если вы хотите, чтобы ваш набросок был совместимый с обоими, вам придется читать последовательный порт, пока не найдете Правильный символ конца строки. См. Чтение последовательного порта на Arduino, Маженко.

Также стоит следить за символами завершения строк. Если я правильно помню, PuTTY по умолчанию использует отправляет CR ('\r') при нажатии клавиши Enter, и ожидает вашего скетча для завершения выходных строк с помощью CRLF ("\r\n"):

  • CR перемещает курсор горизонтально до упора влево
  • LF перемещает курсор вертикально на одну строку вниз.

Метод Arduino Serial.println() завершает строки символом CRLF.

,