![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TDCB
balepa © (2007-01-22 07:52:00)Есть код на C++
Com.Parametr.fBinary = 1;
Com.Parametr.fParity = false; //None
Com.Parametr.fOutxCtsFlow = false; // CTS output flow control
Com.Parametr.fOutxDsrFlow = false; // DSR output flow control
Com.Parametr.fDtrControl = 1;//DTR_CONTROL_DISABLE; // DTR flow control type
Com.Parametr.fDsrSensitivity = false; // DSR sensitivity
Com.Parametr.fTXContinueOnXoff = false; // XOFF continues Tx
Com.Parametr.fOutX = false;
Com.Parametr.fInX = false;
Com.Parametr.fErrorChar = false;
Com.Parametr.fNull = false;
Com.Parametr.fRtsControl = 3; // RTS flow control
Com.Parametr.fAbortOnError = 1; // abort reads/writes on error
Com.Parametr.fDummy2 = false;
В Delphi есть в TDCB, поле flags:Longint как выставить такие же параметры (см. выше)
MBo (2007-01-23 08:41:00) [1]dcb_RTSControl = $00003000
каждая 16-ричная цифра - 4 бита, так что
shl 12
balepa (2007-01-23 08:30:00) [2]Param or (3 shl сколькотамнужно)
А сколькотамнужно?
Извеняюсь за непонимание
balepa (2007-01-23 05:18:00) [3]
> MBo © (22.01.07 08:41) [3]
Сенкс
MBo (2007-01-22 08:41:00) [4]RTSControl занимает два бита,
3 = RTS_CONTROL_TOGGLE
Param or (3 shl сколькотамнужно)
balepa (2007-01-22 08:29:00) [5]Спасибо Mbo
что с помощью битовой логики я понял,
Не понял вот это
Com.Parametr.fRtsControl = 3; // RTS flow control
MBo (2007-01-22 08:23:00) [6]с помощью битовой логики - or, and, shl
в помощь - маски полей:
dcb_Binary = $00000001;
dcb_Parity = $00000002;
dcb_OutxCTSFlow = $00000004;
dcb_OutxDSRFlow = $00000008;
dcb_DTRControl = $00000030;
dcb_DSRSensivity = $00000040;
dcb_TxContinueOnXoff = $00000080;
dcb_OutX = $00000100;
dcb_InX = $00000200;
dcb_ErrorChar = $00000400;
dcb_Null = $00000800;
dcb_RTSControl = $00003000;
dcb_AbortOnError = $00004000;