Управление потоком xon xoff что это
Перейти к содержимому

Управление потоком xon xoff что это

  • автор:

knigechka

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

COM порт — Управление потоком данных

Для управления потоком данных (Flow Control) могут использоваться два вари­анта протокола — аппаратный и программный. Иногда управление потоком пута­ют с квитированием. Квитирование (handshaking) подразумевает посылку уведомления о получении элемента, в то время как управление потоком предполагает посылку уведомления о возможности или невозможности последующего приема данных. Зачастую управление потоком основано на механизме квитирования.

Аппаратный протокол управления потоком RTS/CTS (hardware flow control) ис­пользует сигнал CIS, который позволяет остановить передачу данных, если при­емник не готов к их приему (рис. 2.13). Передатчик «выпускает» очередной байт только при включенной линии CTS. Байт, который уже начал передаваться, задер­жать сигналом CTS невозможно (это гарантирует целостность посылки). Аппарат­ный протокол обеспечивает самую быструю реакцию передатчика на состояние приемника. Микросхемы асинхронных приемопередатчиков имеют не менее двух регистров в приемной части — сдвигающий, для приема очередной посылки, и хра­нящий, из которого считывается принятый байт. Это позволяет реализовать обмен по аппаратному протоколу без потери данных.

clip_image002

Рис. 2.13. Аппаратное управление потоком

Аппаратный протокол удобно использовать при подключении принтеров и плот­теров, если они его поддерживают. При непосредственном (без модемов) соеди­нении двух компьютеров аппаратный протокол требует перекрестного соедине­ния линий RTS — CTS.

При непосредственном соединении у передающего терминала должно быть обес­печено состояние «включено» на линии CTS (соединением собственных линий RTS — CTS), в противном случае передатчик будет «молчать».

Применяемые в IBM PC приемопередатчики 8250/16450/16550 сигнал CTS аппарат-но не отрабатывают, а только показывают его состояние в регистре MSR (см. п. 2.5). Реализация протокола RTS/CTS возлагается на драйвер BIOS Int 14h, и назы­вать его «аппаратным» не совсем корректно. Если же программа, пользующаяся СОМ-портом, взаимодействует с UART на уровне регистров (а не через BIOS), то обработкой сигнала CTS для поддержки данного протокола она занимается сама. Ряд коммуникационных программ позволяет игнорировать сигнал CTS (если не используется модем), и для них не требуется соединение входа CTS с выходом даже своего сигнала RTS. Однако существуют и иные приемопередатчики (например, 8251), в которых сигнал CTS отрабатывается аппаратно. Для них, а также для «чест­ных» программ, использование сигнала CTS на разъемах (а то и на кабелях) обя­зательно. Преимущество протокола RTS/CTS во времени реакции (по сравне­нию с программным методом XON/XOFF) остается лишь для буферированной (в режиме FIFO) передачи.

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

clip_image005

Рис. 2.14. Программное управление потоком XON/XOFF

Преимущество программного протокола заключается в отсутствии необходимо­сти передачи управляющих сигналов интерфейса — минимальный кабель для дву­стороннего обмена может иметь только 3 провода (см. рис. 2.5, а). Недостатком, помимо обязательного наличия буфера и большего времени реакции (снижающе­го общую производительность канала из-за ожидания сигнала XON), является сложность реализации полнодуплексного режима обмена. В этом случае из пото­ка принимаемых данных должны выделяться (и обрабатываться) символы управ­ления потоком, что ограничивает набор передаваемых символов.

Кроме этих двух распространенных стандартных протоколов, поддерживаемых и ПУ, и ОС, существуют и другие.

Литература:
ГукМ., Г93 Аппаратные интерфейсы ПК. Энциклопедия. — СПб.: Питер, 2002. — 528 с.: ил.

Русские Блоги

Управление последовательным потоком UART (управление потоком)

Как правило, при последовательной связи на некоторых компьютерах верхнего уровня мы увидим параметры RTS / CTS, DTR / DSR и XON / XOFF.Это параметр для управления потоком, который обычно применяется к интерфейсу RS232, который является данными от модема. Общение

1. Роль управления потоками

Упомянутый здесь «поток» относится к потоку данных; при передаче данныхУправление потокомЭто процесс управления скоростью передачи данных между двумя узлами для предотвращения заполнения буфера данных на принимающей стороне, в то время как отправляющая сторона продолжает отправлять данные, что приводит к потере данных.

2. Принцип работы

Когда буфер данных на принимающей стороне заполнен и данные не могут быть обработаны, он отправит сигнал «больше не принимает», а отправляющая сторона прекратит отправку, пока отправляющая сторона не получит сигнал «можно продолжить отправку» перед отправкой данных. В компьютерах обычно используются два типа управления потоком: аппаратное управление потоком (RTS / CTS, DTR / DSR и т. Д.) И программное управление потоком (XON / XOFF).

Три, определение контакта RS232

RS-232 изначально был разработан для подключения к модему для передачи, поэтому значение его контактов обычно связано с передачей модема. Оборудование RS-232 можно разделить на два типа: оконечное оборудование данных (DTE, оконечное оборудование данных, например, ПК) и оборудование передачи данных (DCE, оборудование передачи данных). Эта классификация определяет разные линии для передачи и приема. сигнал. Вообще говоря, компьютеры и оконечное оборудование имеют разъемы DTE, а модемы и принтеры — разъемы DCE. Но это не всегда строго правильно.Чтобы проверить соединение с разветвителем проводки или методом проб и ошибок определить, исправен ли кабель, часто необходимо обратиться к соответствующей документации.

RS-232 в настоящее время имеет разъемы типа DB-25 и DB-9, а интерфейсы типа DB-9 используются чаще.

