Последовательная связь между Uno и Esplora путем соединения их USB-портов вместе.

Я пытаюсь отправить символьное сообщение с Arduino Uno на Esplora, соединив их USB-порты вместе. У Esplora есть порт micro USB, а у Uno — порт USB B. Чтобы подключить их, я подключил кабель micro USB к USB A к кабелю USB A к USB B, используя разъем USB A «мама-мама». Я даже соединил площадки Uno и Esplora вместе. Но две платы, похоже, просто не взаимодействуют. Обычно при подключении esplora к моему компьютеру индикатор tx мигает при отправке сообщения, и сообщение появляется на последовательном мониторе, как и ожидалось. Я также протестировал отправку символьных сообщений с компьютера в Uno, и они, похоже, читаются так, как ожидалось. Но при подключении esplora к uno без подключения к компьютеру индикаторы tx на esplora вообще не загораются, и индикаторы uno rx тоже не мигают.

Есть идеи, в чем может быть проблема?

, 👍0


1 ответ


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

1

Это не сработает. USB-связь является главным/ведомым. Должен быть «хост» и «устройство». Uno и Esplora — это два «устройства».

Подключите платы через последовательный порт TTL. Соедините контакты Rx и TX вместе: TX к RX и RX к TX. И землю, конечно.

Последовательный в Esplora — это интерфейс USB. В «ядре» я вижу, что у Esplora есть второй последовательный интерфейс под названием Serial1. Согласно схемам, контакты RX и TX Serial1 на Esplora находятся на заголовке ЖК-дисплея как DC_LCD (RX) и RESET_LCD (TX). Используйте этот Serial1 для связи с Uno.

На стороне Uno вам следует отключить Uno от компьютера, чтобы не нарушать последовательный интерфейс при подключении USB. Или используйте SoftwareSerial для связи с Esplora и получения отладочной печати на Serial Monitor.

,

Какие контакты на Esplora являются tx и rx по умолчанию?, @Paul

Я отредактировал ответ., @Juraj

Что вы подразумеваете под «Ядро, я вижу, это Serial1»? Не могли бы вы объяснить, что это значит?, @Paul

В Arduino есть базовые пакеты для различных аппаратных архитектур микроконтроллеров, а в базовых пакетах есть варианты для плат. и платы имеют разные конфигурации программного обеспечения, соответствующие аппаратному обеспечению., @Juraj

Юрай: Если я использую последовательную связь со скоростью 9600, означает ли это, что мне нужно использовать связь Serial1.begin(9600) вместо обычного Serial.begin(9600) в коде esplora?, @Paul

это то, что я написал в ответ. используйте Серийный1. Серийный порт USB, @Juraj

Спасибо! Это может просто решить мой другой вопрос., @Paul

ты спросил про ядро и не увидел смысла предложения?, @Juraj

Сначала я не был уверен, что понял это. Спасибо за объяснение. Я ценю вашу помощь., @Paul