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

Нужна помощь Отправка сигнала через Serial порт в esp8266 через USB Shield.

Bzdun

New member
Здравствуйте! Простите, может я и не попадаю в тематику форума, просто не знаю, куда обратиться. У меня возникла большая проблема: мне хотелось бы с помощью Serial Monitorа на одном компьютере отправлять число на модуль ESP8266-ESP01, после чего модуль отправлял бы его на другой компьютер. Это всё прекрасно работает без USB-Shield. Но, когда я его подключаю (а он важен для моего проекта), число, отправляемое мной, как-будто не доходит до модуля. А просто при старте модуля те слова, которые сопровождают подключение к WiFi и т.п., превратились просто в кучу цифр, которые приходят в Serial Monitor. Мою схему подключения, скриншоты программы и Serial Monitorа прилагаю. Подскажите, пожалуйста, что я делаю не так, это же не невозможная задача?)
 

=AK=

New member
Попробуйте снизить скорость SoftwareSerial до 9600. Я думаю, USB Host шилд отжирает много ресурсов от Ардуины и ей перестает хватать производительности для SoftwareSerial, настроенной, как у вас, на максимально возможную скорость.
 

Bzdun

New member
Попробуйте снизить скорость SoftwareSerial до 9600. Я думаю, USB Host шилд отжирает много ресурсов от Ардуины и ей перестает хватать производительности для SoftwareSerial, настроенной, как у вас, на максимально возможную скорость.
К сожалению, не помогло, почему-то посылаются и в одну, и в другую сторону только комбинации двузначных и трёхзначных чисел. То есть модуль, когда я ему пишу 111111, посылает на компьютер по WiFi просто отдельные числа 49 49 49 49 49 49 13 10. Может что то не так с кодировками?
 

Сергей_Ф

Moderator
Команда форума
@Bzdun у Ардуино ЮНО скорость программного последовательного порта ограничена 9600 бод. Только тогда можно гарантировать работу SoftwareSerial
 

Bzdun

New member
@Bzdun у Ардуино ЮНО скорость программного последовательного порта ограничена 9600 бод. Только тогда можно гарантировать работу SoftwareSerial
Да, я это уже понял, спасибо, но, как я уже ответил =AK=, почему-то посылаются и в одну, и в другую сторону только комбинации двузначных и трёхзначных чисел. То есть модуль, когда я ему пишу 111111, посылает на компьютер по WiFi просто отдельные числа 49 49 49 49 49 49 13 10.
 

Bzdun

New member
а что это по вашему? Вы послали строку, ее и получили. Просто вывели её как набор байт "111111/n/r"
Да, я это прекрасно понимаю, но, если я отправляю без USB Shieldа, то мне и приходит 111111 сразу. Могу ли я это всё дело расшифровать ещё до отправления сигнала? И какая это кодировка, чтобы в крайнем случае на компьютере дорабатывать программу по расшифровке?
 

Сергей_Ф

Moderator
Команда форума
я это прекрасно понимаю,
Извините, но нет. Не понимаете.
какая это кодировка,
В какой послали, такая и есть кодировка. Хотя для цифр это без разницы.

Честно говоря, я не знаю что у вас выводится без шилда, но сейчас вы получаете именно то, что отослали. Один в один. Как и что перекодировать решать вам.
 

Bzdun

New member
Всё, решил данную проблему, тему можно закрывать. Кодировка, которая приходила, была ASCII, и пришлось и на компьютере, и в Arduino дописывать коды для расшифровки.
 
Сверху Снизу