ubuntu下irobot串口通讯

在window下以前就`有一个现成的串口代码。想移植到ubuntu下,发现都不一样了。要重新找个。

折腾了一上午之后,发现自己写这个串口通讯还是有一点难度。

于是,用了github上 Erick Cobos T的代码。写得真是规范。

 

在此基础上,需要进行一些改动。

原来的只发命令,让它走就可以了,可是我要查询传感器数据,读串口的地方要改,否则读不到数据。这里之前都是0

settings.c_cc[VMIN] = 0; /* Update the options and do it NOW */
settings.c_cc[VTIME] = 150; /* 设置超时15 seconds*/   

 

/*
1、VTIME=0,VMIN=0:此时即使读取不到任何数据,函数read也会返回,返回值是0。

2、VTIME=0,VMIN>0:read调用一直阻塞,直到读到VMIN个字符后立即返回。

3、VTIME>0,VMIN=0:read调用读到数据则立即返回,否则将为每个字符最多等待 */

 

 

 

 

参考:
Serial Programming Guide for POSIX Operating Systems 

 

posted @ 2017-03-30 16:49  xy123001  阅读(166)  评论(0编辑  收藏  举报