Skip to content

Latest commit

 

History

History
595 lines (483 loc) · 14 KB

ns-winbase-dcb.md

File metadata and controls

595 lines (483 loc) · 14 KB
UID title description helpviewer_keywords old-location tech.root ms.assetid ms.date ms.keywords req.header req.include-header req.target-type req.target-min-winverclnt req.target-min-winversvr req.kmdf-ver req.umdf-ver req.ddi-compliance req.unicode-ansi req.idl req.max-support req.namespace req.assembly req.type-library req.lib req.dll req.irql targetos req.typenames req.redist ms.custom f1_keywords dev_langs topic_type api_type api_location api_name
NS:winbase._DCB
DCB (winbase.h)
Defines the control setting for a serial communications device.
*LPDCB
CBR_110
CBR_115200
CBR_1200
CBR_128000
CBR_14400
CBR_19200
CBR_2400
CBR_256000
CBR_300
CBR_38400
CBR_4800
CBR_57600
CBR_600
CBR_9600
DCB
DCB structure
DTR_CONTROL_DISABLE
DTR_CONTROL_ENABLE
DTR_CONTROL_HANDSHAKE
EVENPARITY
LPDCB
LPDCB structure pointer
MARKPARITY
NOPARITY
ODDPARITY
ONE5STOPBITS
ONESTOPBIT
RTS_CONTROL_DISABLE
RTS_CONTROL_ENABLE
RTS_CONTROL_HANDSHAKE
RTS_CONTROL_TOGGLE
SPACEPARITY
TWOSTOPBITS
_DCB
_win32_dcb_str
base.dcb_str
winbase/DCB
winbase/LPDCB
base\dcb_str.htm
base
9dccd2c6-44b7-4609-a2b9-9815430bf3c7
12/05/2018
*LPDCB, CBR_110, CBR_115200, CBR_1200, CBR_128000, CBR_14400, CBR_19200, CBR_2400, CBR_256000, CBR_300, CBR_38400, CBR_4800, CBR_57600, CBR_600, CBR_9600, DCB, DCB structure, DTR_CONTROL_DISABLE, DTR_CONTROL_ENABLE, DTR_CONTROL_HANDSHAKE, EVENPARITY, LPDCB, LPDCB structure pointer, MARKPARITY, NOPARITY, ODDPARITY, ONE5STOPBITS, ONESTOPBIT, RTS_CONTROL_DISABLE, RTS_CONTROL_ENABLE, RTS_CONTROL_HANDSHAKE, RTS_CONTROL_TOGGLE, SPACEPARITY, TWOSTOPBITS, _DCB, _win32_dcb_str, base.dcb_str, winbase/DCB, winbase/LPDCB
winbase.h
Windows.h
Windows
Windows XP
Windows Server 2003
Windows
DCB, *LPDCB
19H1
_DCB
winbase/_DCB
LPDCB
winbase/LPDCB
DCB
winbase/DCB
c++
APIRef
kbSyntax
HeaderDef
Winbase.h
DCB

DCB structure

-description

Defines the control setting for a serial communications device.

-struct-fields

-field DCBlength

The length of the structure, in bytes. The caller must set this member to sizeof(DCB).

-field BaudRate

The baud rate at which the communications device operates. This member can be an actual baud rate value, or one of the following indexes.

Value Meaning
CBR_110
110
110 bps
CBR_300
300
300 bps
CBR_600
600
600 bps
CBR_1200
1200
1200 bps
CBR_2400
2400
2400 bps
CBR_4800
4800
4800 bps
CBR_9600
9600
9600 bps
CBR_14400
14400
14400 bps
CBR_19200
19200
19200 bps
CBR_38400
38400
38400 bps
CBR_57600
57600
57600 bps
CBR_115200
115200
115200 bps
CBR_128000
128000
128000 bps
CBR_256000
256000
256000 bps

-field fBinary

If this member is TRUE, binary mode is enabled. Windows does not support nonbinary mode transfers, so this member must be TRUE.

-field fParity

If this member is TRUE, parity checking is performed and errors are reported.

-field fOutxCtsFlow

If this member is TRUE, the CTS (clear-to-send) signal is monitored for output flow control. If this member is TRUE and CTS is turned off, output is suspended until CTS is sent again.

-field fOutxDsrFlow

If this member is TRUE, the DSR (data-set-ready) signal is monitored for output flow control. If this member is TRUE and DSR is turned off, output is suspended until DSR is sent again.

-field fDtrControl

The DTR (data-terminal-ready) flow control. This member can be one of the following values.

