当DCB用来控制8250时,对ByteSize和StopBits的设置有如下限制:
1、数据位ByteSize必须为5~8位。
2、5个数据位配两个停止位,或者6、7、8个数据位配1.5个停止位都是不正确的设置。
(摘抄至《Visual C++串口通信编程实践》)
另外,有宏定义:
#define ONESTOPBIT 0
#define ONE5STOPBIT 1
#define TWOSTOPBITS 2
所以如果要设置停止位为ONESTOPBIT时,误填成数字1,SetCommState会返回0(错误),GetLastError会返回87(ERROR_INVALID_PARAMETER:无效参数)。
1、数据位ByteSize必须为5~8位。
2、5个数据位配两个停止位,或者6、7、8个数据位配1.5个停止位都是不正确的设置。
(摘抄至《Visual C++串口通信编程实践》)
另外,有宏定义:
#define ONESTOPBIT 0
#define ONE5STOPBIT 1
#define TWOSTOPBITS 2
所以如果要设置停止位为ONESTOPBIT时,误填成数字1,SetCommState会返回0(错误),GetLastError会返回87(ERROR_INVALID_PARAMETER:无效参数)。