Передача данных через UART происходит с использованием асинхронного протокола последовательной связи, то есть данные передаются по одному биту за раз. 1
Процесс передачи: 1
- Передача начинается с начального бита, который представлен логическим «0». 1 Этот бит обозначает начало кадра данных и информирует получатель, что данные собираются прибыть. 1
- После начального бита следуют биты данных, которые содержат фактическую информацию. 1 Эти биты могут варьироваться от 4 до 8 по количеству и часто кодируются с использованием ASCII. 1
- Процесс передачи начинается с наименее значительного бита (LSB) и синхронизируется с часами системы. 1
- Может быть включён дополнительный бит паритета, который помогает обнаружить ошибки при передаче. 1 Этот бит гарантирует, что общее количество битов «1» в данных либо равномерно, либо нечётно, в зависимости от выбранной конфигурации. 1
- В конце кадра данных находится бит стоп, который указывает на вывод передачи. 1
На приёмном конце процесс обратный: UART обнаруживает действительный начальный импульс и начинает преобразовывать входящий последовательный битовой поток в параллельный формат. 1 По пути он проверяет ошибки, такие как переполнение, паритет и ошибки кадрирования. 1
Синхронизация идёт по времени: приёмник и передатчик заранее договариваются о том, на какой частоте будет идти обмен. 2 Это важный момент, так как если скорости передатчика и приёмника не будут совпадать, то передачи может не быть вообще, либо будут считаны не те данные. 2