linux串口怎样设置设置软件流控制字符
1个回答
2016-10-25 · 知道合伙人数码行家
关注
展开全部
首先,如果我们不是开发串口driver的,而只是用串口来传入自己定义格式的数据,然后根据得到的数据做相关的解释,我们需要设置这些,
options.c_lflag &= ~(ICANON | ECHO | ECHOE | ISIG); /*Input*/
options.c_oflag &= ~OPOST; /*Output*/
然后就是重点,如何设置software flow control,因为自己定义的数据格式中,一般会有标识标识数据开始和结束,如何定义,请看下面:
/* open soft flow control */
options.c_iflag |= (IXON | IXOFF | IXANY);
/* flow start with 0x11, end with 0x13 */
options.c_cc[VSTART] = 0x11;
options.c_cc[VSTOP] = 0x13;
这样,你往串口发送数据时,串口就会认出0x11和0x13之间的数据了。当然,如果你传输的不是ascii,你得控制数据中不会出现0x11和0x13。
options.c_lflag &= ~(ICANON | ECHO | ECHOE | ISIG); /*Input*/
options.c_oflag &= ~OPOST; /*Output*/
然后就是重点,如何设置software flow control,因为自己定义的数据格式中,一般会有标识标识数据开始和结束,如何定义,请看下面:
/* open soft flow control */
options.c_iflag |= (IXON | IXOFF | IXANY);
/* flow start with 0x11, end with 0x13 */
options.c_cc[VSTART] = 0x11;
options.c_cc[VSTOP] = 0x13;
这样,你往串口发送数据时,串口就会认出0x11和0x13之间的数据了。当然,如果你传输的不是ascii,你得控制数据中不会出现0x11和0x13。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询