Асинхронный последовательный обмен

Пример HTML-страницы

Асинхронный последовательный обменПри асинхронной последовательной передаче данных синхронизирующий сиг­нал не посылается в линию. Асинхронная работа передатчика и приемника дости­гается благодаря формату передаваемых данных.

На рис. 3.6.1 приведена временная диаграмма последовательного сигнала, формируемого в передатчике.

Первым в сигнале располагается стартовый бит (старт–бит), имеющий нулевое значение. Далее следуют биты (от 5 до 8) слова данных

D

6…

D

0, начиная с млад­шего бита

D

0. Слово данных сопровождается битом контроля четности (БКЧ), фиксирующим четное (0) или нечетное (1) число единиц в слове. Замыкают сиг­нал один или два стоповых бита (стоп–бита) со значениями 1. Используется по­тенциальный способ кодирования, при котором каждый бит занимает временной интервал, равный периоду синхроимпульсов.

рис. 3.6.1При отсутствии сигнала в линии передачи устанавливается единичный уро­вень. Приемник следит за уровнем сигнала в линии, фиксируя переход от 1 к 0 как начало передачи информации со стороны внешнего устройства ВУ, а получе­ние стоповых битов — как ее окончание. Таким образом, введение в последова­тельный формат старт– и стоп–битов позволяет синхронизировать работу пере­датчика и приемника на обоих концах линии. Промежуток времени от начала старт–бита до конца стоп–битов называется кадром.

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

Вывод данных.

Схема простейшего контроллера, обеспечивающего асин­хронную передачу данных во внешнее устройство, приведена на рис. 3.6.2, а. В его состав входят:

● 8–разрядные буферный регистр данных РД и сдвигающий регистр;

● триггер состояния

Т, фиксирующий значение флага вывода ФВыв: при ФВыв = 1 микропроцессору дано разрешение на вывод байта данных в РД;

● буфер состояния

БС, предназначенный для опроса ФВыв;

● дешифратор

адреса Дш и элементы ИЛИ–НЕ, обеспечивающие доступ к тригге­ру состояния Т при опросе и к буферному регистру РД при записи байта данных;

счетчик по модулю 10 и элемент ИЛИ–НЕ для фиксации состояния счетчика (ФСС);

● делитель

частоты ДЧ на 16.

Назначение сигналов, используемых при выводе данных, приведено в табл. 3.6.1. табл. 3.6.1

Для рассмотрения работы контроллера при передаче данных в ВУ воспользу­емся схемой и временными диаграммами, приведенными на рис. 3.6.2.

В исходном состоянии флаг вывода ФВыв = 1, сигнал Сброс = 1 (делитель частоты не функционирует) и снимаемый с элемента И–НЕ сигнал фиксации со­стояния счетчика ФСС = 1 (счетчик сброшен). Микропроцессор сигналом ЧтС производит опрос состояния контроллера. Так как ФВыв = 1, с помощью сигнала ЗпД = 1 загружается буферный регистр данных РД, сбрасывается флаг ФВыв и запускается делитель частоты ДЧ. Сразу же сигналом ЗпД = 1 через элемент И происходит загрузка сдвигающего регистра байтом данных из РД, а также старт– и стоп–битами (для простоты бит контроля четности не используется). По срезу выходных импульсов делителя частоты (ИДЧ) из сдвигающего регистра пересы­лаются в линию старт–бит, восемь бит данных и стоп–бит. После появления перво­го импульса на выходе счетчика сигнал ФСС становится равным нулю. Счетчик производит счет импульсов и после передачи стоп–бита переходит в нулевое со­стояние. На выходе ЛЭ И–НЕ формируется сигнал ФСС = 1, по которому контрол­лер возвращается в исходное состояние. рис. 3.6.3

Ввод данных.

Схема простейшего контроллера (устройства ввода), обеспечива­ющего асинхронную передачу данных из ВУ в процессор, приведена на рис. 3.6.3, а. В его состав входят:

● буферный регистр данных РД и сдвигающий регистр СР, используемые для размещения восьми бит данных, старт– и стоп–битов;

● триггер состояния Т,

фиксирующий значение флага ввода ФВв: при ФВв = 1 микропроцессору разрешается ввод байта данных из РД контроллера;

● буфер состояния

БС, предназначенный для опроса флага ФВв;

● делитель частоты

на 16, обеспечивающий считывание информации в середи­не бита;

● дешифратор

адреса Дш и элементы ИЛИ–НЕ, обеспечивающие доступ к буферу состояния БС при опросе и к буферному регистру РД при записи байта данных;

● счетчик

по модулю 10 и элемент ИЛИ–НЕ, предназначенные для формирова­ния сигналов состояния счетчика ФСС. табл. 3.6.2

Назначение сигналов, используемых при вводе данных, приведено в табл. 3.6.2.

Для рассмотрения работы контроллера при передаче данных из ВУ в процес­сор воспользуемся схемой и временными диаграммами, приведенными на рис. 3.6.3. Прежде всего, отметим следующее:

● если линия передачи находится в состоянии логического нуля более полови­ны временного интервала бита, то приемник контроллера начнет принимать данные;

● передний фронт старт–бита служит точкой отсчета для считывания битов пе­редаваемых данных;

● стоповый бит предоставляет время для занесения принятых данных в буфер­ный регистр приемника и обеспечивает возможность выявления ошибки при приеме кадра (посылки).

В исходном состоянии Данные = 1 (данные в линии отсутствуют), сигнал Сброс = 1 (делитель частоты не функционирует), снимаемый с элемента ИЛИ–НЕ сигнал фиксации состояния счетчика ФСС = 1 (счетчик сброшен), флаг ввода ФВв = 1. С появлением старт–бита сигналом Сброс = 0 запускается делитель час­тоты ДЧ. Первый импульс на выходе ДЧ появляется через половину периода сле­дования выходных импульсов. По его фронту старт–бит заносится в сдвигающий регистр СР контроллера. Занесение бит данных в сдвигающий регистр произво­дится так же по фронту выходных импульсов делителя частоты (ИДЧ). Благодаря этому достигается выполнение требования записи бит в СР в моменты времени, соответствующие середине бита принимаемой информации (см. рис. 3.6.3, б для

D

3). После занесения в СР стоп–бита (десятого бита) счетчик по модулю 10 переходит в нулевое состояние 0000. Сигнал ФСС на выходе элемента ИЛИ–НЕ принимает значение 1, в результате чего происходит остановка ДЧ (сигналом Сброс = 1), установка флага ввода ФВв = 1 (сигналом С триггера Т) и занесение принятых данных в буферный регистр РД (сигналом ЗпД = 1).

Микропроцессор производит опрос состояния контроллера (ЧтС = 1). Если ФВв = 1, с помощью сигнала ЧтД = 1 данные из регистра данных РД чрез буфер вводятся в микропроцессор. Данные могут вводиться как во время приема дан­ных из линии, так и во время паузы.

Проиллюстрируем реализацию рассмотренных принципов последовательного обмена на примере универсального микросхемы КР580ВВ51 синхронно–асинхрон­ного программируемого приемопередатчика — УСАПП (

Universal

Synchronous

/

Asynchronous

Receiver

/

Transmitter

USART

).


Понравилась статья? Поделиться с друзьями:
Все об энергетике, электротехнике и электронике
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: