Контакты Arduino с 3 по 7 используются для последовательной передачи данных.

Добрый день.

Я новичок в Arduino, поэтому, пожалуйста, будьте терпеливы. Мне нужно знать, можно ли использовать контакты, отличные от контактов 0 и 1, для последовательного соединения. У меня есть 3 устройства, которые необходимо подключить к Arduino через USB, но когда я увидел спецификацию Arduino, это означало, что только контакты 0 и 1 используются для последовательного приема/передачи. Так можно ли подключить остальные 2 USB-разъема через контакт 2 к контакту 5

Большое спасибо за ответ

, 👍0

Обсуждение

Можете ли вы объяснить, что это за три устройства? Что это за usb-устройства? Arduino uno — это не компьютер. Пожалуйста, добавьте дополнительную информацию к вашему вопросу., @Jot

Три устройства — это компьютер (который управляет системой, которую я создаю), маршрутизатор и мобильный телефон (которые управляются системой, которую я создаю)., @Ciach

Некоторые смартфоны на базе Android распознают модуль USB-Serial. Такие телефоны можно подключить к плате Arduino (с USB-подключением к телефону). Я не знаю, есть ли маршрутизаторы, которые могут это делать. Это взломанный маршрутизатор или маршрутизатор с открытой прошивкой?, @Jot


3 ответа


3

Пинами 0, 1 являются rx/tx для аппаратного периферийного устройства UART. Arduino (я предполагаю, что UNO/Nano) имеет только один аппаратный UART.

Существует программная библиотека, которая использует любые 2 контакта для имитации поведения аппаратного контакта UART для дополнительных программных UART (это называется битовым ударом). эти «программные» UART не такие быстрые, как аппаратные, и на них нельзя рассчитывать в плане высокой скорости передачи данных (скоростей). но для 9600кбит/с они хороши. имейте в виду, что, несмотря на их простоту реализации и универсальность, они используют время ЦП при обмене данными, и если вы используете прерывания в своем коде, это повлияет на поток данных.

https://www.arduino.cc/en/Reference/SoftwareSerial

,

Спасибо Тирдад Садри Неджад, Это большая помощь для меня. Я думаю, это ответит на мою проблему., @Ciach

Кстати, я пробовал использовать программный последовательный порт для MIDI (31 250) бит/с, но это не сработало надежно. Если вам нужно четыре последовательных порта, проверьте Arduino Mega., @Michel Keijzers


0

Если вам нужно, чтобы ваш Arduino был ведомым устройством USB для дополнительных последовательных интерфейсов, вы можете подключить FTDI Basics к аппаратным последовательным портам (например, на Mega) или к программным последовательным портам (например, на Mega).

,

0

Старайтесь избегать библиотеки SoftwareSerial, она очень ненадежна, это я могу вам сказать по опыту. Взамен попробуйте AltSoftSerial или NeoSWSerial, гораздо лучше.

,