Определение аппаратных и программных средств

Рис. 5.

Рис. 4.

Рис. 3.

Рис. 2.

Рис. 1.

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

Рис. 1.

Если аппаратный протокол не используется, на стороне передатчика необходимо обеспечить постоянную подачу на вход CTS активного сигнала, в противном случае передатчик будет "молчать".

Программное управление потоком (XON/XOFF, Software Flow Control) предполагает наличие двунаправленного канала передачи данных. Работает протокол следующим образом: если устройство, принимающее данные, обнаруживает причины, по которым оно не может их дальше принимать, оно по обратному последовательному каналу посылает байт-символ XOFF (13h). Противоположное устройство (передатчик), приняв этот символ, приостанавливает передачу. Когда принимающее устройство снова становится готово к приему данных, оно посылает символ XON (11h), приняв который передатчик возобновляет передачу. Время реакции передатчика на изменение состояния приемника, по сравнению с аппаратным протоколом, увеличивается, по крайней мере, на время передачи символа (XON или XOFF). Следовательно, данные без потерь могут приниматься только приемником, имеющим дополнительный буфер принимаемых данных и сигнализирующим о неготовности заблаговременно.

Преимущество программного протокола заключается в отсутствии необходимости передачи управляющих сигналов (уменьшение количества проводов в кабеле). Недостатком, кроме требования наличия буфера и большого времени реакции, является сложность реализации полудуплексного режима обмена.

 

Способ 1. Простой однополярный код (рис. 1).

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

Способ 2. Код NRZ (Not Return no Zero, однополярный код) (рис. 2).

Недостаток такого способа — при большой длине линии за счет ее активного сопротивления, и уменьшаются, приближаясь друг к другу. В результате могут возникать ошибки при детектировании "0" и "1" приемником.

Способ 3. Двуполярный код (рис. 3).

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

Способ 4. Код "Манчестер II"

В коде "Манчестер II" синхросигнал передается вместе с данными (рис. 4).

Код "Манчестер II" формируется на основе сихросигнала, задающего период и информационного сигнала в коде NRZ. Передача "0" или "1" кодируется направлением изменения напряжения. Таким образом, сигнал в коде "Манчестер II" всегда содержит информацию о периоде следования синхроимпульсов.

Принцип технической реализация передачи с использованием кода "Манчестер II" иллюстрируется рис. 5

На стороне передатчика синхросигнал выделяется и используется для получения данных из сигнала в коде NRZ. При этом устраняется возможность рассинхронизации приемника и передатчика за счет того, что приемник использует синхроимпульсы, формируемые тактовым генератором передатчика. Недостатком данного способа является сложность его технической реализации. Способ используется в тех случаях, когда необходимо обеспечить высокую надежность передачи информации. Часто применяется при передаче данных с датчиков.

 

Общая структура микропроцессорной системы представлена на рис. 1