Назначение контактов типа DB-9 в RS-232:

Описание его сигнального контакта:

Положение стопы Стенография значимость сигнал Описание
Pin1 DCD Data Carrier Detect Обнаружение носителя данных (DCD) Модем сообщает компьютеру об обнаружении носителя.
Pin2 RXD Receiver Получение данных (RD, RXD) Получите данные.
Pin3 TXD Transmit Отправить данные (TD, TXD) отправить данные.
Pin4 DTR Data Terminal Ready Подготовка терминала данных (DTR) Компьютер сообщает модему, что он может передавать.
Pin5 GND Ground Общие основания Провод заземления.
Pin6 DSR Data Set Ready Данные готовы (DSR) Модем сообщает компьютеру, что все готово.
Pin7 RTS Request To Send Запрос на отправку (RTS) Компьютер просит модем передать данные.
Pin8 CTS Clear To Send Очистить для отправки (CTS) Модем сообщает компьютеру, что он может отправлять данные.
Pin9 RI Ring Indicator Индикация звонка (RI) Модем сообщает компьютеру о входящем звонке.

4. Аппаратное управление потоком (в основном RTS / CTS)

RTS / CTS был первоначально разработан для полудуплексной совместной связи между телетайпом и модемом, и только один модем может отправлять данные одновременно. Терминал должен отправить запрос на отправку сигнала, а затем ждать, пока модем не ответит разрешением на отправку. Хотя в RTS / CTS квитирование осуществляется аппаратно, у него есть свои преимущества.

1. Стандартный метод подключения RS232

Когда оборудование на стороне A готово, сигнал DTR (оборудование для передачи данных готово) будет отправлен на RI (вызывной сигнал) и DSR (оборудование связи готово) на стороне B. Таким образом, пока A готов (DTR), B будет генерировать вызов (RI) и быть готовым (DSR).

Обратите внимание, что RTS (запрос на отправку), CTS (разрешена отправка) и CD (обнаружение несущей) на стороне B соединены вместе, что означает, что как только A запрашивает отправку (RTS), он будет немедленно разрешен (CTS) и сделает обнаружение B Несущий сигнал (CD). TXD терминала A соединен с RXD терминала B, и A отправляет, а B принимает.

2. Упрощенный способ подключения RS232.

Исходные RTS и CTS используются, чтобы спросить и ответить, можно ли передавать данные. Но в этом режиме соединения он просто сообщает другой стороне, могут ли они общаться. В настоящее время для управления потоком данных могут использоваться как RTS, так и DTR.

DTR (готовность устройства данных) на стороне A. Когда сторона B готова, DTR (готовность устройства данных) на стороне B отправляет сигнал DSR (устройство связи готово) на стороне A. Затем вы можете контролировать связь через RTS (запрос на отправку) и DTR (разрешить отправку).

3. Дальнейшее упрощение (то есть на основе RTS / CTS)

Как видно из вышеупомянутого процесса, аппаратное управление потоком в основном контролируется RTS / CTS и DTR / DSR, но люди ленивы и ленивы, поэтому теперь часто они просто используют RTS / CTS, чтобы сообщить другой стороне, могут ли они общаться. , И пропустить определение состояния готовности DTR / DSR напрямую

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

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

Пять, программное управление потоком

Программный контроль потока(Программное управление потоком) — это метод управления потоком в канале компьютерных данных, особенно подходящий для последовательной связи RS-232; он использует специальные символы для передачи внутриполосной сигнализации, а также вызываются специальные кодированные символы.XOFFпротив XON(Соответственно расшифровываются "передача выключена" и "передача включена"). Поэтому его также называют «управление потоком XON / XOFF»;

Используйте набор символов ASCII, XOFF — обычно байтовое значение 19 (десятичное), XON — байтовое значение 17

Кодовое имя смысл ASCII Десятичный Шестнадцатеричный
XOFF Приостановить передачу DC3 19 13
XON Возобновить передачу DC1 17 11

Стоит отметить, что получатель отправляет отправителю сигналы XON / XOFF, чтобы контролировать, когда отправитель отправляет данные.Эти сигналы противоположны направлению передачи отправленных данных.

Его обработка в основном заключается в следующем: получатель использует сигнал XON, чтобы сообщить отправителю, что я готов принять больше данных, и использует сигнал XOFF, чтобы сказать отправителю прекратить отправку данных, пока получатель не отправит сигнал XON, чтобы сообщить отправителю, что я снова готов. .

XON / XOFF — это внутриполосный метод, который работает между терминалами, но оба конца должны поддерживать этот протокол, и при его внезапном запуске может возникнуть путаница; XON / XOFF может работать на 3-проводных интерфейсах.

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

XON / XOFF, как правило, не рекомендуются. Рекомендуется заменить их потоком управления RTS / CTS. Потому что, если вы передаете двоичные данные, в отправляемых вами данных могут быть двоичные значения, соответствующие XON и XOFF, что может привести к неправильной работе. Это дефект программного управления потоком, и аппаратное управление потоком не будет иметь этой проблемы; конечно, вы Вы также можете избежать XON и XOFF

Шесть, управление нижним уровнем UART

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

Управление потоком xon xoff что это

info@usriot.ru

  1. Что такое программное управление потоком Xon/Xoff?

Xon/Xoff — это программный механизм управления потоком.

Его можно использовать только в символьно-ориентированной передаче данных (не в двоичной передаче), поскольку он основан на использовании предварительно определенных символов Xon и Xoff. Основная идея проста: когда буфер приемника заполняется до такой степени, что он больше не может принимать данные, он выдает Xoff (отключение передачи) передатчику. Когда передатчик видит символ Xoff, он прекращает передачу. Он возобновится только после того, как увидит соответствующий Xon.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *