Рукопожатие последовательного порта.Какая разница между аппаратным и None handshaking - PullRequest
4 голосов
/ 28 сентября 2011

Я пытаюсь определить разницу при открытии последовательного порта с аппаратным рукопожатием и без рукопожатия .

Кажется, чтов обоих случаях я должен контролировать сигналы RTS/CTS (только что проверил это с одним устройством COM).Так в чем же разница между открытием последовательного порта аппаратным и без установления связи?

Из моего предыдущего понимания, когда мы работаем without handshaking, нас не волнуют сигналы RTS/CTS и DTR/DSR.Просто отправляйте и получайте данные, когда захотите.Был ли я не прав?

Еще один вопрос.Можем ли мы работать without handshaking только в режиме full duplex?

Ответы [ 2 ]

6 голосов
/ 28 сентября 2011

Как вы, наверное, знаете, проблема заключается в "управлении потоком". Например, песня Clash «Должен ли я остаться или мне идти?».

RTS / CTS - аппаратное управление. XON / XOFF - это программное управление. В противном случае "просто продолжай идти".

Эта ссылка может объяснить дополнительно:

http://www.lammertbies.nl/comm/info/RS-232_flow_control.html

Я подозреваю, что когда вы спрашивали о «рукопожатии» в отношении «дуплекса», возможно, вы имели в виду следующее:

http://en.wikipedia.org/wiki/RS-232

В более старых версиях спецификации RS-232 использует RTS и Линии CTS асимметричны: DTE утверждает RTS, чтобы указать на желание передавать в DCE, и DCE утверждает CTS в ответ на предоставление разрешение. Это позволяет полудуплексные модемы, которые отключают их передатчики, когда не требуется, и должны передавать синхронизацию преамбула к получателю при повторном включении.

Надеюсь, это поможет!

1 голос
/ 23 декабря 2013

Разница заключается в том, будет ли ядро ​​обращать внимание на строки CTS / RTS при принятии решения, отправлять больше данных или нет. С включенным аппаратным подтверждением связи оно будет. Если для него задано значение none, оно не будет выполняться, даже если строки CTS / RTS могут оставаться утвержденными, так что узел будет знать, что он может отправлять данные.

...