Серийный номер аппаратного/программного обеспечения для HC-05
может ли кто-нибудь объяснить мне всю разницу между аппаратным и программным серийным номером для HC-05. Я прочитал UART, USB-кабель, серийный номер, и я был действительно сбит с толку. так в чем разница и преимущества между ними? спасибо...
@klay, 👍1
2 ответа
Лучший ответ:
Аппаратный и программный последовательный интерфейс: Большинство микроконтроллеров/Arduino имеют как минимум 1 аппаратный последовательный интерфейс. Это означает, что для этого последовательного интерфейса фактический протокол связи (передача и получение фактических данных) реализован в специальном аппаратном обеспечении внутри микроконтроллера (что также означает, что на плате есть фиксированные контакты, к которым вы можете подключиться). Таким образом, вам не нужен код для выполнения сложного протокола связи. Вместо этого основной ЦП задействован только для обработки полученных и передаваемых данных, которые необходимо поместить в буферный регистр. Затем выделенное оборудование автоматически отправляет и получает данные.
Поскольку количество аппаратных последовательных интерфейсов ограничено и фиксировано для платы/микроконтроллера Arduino, может случиться так, что вам потребуется больше последовательных интерфейсов, чем имеется на вашей плате/микроконтроллере. Затем вы можете использовать
SoftwareSerial
. Это библиотека, которая обрабатывает полный протокол связи в программном обеспечении, напрямую устанавливая и считывая состояния электрических контактов в соответствии с протоколом. Преимущество в том, что вы можете использовать это на любых цифровых выводах для такого интерфейса. Недостатком является то, что делать такие вещи в программном обеспечении сложно. Вы можете одновременно прослушивать только 1 интерфейсSoftwareSerial
, а скорость передачи данных ограничена (в зависимости от фактического используемого микроконтроллера, например, его частоты).UART vs Serial: UART – это технический термин, обозначающий используемый интерфейс связи.
Serial
— это термин Arduino, который не используется таким образом в других контекстах. Настоящим типом интерфейса является UART, а платформа Arduino просто называет этот интерфейсSerial
, чтобы упростить его.Подключение через USB-кабель или контакты. Возьмем в качестве примера Arduino Uno. Он имеет 1 аппаратный последовательный интерфейс. Этот интерфейс подключен к контактам 0 и 1 (RX и TX), а также внутри к дополнительному чипу. Этот чип обрабатывает USB-соединение и ведет себя как мост USB-Serial. При общении с последовательным монитором в Arduino IDE вы фактически используете этот USB-последовательный мост для связи с микроконтроллером на Arduino. Но вы также можете использовать для этого контакты RX/TX.
Последовательный порт аппаратного обеспечения использует контакты 0/1 на Uno. Вы не можете изменить эти контакты. Эти контакты также являются контактами, которые используются для связи с вашим компьютером. Вы можете использовать аппаратный серийный номер на этих контактах для связи с HC-05 только, если вы не хотите связываться со своим компьютером.
SoftwareSerial можно использовать на любых контактах, поэтому его можно использовать одновременно с аппаратным последовательным портом для связи с вашим компьютером. Однако возможности SoftwareSerial несколько ограничены.
Большие платы (например, Mega) обычно имеют более одного аппаратного последовательного порта. Они подключены к контактам TX1/RX1, TX2/RX2 и т. д. Это предпочтительный метод подключения к внешним последовательным устройствам, поскольку они работают более надежно, чем SoftwareSerial, и одновременно с USB-подключением компьютера.
- Нужен пример того, как отправлять КОМАНДЫ AT на модуль SIm7000E GPS+LTE из ESP32 и читать эти ответы в последовательном мониторе
- Arduino Mega Loopback Test с несколькими портами TX/RX
- В чем разница между библиотеками Software Serial? Какая из них совместима с Arduino Nano?
- Как использовать Serial.setTimeout()
- Отправить структуру через Serial
- Может ли Arduino Leonardo одновременно использовать USB-порт и последовательные контакты RX TX?
- Последовательная связь между несколькими устройствами (или ардуино)
- Проблемы с последовательной связью от Arduino к Bluetooth HC-05