最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

串口DCB结构详解

来源:动视网 责编:小OO 时间:2025-10-02 10:55:52
文档

串口DCB结构详解

DCB结构详解成员说明DCBlengthDCB结构大小,即sizeof(DCB),在调用SetCommState来更新DCB前必须作设置BaudRate指定当前采用的波特率,应与所连接的通讯设备相匹配fBinary指定是否允许二进制模式。Win32API不支持非二进制模式传输,应设置为truefParity指定奇偶校验是否允许,在为true时具体采用何种校验看Parity设置Parity 指定端口数据传输的校验方法。以下是可取值及其意义:取值意义EVENPARITY偶校验(2)MARKPARI
推荐度:
导读DCB结构详解成员说明DCBlengthDCB结构大小,即sizeof(DCB),在调用SetCommState来更新DCB前必须作设置BaudRate指定当前采用的波特率,应与所连接的通讯设备相匹配fBinary指定是否允许二进制模式。Win32API不支持非二进制模式传输,应设置为truefParity指定奇偶校验是否允许,在为true时具体采用何种校验看Parity设置Parity 指定端口数据传输的校验方法。以下是可取值及其意义:取值意义EVENPARITY偶校验(2)MARKPARI
DCB结构详解

成员说明
DCBlengthDCB结构大小,即sizeof(DCB),在调用SetCommState来更新DCB前必须作设置

BaudRate指定当前采用的波特率,应与所连接的通讯设备相匹配
fBinary指定是否允许二进制模式。Win32 API不支持非二进制模式传输,应设置为true

fParity指定奇偶校验是否允许,在为true时具体采用何种校验看Parity 设置

Parity

 

指定端口数据传输的校验方法。以下是可取值及其意义:

取值意义
EVENPARITY偶校验(2)

MARKPARITY标记校验,所发信息帧第9位恒为1(3)

NOPARITY无校验(0)

ODDPARITY奇校验(1)

StopBits

 

指定端口当前使用的停止位数,可取值:
取值意义
ONESTOPBIT1停止位(0)

ONE5STOPBITS1.5停止位(1)

TWOSTOPBITS2停止位(2)

fErrorChar该值为TRUE,则用ErrorChar指定的字符代替奇偶校验错误的接收字符

ErrorChar指定ErrorChar字符(代替接收到的奇偶校验发生错误时的字节)

EvtChar当接收到此字符时,会产生一个EV_RXFLAG事件,如果用SetCommMask函数中指定了EV_RXFLAG ,则可用WaitCommEvent 来监测该事件

EofChar指定用于标示数据结束的字符
fNull为TRUE时,接收时自动去掉空(0值)字节

fAbortOnError读写操作发生错误时是否取消操作。若设置为true,则当发生读写错误时,将取消所有读写操作(错误状态置为ERROR_IO_ABORTED),直到调用ClearCommError函数后才能重新进行通讯操作

fOutxCtsFlow是否监控CTS(clear-to-send)信号来做输出流控。当设置为true时:

若CTS为低电平,则数据发送将被挂起,直至CTS变为高。

CTS的信号一般由DCE(通常是一个Modem)来控制,而DTE(通常是计算机)发送数据时监测CTS信号。也就是说DCE通过把CTS置高来表明自己可以接收数据了

fRtsControl设置RTS (request-to-send)流控,若为0则缺省取值 RTS_CONTROL_HANDSHAKE。以下是可取值及其意义:

取值意义
RTS_CONTROL_DISABLE打开设备时置RTS信号为低电平,应用程序可通过调用EscapeCommFunction函数来改变RTS线电平状态

RTS_CONTROL_ENABLE打开设备时置RTS信号为高电平,应用程序可通过调用EscapeCommFunction函数来改变RTS线电平状态

RTS_CONTROL_HANDSHAKE允许RTS信号握手,此时应用程序不能调用EscapeCommFunction函数。当输入缓冲区已经有足够空间接收数据时,驱动程序置RTS为高以便允许DCE来发送;反之置RTS为低以阻止DCE发送数据。

RTS_CONTROL_TOGGLE有字节要发送时RTS变高,当所有缓冲字节已经被发送完毕后,RTS变低。此时应用程序不能调用EscapeCommFunction函数。该值在Windows 95系统被忽略

fOutxDsrFlow是否监控DSR (data-set-ready) 信号来做输出流控。当设置为true时:

若DSR为低电平,则数据发送将被挂起,直至DSR变为高。DSR的信号一般由DCE来控制

fDtrControlDTR (data-terminal-ready)流控,可取值如下:

取值意义
DTR_CONTROL_DISABLE打开设备时置DTR信号为低电平,应用程序可通过调用EscapeCommFunction函数来改变DTR线电平状态

DTR_CONTROL_ENABLE打开设备时置DTR信号为高电平,应用程序可通过调用EscapeCommFunction函数来改变DTR线电平状态

DTR_CONTROL_HANDSHAKE允许DTR信号握手,此时应用程序不能调用EscapeCommFunction函数

fDsrSensitivity通讯设备是否对DSR信号敏感。若设置为TRUE,则当DSR为低时将会忽略所有接收的字节

fTXContinueOnXoff当输入缓冲区满且驱动程序已发出XOFF字符时,是否停止发送。当为TRUE时,XOFF被发送后发送仍然会继续;为FALSE时,发送停止,直至输入缓冲区有XonLim字节的空余空间、驱动程序已发送XON字符之后发送继续。

fOutXXON/XOFF 流量控制在发送时是否可用。如果为TRUE, 当 XOFF 值被收到的时候,发送停止;当 XON 值被收到的时候,发送继续

fInXXON/XOFF 流量控制在接收时是否可用。如果为TRUE, 当 输入缓冲区已接收满XoffLim 字节时,发送XOFF字符;当输入缓冲区已经有XonLim 字节的空余容量时,发送XON字符

XonLim在XON字符发送前接收缓冲区内可允许的最小字节数

XoffLim在XOFF字符发送前接收缓冲区内可允许的最大字节数

XonChar指定XON字符

XoffChar指定XOFF字符

fDummy2保留,未启用
wReserved未启用,必须设置为0

wReserved1保留,未启用

文档

串口DCB结构详解

DCB结构详解成员说明DCBlengthDCB结构大小,即sizeof(DCB),在调用SetCommState来更新DCB前必须作设置BaudRate指定当前采用的波特率,应与所连接的通讯设备相匹配fBinary指定是否允许二进制模式。Win32API不支持非二进制模式传输,应设置为truefParity指定奇偶校验是否允许,在为true时具体采用何种校验看Parity设置Parity 指定端口数据传输的校验方法。以下是可取值及其意义:取值意义EVENPARITY偶校验(2)MARKPARI
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top