STM32.USART Введение

Зачем необходим USART? Для «цивилизованной» связи с внешним миром, например, с ПК или с другим контроллером.

Преимущества USARTa — простота использования (по сравнению, например, с USB) и надежность работы.

Недостаток — на современных ПК отсутствует СОМ-порт, но это решается путем использования виртуального.

В МК STM32 интегрируется минимум три USARTa (например, в STM32F103RBT имеется три модуля — USART1, USART2 и USART3).
Они поддерживают несколько расширенных режимов работы, но мы рассмотрим обычный асинхронный режим с использованием сигналов RXD и TXD.
Из особенностей модуля USART следует выделить возможность дробного деления частоты.
Благодаря этому можно получить стандартные скорости связи при любой частоте тактового сигнала.
Также каждый модуль может быть подключен к контроллеру DMA отдельно для приема и для передачи данных.
Что еще можно выжать из этого модуля? Вот некоторые возможности:

  • работа с однопроводной полудуплексной линией связи;
  • поддержка интерфейса смарт-карты;
  • связь с внешними устройством, оснащенными SPI-совместимым интерфейсом, по 3-проводной линии.

Внушает, правда?
Также приличная скорость обмена — до 4.5 Мбит/сек.
А еще для первого модуля имеется возможность выполнять ремапинг, то есть можно переключиться на другие выводы.

Закончим с общим обзором и начнем разбираться, как использовать эти приличные возможности.
Как обычно, начнем с рассмотрения регистров.