и принимаемых байтах. Может принимать
ByteSize — определяет число информационных бит в передаваемых и принимаемых байтах. Может принимать значение 4, 5, 6, 7, 8.
Parity — определяет выбор схемы контроля четности. Данное поле должно содержать одно из следующих значений:
- EVENPARITY — дополнение до четности;
- MARKPARITY — бит четности всегда равен 1;
- NOPARITY — бит четности отсутствует;
- ODDPARITY — дополнение до нечетности;
- SPACEPARITY — Бит четности всегда 0.
StopBits — задает количество стоповых бит. Поле может принимать следующие значения:
- ONESTOPBIT — один стоповый бит;
- ONE5STOPBIT — полтора стоповых бита (практически не используется);
- TWOSTOPBIT — два стоповых бита.
После того как все поля структуры DCB заполнены, необходимо произвести конфигурирование порта, вызвав функцию SetCommState:
BOOL SetCommState(HANDLE hFile,LPDCB lpDCB); В случае успешного завершения функция вернет отличное от нуля значение, а в случае ошибки — нуль.
Второй обязательной структурой для настройки порта является структура COMMTIMEOUTS. Она определяет параметры временных задержек при приеме-передаче. Вот описание этой структуры:
typedef struct _COMMTIMEOUTS {DWORD ReadIntervalTimeout;DWORD ReadTotalTimeoutMultiplier;DWORD ReadTotalTimeoutConstant;DWORD WriteTotalTimeoutMultiplier;DWORD WriteTotalTimeoutConstant;} COMMTIMEOUTS,*LPCOMMTIMEOUTS; Поля структуры COMMTIMEOUTS имеют следующие значения:
- ReadIntervalTimeout — максимальное временной промежуток (в миллисекундах), допустимый между двумя считываемыми с коммуникационной линии последовательными символами. Во время операции чтения временной период начинает отсчитываться с момента приема первого символа. Если интервал между двумя последовательными символами превысит заданное значение, операция чтения завершается и все данные, накопленные в буфере, передаются в программу. Нулевое значение данного поля означает, что данный тайм-аут не используется.
- ReadTotalTimeoutMultiplier — задает множитель (в миллисекундах), используемый для вычисления общего тайм-аута операции чтения.
Содержание Назад Вперед