(5) 设置停止位,通过激活c_cflag中的CSTOP实现。若停止位为1,则清除CSTOPB,若停止位为2,则激活CSTOP
newtio.c_cflag &= ~CSTOPB; /*停止位设置为1*/ Newtio.c_cflag |= CSTOPB; /*停止位设置为2 */(6) 设置流控
newtio.c_cfag |= CRTSCTS /*开启硬件流控 */ newtio.c_cfag |= (IXON | IXOFF | IXANY); /*开启软件流控*/(7) 奇偶检验位设置,使用c_cflag和c_ifag.
设置奇校验
设置偶校验
newtio.c_iflag |= (INPCK | ISTRIP); newtio.c_cflag |= PARENB; newtio.c_cflag |= ~PARODD;(8) 设置最少字符和等待时间,对于接收字符和等待时间没有什么特别的要求,可设置为0:
newtio.c_cc[VTIME] = 0; newtio.c_cc[VMIN] = 0;(9) 处理要写入的引用对象
tcflush函数刷清(抛弃)输入缓冲(终端程序已经接收到,但用户程序尚未读)或输出缓冲(用户程序已经写,但未发送)。