Можно ли использовать контакты TX и RX на UNO как обычные цифровые контакты?

У uno цифровые контакты обозначены цифрами 0-13.

0 обозначается как rx, а 1 обозначается как tx. Можно ли использовать эти два контакта как обычные цифровые контакты, если у меня не хватает цифровых контактов?

, 👍15

Обсуждение

Если у вас не хватает цифровых контактов, вы всегда можете использовать аналоговые. Они также работают как цифровые., @Mikael Patel


3 ответа


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

11

Да, вы можете прекрасно использовать эти 2 контакта, если ваша программа не использует Serial.

ПРАВКА: Последовательные данные по USB проходят через медные дорожки, подключенные к контактам rx и tx, соединяя их с микросхемой преобразователя USB в последовательный интерфейс.

,

Моя программа использует последовательный порт, но передаёт данные через USB, а не через контакты RXTX. Проблема всё ещё актуальна?, @c_breeez

То же самое: данные USB проходят через контакты RX/TX :-(, @jfpoilpret

Хорошо, спасибо за отличный ответ и разъяснение этих моментов., @c_breeez


3

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

,

-1

Можно, но это отключит последовательный порт.

,

Нет, всё наоборот: последовательный порт имеет более высокий приоритет. При его включении с помощью Serial.begin() вы отключаете обычную работу порта (pinMode(), digitalRead() и digitalWrite()). За одним исключением: вы можете установить вывод RX в состояние INPUT_PULLUP вместо INPUT, как это установлено по умолчанию. См. техническое описание ATmega328P, особенно разделы _Альтернативные функции порта_, _Передача данных – Передатчик USART_ и _Приём данных – Приёмник USART_., @Edgar Bonet