Value Meaning
DTR_CONTROL_DISABLE
0x00
Disables the DTR line when the device is opened and leaves it disabled.
DTR_CONTROL_ENABLE
0x01
Enables the DTR line when the device is opened and leaves it on.
DTR_CONTROL_HANDSHAKE
0x02
Enables DTR handshaking. If handshaking is enabled, it is an error for the application to adjust the line by using the EscapeCommFunction function.

-field fDsrSensitivity

If this member is TRUE, the communications driver is sensitive to the state of the DSR signal. The driver ignores any bytes received, unless the DSR modem input line is high.

-field fTXContinueOnXoff

If this member is TRUE, transmission continues after the input buffer has come within XoffLim bytes of being full and the driver has transmitted the XoffChar character to stop receiving bytes. If this member is FALSE, transmission does not continue until the input buffer is within XonLim bytes of being empty and the driver has transmitted the XonChar character to resume reception.

-field fOutX

Indicates whether XON/XOFF flow control is used during transmission. If this member is TRUE, transmission stops when the XoffChar character is received and starts again when the XonChar character is received.

-field fInX

Indicates whether XON/XOFF flow control is used during reception. If this member is TRUE, the XoffChar character is sent when the input buffer comes within XoffLim bytes of being full, and the XonChar character is sent when the input buffer comes within XonLim bytes of being empty.

-field fErrorChar

Indicates whether bytes received with parity errors are replaced with the character specified by the ErrorChar member. If this member is TRUE and the fParity member is TRUE, replacement occurs.

-field fNull

If this member is TRUE, null bytes are discarded when received.

-field fRtsControl

The RTS (request-to-send) flow control. This member can be one of the following values.

Value Meaning
RTS_CONTROL_DISABLE
0x00
Disables the RTS line when the device is opened and leaves it disabled.
RTS_CONTROL_ENABLE
0x01
Enables the RTS line when the device is opened and leaves it on.
RTS_CONTROL_HANDSHAKE
0x02
Enables RTS handshaking. The driver raises the RTS line when the "type-ahead" (input) buffer is less than one-half full and lowers the RTS line when the buffer is more than three-quarters full. If handshaking is enabled, it is an error for the application to adjust the line by using the EscapeCommFunction function.
RTS_CONTROL_TOGGLE
0x03
Specifies that the RTS line will be high if bytes are available for transmission. After all buffered bytes have been sent, the RTS line will be low.

-field fAbortOnError

If this member is TRUE, the driver terminates all read and write operations with an error status if an error occurs. The driver will not accept any further communications operations until the application has acknowledged the error by calling the ClearCommError function.

-field fDummy2

Reserved; do not use.

-field wReserved

Reserved; must be zero.

-field XonLim

The minimum number of bytes in use allowed in the input buffer before flow control is activated to allow transmission by the sender. This assumes that either XON/XOFF, RTS, or DTR input flow control is specified in the fInX, fRtsControl, or fDtrControl members.

-field XoffLim

The minimum number of free bytes allowed in the input buffer before flow control is activated to inhibit the sender. Note that the sender may transmit characters after the flow control signal has been activated, so this value should never be zero. This assumes that either XON/XOFF, RTS, or DTR input flow control is specified in the fInX, fRtsControl, or fDtrControl members. The maximum number of bytes in use allowed is calculated by subtracting this value from the size, in bytes, of the input buffer.

-field ByteSize

The number of bits in the bytes transmitted and received.

-field Parity

The parity scheme to be used. This member can be one of the following values.

Value Meaning
EVENPARITY
2
Even parity.
MARKPARITY
3
Mark parity.
NOPARITY
0
No parity.
ODDPARITY
1
Odd parity.
SPACEPARITY
4
Space parity.

-field StopBits

The number of stop bits to be used. This member can be one of the following values.

Value Meaning
ONESTOPBIT
0
1 stop bit.
ONE5STOPBITS
1
1.5 stop bits.
TWOSTOPBITS
2
2 stop bits.

-field XonChar

The value of the XON character for both transmission and reception.

-field XoffChar

The value of the XOFF character for both transmission and reception.

-field ErrorChar

The value of the character used to replace bytes received with a parity error.

-field EofChar

The value of the character used to signal the end of data.

-field EvtChar

The value of the character used to signal an event.

-field wReserved1

Reserved; do not use.

-remarks

When a DCB structure is used to configure the 8250, the following restrictions apply to the values specified for the ByteSize and StopBits members:

  • The number of data bits must be 5 to 8 bits.
  • The use of 5 data bits with 2 stop bits is an invalid combination, as is 6, 7, or 8 data bits with 1.5 stop bits.

-see-also

BuildCommDCB

ClearCommError

EscapeCommFunction

GetCommState

SetCommState