Serial



Последовательная связь — это стандартное USB-соединение между Arduino и компьютером с помощью стандартного кабеля USB A-B или через контакты TX/RX с использованием преобразователя USB в последовательный порт. Он также может ссылаться на серийную библиотеку.

[Последовательный порт] используется для связи между платой Arduino и компьютером или другими устройствами. Все платы Arduino имеют по крайней мере один последовательный порт (также известный как UART или USART): Serial. Он обменивается данными через цифровые контакты 0 (RX) и 1 (TX), а также с компьютером через USB. Таким образом, если вы используете эти функции, вы также не можете использовать контакты 0 и 1 для цифрового ввода или вывода. Вы можете использовать встроенный последовательный монитор среды Arduino для связи с платой Arduino. Нажмите кнопку последовательного монитора на панели инструментов и выберите ту же скорость передачи данных, что и при вызове метода begin().

Выдержка из страницы Arduino о последовательном интерфейсе.

Большинство плат имеют только один последовательный порт. Исключения:

  • У Леонардо их два: один подключен к USB, а другой подключен к контактам 0 и 1 для подключения к элементам UART.
  • Mega/Mega2560 имеет 4 последовательных порта, один из которых подключен к преобразователю UART в USB.
  • DUE также имеет 4 последовательных порта, один из которых подключен к преобразователю UART в USB.

Serial выводится через UART. Затем для основного последовательного соединения на контактах 0 и 1* данные передаются через UART в микросхему последовательного интерфейса**, а затем передаются в/из компьютера.

*На некоторых платах, таких как Leonardo, не используются контакты 0 и 1.

**На некоторых платах, таких как Leonardo, USB-чип отсутствует, поскольку он встроен в сам чип или не имеет USB-подключения.


Серийная библиотека:

Arduino включает библиотеку для обработки последовательных портов. Вот пример кода:

void setup() {
  // открываем последовательный порт на скорости 9600 бит/с:
  Serial.begin(9600);
}

void loop() {
  Serial.println("Hello World!");
  delay(1000);
}

Вопросы, связанные с [serial]: