Введение в UART на ESP32. Работа с UART1 на ESP32.

UART (Universal Asynchronous Receiver/Transmitter) - это последовательный протокол связи, который обеспечивает простой обмен данными между двумя устройствами. Микроконтроллер ESP32 предоставляет три шины UART: UART0, UART1 и UART2. Их можно использовать для общения с различными устройствами, такими как сенсоры, Arduino, Raspberry Pi и компьютеры.

Микроконтроллер ESP32 предоставляет три шины UART: UART0, UART1 и UART2.

Использование UART0 на ESP32.

UART0 является основным UART на ESP32 и по умолчанию подключается к пинам GPIO1 (TX0) и GPIO3 (RX0). Он часто используется для связи с компьютером через серийный монитор и также используется для прошивки платы ESP32 новыми программами. Сообщения могут выводиться в консоль с помощью Serial.println().

Возможности UART2 на ESP32.

Чтобы использовать UART2, достаточно добавить Serial2.begin() в функцию setup(), а для отправки сообщений использовать Serial2.println(). По умолчанию UART2 подключен к пинам GPIO16 (RX2) и GPIO17 (TX2), но вы можете изменить эти пины в процессе настройки, что может быть полезно при использовании модуля Wrover. В следующем примере кода показано, как использовать UART2:

void setup() {
  Serial2.begin(115200);
}
void loop() {
  Serial2.println("Hello from UART2");
  delay(100);
}

Обратите внимание: Сообщение, отправленное через UART2, не будет отображаться в мониторе порта, так как UART2 не подключен к USB компьютера. Вместо этого он будет передаваться через указанные пины.

Работа с UART1 на ESP32: Использование выбранных пинов для последовательного интерфейса.

Работа с UART1 на ESP32: Использование выбранных пинов для последовательного интерфейса.

UART1 по умолчанию не привязан к конкретным пинам, так как использует те же пины, что и память flash на ESP32. Однако вы можете использовать UART1, выбрав нужные пины с помощью функции "GPIO matrix" на ESP32. В следующем примере кода показано, как настроить серийный интерфейс на пинах GPIO14 и GPIO12 с использованием UART1:

void setup() {
  /*
  * UART1  -> Serial1
  * RX Pin -> GPIO 14
  * TX Pin -> GPIO 12
  * UART Configuration -> SERIAL_8N1
  */
  Serial1.begin(115200, SERIAL_8N1, 14, 12);
}
void loop() {
  Serial1.println("Hello from UART1");
  delay(100);
}

В приведенном коде сообщение "Hello from UART1" будет отправлено через UART1 с использованием GPIO12 в качестве пина передачи (TX) и GPIO14 в качестве пина приема (RX).

Используя шины UART на ESP32, вы можете обеспечить надежную последовательную коммуникацию с другими устройствами, обеспечивая беспроблемный обмен данными в ваших проектах.

Вывод:

В статье был представлен обзор UART-коммуникации на микроконтроллере ESP32. Особое внимание уделено использованию UART1, что является полезной информацией, которую не просто найти.

Управление UART1 на ESP32 требует некоторых дополнительных настроек, так как по умолчанию он не привязан к конкретным пинам из-за его совместного использования с памятью flash. Однако, статья приводит пример кода, в котором показано, как выбрать желаемые пины с использованием функции "GPIO matrix" и настроить UART1 для передачи и приема данных.

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

Мы рады объявить о нашем присутствии на Boosty! Arduino-Tex приглашает всех наших друзей и последователей поддержать нас на этой замечательной платформе. Здесь вы найдете эксклюзивный контент, уникальные проекты и возможность стать частью нашей творческой команды. Присоединяйтесь к нам на Boosty и вместе мы сделаем мир Arduino еще удивительнее!

Фотографии к статье

Комментарии

Ваше Имя*


Разработка проектов