ubuntu下irobot串口通讯

本文分享了作者从Windows环境下的串口编程过渡到Ubuntu环境的经历,并介绍了如何使用ErickCobosT在GitHub上的代码作为基础进行串口通讯开发。文章详细探讨了串口参数配置,特别是对VMIN和VTIME选项的设置进行了深入分析。

在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 

 

转载于:https://www.cnblogs.com/xy123001/p/6646986.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值