Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УчебПособ_Гончаровский.doc
Скачиваний:
17
Добавлен:
13.11.2019
Размер:
3.75 Mб
Скачать

1.9. Базовые последовательные интерфейсы ввода-вывода

встроенных систем

Последовательная передача и прием данных означает передачу и прием по одной линии только одного бита за раз. Это уменьшает до минимума количество проводников необходимое для передачи данных в отличие от параллельной передачи, кода прием и передача выполняется одновременно по нескольким линиям – по биту на линию.

Последовательный интерфейс организует последовательную передачу и прием между CPU и I/O. Различные последовательные интерфейсы тем как биты данных передаются и принимаются.

Схема последовательной передачи называется симплексной, если поток данных передается и затем принимается только в одном направлении.

Схема последовательной передачи называется полудуплексной, если поток может передаваться и приниматься в одном из двух направлений, только в одном направлении в каждый момент времени.

Схема последовательной передачи называется дуплексной, если поток может передаваться и приниматься в одном из двух направлений одновременно.

Последовательная передача, выполняемая как непрерывный поток с регулярными временными интервалами, определяемыми тактовой частотой CPU, называется синхронной передачей, а с нерегулярными временными интервалами – асинхронной передачей.

.

1.9.1. Асинхронный старт-стопный интерфейс

Устройство, реализующее стартстопную передачу данных, называют UART (Universal Asynchronous Receiver Transmitter). Передатчик разделяет порцию данных на символы (от 4до 8 бит или от 5 до 9 бит на символ). Каждый из символов инкапсулируется в кадр для раздельной передачи. Перед отправкой в линию каждый символ дополняется битом START в начале символа и битом/битами STOP (может бать 1, 1.5 и более бит) в конце символа. На рис. 36 приведена временная диаграммf старт-стопной передачи данных.

При настройке UART назначаются:

– число STOP-битов (регулирует минимальный интервал между соседними символами, обычно выбирают равным значению 1 или 2, реже 1,5 битовых интервала);

– число бит данных (5…8);

– наличие или отсутствие проверочного разряда P (дополнение до четности или нечетности);

– скорость передачи V бит/сек .

Рис. 36 Временная диаграммf старт-стопной передачи данных.

Приемник на уровне символа синхронизируется переходом линии из состояния простой (1) в 0 (START-бит). Зная длительность битового интервала T=1/V и формат символа, приемник запускает тактовый генератор и последовательно считывает передаваемые биты, анализируя линию связи посередине битового интервала.

Синхронизация на уровне бит, основана на стабильности работы и точности задания частоты передающего и приемного генераторов на коротком интервале приема символа.

Асинхронность передачи вытекает из того, что приемник не знает в какой момент времени поступит очередной символ. Отсутствует единая для всего потока данных синхронизация, т.е. она имеет локальный характер – устанавливается заново всякий раз при обнаружении приемником начала очередного старт-бита.

Через UART к встроенной системе обычно подключаются микросхемы модемов различных беспроводных коммуникационных технологий, GPS-приемники. Это связано с историей возникновения UART как интерфейса для передачи данных между компонентами телекоммуникационного оборудованием DTE (Data Terminal Equipment - оконечное оборудование данных или компьютер) и DCE (data communication equipment - оборудование передачи данных или модем) и являющегося элементом стандарта RS-232.

В этом стандарте вход данных UART называн RxD, а выход TxD и ведены многочисленные служебные сигналы. Сейчас из них используется лишь следующие сигналы. RTS (Request To Send – запрос на передачу данных) и CTS (Clear To Stnd – готовность к передаче данных). Их первоначальное назначение (для отображения запроса и готовности передачи данных от DTE к DCE) в настоящее время зачастую игнорируется – эти сигналы могут альтернативно трактоваться как равноправные признаки готовности устройств DTE и DCE к приему данных от устройства-партнера.

В асинхронном режиме сигналы RTS и CTS обслуживают оба направления передачи данных, что выходит за рамки стандарта и отражает некий “стандарт де-факто”. Поэтому наименования сигналов не соответствуют (и даже противоречат) их назначению. Выходной сигнал RTS теперь рассматривается как готовность DTE принять данные RxD от такого же устройства DTE. Аналогично входной сигнал CTS теперь рассматривается как разрешение на передачу данных для DTE.

На рис.37. приведена схема соединения двух DTE (нуль-модемное соединение). Логика работы такова: передача данных в ту или иную сторону возможна только при условии, что приемник готов эти данные принять. Если обнаружена неготовность приемника, то источник данных приостанавливает работу, ждет появления готовности , возобновляет передачу и т.д. Это – так называемое аппаратное управление потоком данных (hardware flow control)

Современные микроконтроллеры могут содержать несколько UART. Это позволяет достаточно просто реализовывать во встроенных системах коммуникационные функции.

Рис.37. Схема соединения двух DTE