Могут ли XON и XOFF быть равны? - PullRequest
0 голосов
/ 19 мая 2009

Может ли приложение использовать один и тот же символ в XON и XOFF? Если да, то как мой драйвер устройства должен справиться с этой ситуацией

Ответы [ 3 ]

3 голосов
/ 19 мая 2009

XON и XOFF - это два разных символа ASCII, поэтому они не могут быть равны.

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

2 голосов
/ 19 мая 2009

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

2 голосов
/ 19 мая 2009

Если ваш драйвер несет единоличную ответственность за обработку xon / xoff, а символы флага xon / xoff могут быть идентичными, то я бы сказал, что вам нужно иметь небольшой конечный автомат (флаг) для состояния xon / xoff в вашем и только ищите xon, когда xoff уже был замечен.

Если у вас есть аппаратная поддержка xon / xoff, вам придется выяснить, поддерживается ли это состояние аппаратным обеспечением, и, если нет, вернуть соответствующие ошибки.

...