Структура DCB (winbase.h)
Определяет параметр управления для устройства последовательной связи.
Синтаксис
typedef struct _DCB {
DWORD DCBlength;
DWORD BaudRate;
DWORD fBinary : 1;
DWORD fParity : 1;
DWORD fOutxCtsFlow : 1;
DWORD fOutxDsrFlow : 1;
DWORD fDtrControl : 2;
DWORD fDsrSensitivity : 1;
DWORD fTXContinueOnXoff : 1;
DWORD fOutX : 1;
DWORD fInX : 1;
DWORD fErrorChar : 1;
DWORD fNull : 1;
DWORD fRtsControl : 2;
DWORD fAbortOnError : 1;
DWORD fDummy2 : 17;
WORD wReserved;
WORD XonLim;
WORD XoffLim;
BYTE ByteSize;
BYTE Parity;
BYTE StopBits;
char XonChar;
char XoffChar;
char ErrorChar;
char EofChar;
char EvtChar;
WORD wReserved1;
} DCB, *LPDCB;
Члены
DCBlength
Длина структуры в байтах. Вызывающий объект должен присвоить этому члену значение sizeof(DCB)
.
BaudRate
Скорость передачи данных, с которой работает устройство связи. Этот элемент может быть фактическим значением скорости передачи данных или одним из следующих индексов.
fBinary
Если этот элемент имеет значение TRUE, то включен двоичный режим. Windows не поддерживает передачу в небиновом режиме, поэтому этот элемент должен иметь значение TRUE.
fParity
Если этот элемент имеет значение TRUE, выполняется проверка четности и сообщается об ошибках.
fOutxCtsFlow
Если этот элемент имеет значение TRUE, сигнал CTS (очистить для отправки) отслеживается для управления потоком вывода. Если этот элемент имеет значение TRUE и CTS отключен, выходные данные приостанавливаются до тех пор, пока cts не будет отправлена снова.
fOutxDsrFlow
Если этот элемент имеет значение TRUE, сигнал DSR (data-set-ready) отслеживается для управления потоком вывода. Если этот элемент имеет значение TRUE и DSR отключен, выходные данные приостанавливаются до тех пор, пока DSR не будет отправлен снова.
fDtrControl
Элемент управления потоком DTR (data-terminal-ready). Этот элемент может иметь одно из следующих значений.
Значение | Значение |
---|---|
|
Отключает строку DTR при открытии устройства и оставляет ее отключенной. |
|
Включает линию DTR при открытии устройства и оставляет ее включенной. |
|
Включает подтверждение DTR. Если подтверждение включено, приложение может настроить строку с помощью функции EscapeCommFunction . |
fDsrSensitivity
Если этот элемент имеет значение TRUE, драйвер связи чувствителен к состоянию сигнала DSR. Драйвер игнорирует все полученные байты, если только линия ввода модема DSR не имеет большого значения.
fTXContinueOnXoff
Если этот элемент имеет значение TRUE, передача продолжается после того, как входной буфер заполнится в байтах XoffLim и драйвер передал символ XoffChar , чтобы прекратить получение байтов. Если этот элемент имеет значение FALSE, передача не продолжается до тех пор, пока входной буфер не перейдет в байты XonLim после того, как он пуст, и драйвер не переведет символ XonChar для возобновления приема.
fOutX
Указывает, используется ли управление потоком XON/XOFF во время передачи. Если этот элемент имеет значение TRUE, передача останавливается при получении символа XoffChar и начинается снова при получении символа XonChar .
fInX
Указывает, используется ли управление потоком XON/XOFF во время приема. Если этот член имеет значение TRUE, символ XoffChar отправляется, когда входной буфер попадает в байты XoffLim после заполнения, а символ XonChar отправляется, когда входной буфер попадает в байты XonLim после того, как он пуст.
fErrorChar
Указывает, заменяются ли байты, полученные с ошибками четности, символом, заданным элементом ErrorChar . Если этот элемент имеет значение TRUE , а элемент fParity имеет значение TRUE, происходит замена.
fNull
Если этот элемент имеет значение TRUE, при получении пустые байты удаляются.
fRtsControl
Элемент управления потоком RTS (запрос к отправке). Этот элемент может иметь одно из следующих значений.
Значение | Значение |
---|---|
|
Отключает строку RTS при открытии устройства и оставляет ее отключенной. |
|
Включает строку RTS при открытии устройства и оставляет ее включенной. |
|
Включает подтверждение RTS. Драйвер вызывает строку RTS, когда буфер "упреждающего типа" (входные данные) заполнен менее чем на половину, и опускает строку RTS, если буфер заполнен более чем на три четверти. Если подтверждение включено, приложение может настроить строку с помощью функции EscapeCommFunction . |
|
Указывает, что строка RTS будет высокой, если для передачи доступны байты. После отправки всех буферизированных байтов строка RTS будет низкой. |
fAbortOnError
Если этот элемент имеет значение TRUE, драйвер завершает все операции чтения и записи с состоянием ошибки в случае возникновения ошибки. Драйвер не будет принимать дальнейшие операции связи, пока приложение не подтвердит ошибку, вызвав функцию ClearCommError .
fDummy2
Защищены; не использовать.
wReserved
Защищены; значение должно быть равно нулю.
XonLim
Минимальное количество используемых байтов, разрешенное во входном буфере перед активацией управления потоком, чтобы разрешить передачу отправителем. Предполагается, что элемент управления входным потоком XON/XOFF, RTS или DTR указан в элементах fInX, fRtsControl или fDtrControl .
XoffLim
Минимальное количество свободных байтов, разрешенных во входном буфере до активации управления потоком, чтобы запретить отправителю. Обратите внимание, что отправитель может передавать символы после активации сигнала управления потоком, поэтому это значение никогда не должно быть равным нулю. Предполагается, что элемент управления входным потоком XON/XOFF, RTS или DTR указан в элементах fInX, fRtsControl или fDtrControl . Максимально допустимое число байтов вычисляется путем вычитания этого значения из размера входного буфера в байтах.
ByteSize
Количество переданных и полученных битов в байтах.
Parity
Используемая схема четности. Этот элемент может иметь одно из следующих значений.
Значение | Значение |
---|---|
|
Даже паритет. |
|
Пометка четности. |
|
Нет четности. |
|
Нечетная четность. |
|
Четность пространства. |
StopBits
Количество используемых стоп-битов. Этот элемент может иметь одно из следующих значений.
Значение | Значение |
---|---|
|
1 стоп-бит. |
|
1,5 стоп-бита. |
|
2 стоп-бита. |
XonChar
Значение символа XON для передачи и приема.
XoffChar
Значение символа XOFF для передачи и приема.
ErrorChar
Значение символа, используемого для замены полученных байтов ошибкой четности.
EofChar
Значение символа, используемого для обозначения конца данных.
EvtChar
Значение символа, используемого для передачи сигнала о событии.
wReserved1
Защищены; не использовать.
Комментарии
Если для настройки 8250 используется структура DCB , к значениям, указанным для членов ByteSize и StopBits , применяются следующие ограничения:
- Количество битов данных должно быть от 5 до 8 бит.
- Использование 5 битов данных с 2 стоп-битами является недопустимым сочетанием, как и 6, 7 или 8 битов данных с 1,5 стоп-битами.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP |
Минимальная версия сервера | Windows Server 2003 |
Верхняя часть | winbase.h (включая Windows.h) |