GetCommState
GetCommState函数的第一个参数hFile是由CreateFile函数返回指向已打开串行口的句柄。
简介
GetCommState 读取串口设置(波特率,校验,停止位,数据位等).
函数声明:
BOOL GetCommState(
HANDLEhFile,
LPDCBlpDCB
);
GetCommState函数的第一个参数hFile是由CreateFile函数返回指向已打开串行口的句柄。第二个参数指向设备控制块DCB。如果函数调用成功,则返回值为非0;若函数调用失败,则返回值为0。
当应用程序仅仅需要修改一部分串行口的配置值时,可以通过GetCommState函数获得当前的DCB结构,然后更改参数,再调用SetCommState函数设置修改过的DCB来配置串行口。
扩充
一般用CreateFile打开串口后,可以调用GetCommState函数来获取串口的初始配置。要修改串口的配置,应该先修改DCB结构,然后再调用SetCommState函数设置串口。
DCB结构包含了串口的各项参数设置,下面仅介绍几个该结构常用的变量:
typedefstruct _DCB { //………//波特率,指定通信设备的传输速率。这个成员可以是实际波特率值或者下面的常量值之一:
DWORD BaudRate; //CBR_110,CBR_300,CBR_600,CBR_1200,CBR_2400,CBR_4800,CBR_9600,CBR_19200, CBR_38400,
//CBR_56000, CBR_57600, CBR_115200, CBR_128000, CBR_256000, CBR_14400 DWORD
fParity; // 指定奇偶校验使能。若此成员为1,允许奇偶校验检查 //…
BYTE ByteSize; // 通信字节位数,4—8
BYTE Parity; //指定奇偶校验方法。此成员可以有下列值:
//EVENPARITY 偶校验 NOPARITY 无校验//MARKPARITY 标记校验 ODDPARITY 奇校验