Подтвердить что ты не робот

В чем разница между DTR/DSR и управлением потоком RTS/CTS?

Какая разница между управлением потоком DTR/DSR и RTS/CTS? Когда каждый из них используется? Почему нам требуется более одного вида контроля аппаратного потока?:)

4b9b3361

Ответ 1

  • DTR - терминал данных готов
  • DSR - набор данных готов
  • РТС - Запрос на отправку
  • CTS - Очистить для отправки

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

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

РЕДАКТИРОВАТЬ

Чтобы добавить немного больше деталей, это двухуровневая иерархия, так что "официально" оба должны происходить, чтобы происходило общение. Поведение определено в первоначальном стандарте CCITT (теперь ITU-T) V.28.

enter image description here

DCE - это модем, соединяющий терминал с телефонной сетью. В телефонной сети была другая часть оборудования, которая отсоединилась к сети передачи данных, например. X.25.

Модем имеет три состояния: выключен, готов (набор данных готов к работе) и подключен (обнаружение несущей данных)

Терминал ничего не может сделать, пока модем не подключен.

Когда модем хочет отправить данные, он поднимает RTS, и модем передает запрос с CTS. Модем понижает CTS, когда его внутренний буфер заполнен.

Так ностальгирует!

Ответ 2

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

Ответ 3

Я добавил в свою диапе пи-пи-пи- пу

Ответ 4

Важным отличием является то, что некоторые UART (в частности, 16550) немедленно прекращают прием символов, если их хост указывает им отключить DSR. Напротив, символы все равно будут получены, если CTS неактивен. Я полагаю, что здесь подразумевается, что DSR указывает, что устройство больше не прослушивает, и поэтому отправка любых дальнейших символов не имеет смысла, в то время как CTS указывает, что буфер переполняется; последний допускает определенное количество "заноса", когда линия управления потоком изменила состояние между DTE, выполняющим выборку, и следующим передаваемым символом. В (относительно) более поздних устройствах, которые поддерживают аппаратный FIFO, возможно, что ряд символов может быть передан после того, как DCE установит CTS в неактивное состояние.