找回密码
 立即注册
收起左侧

QextSerialPort的问题?

3
回复
8180
查看
[复制链接]
累计签到:1 天
连续签到:1 天
来源: 2013-7-9 13:25:12 显示全部楼层 |阅读模式
1Qter豆
QextSerialPort 1.2-beta在工控机linux平台, 使用myCom = new QextSerialPort("/dev/ttyS0")无法发送数据,执行  myCom->write(buf);就出错退出。
但是使用 posix_qextserialport.h , myCom = new Posix_QextSerialPort("/dev/ttyS0",QextSerialBase:olling)却是正常的;
这是QueryMode mode = EventDriven的原因吗?应该如何修改myCom = new QextSerialPort("/dev/ttyS0")?

   

最佳答案

查看完整内容

应该和polling没有什么关系。polling或者是event只是和接收有关系,和发送没有什么关系。发送的时候要注意,串口本身的速度就比较慢,如果你发送数据过快,就会出问题了。这一点需要注意。
回复

使用道具 举报

累计签到:181 天
连续签到:1 天
2013-7-9 13:25:13 显示全部楼层
应该和polling没有什么关系。polling或者是event只是和接收有关系,和发送没有什么关系。发送的时候要注意,串口本身的速度就比较慢,如果你发送数据过快,就会出问题了。这一点需要注意。
回复

使用道具 举报

累计签到:181 天
连续签到:1 天
2013-7-9 23:40:34 显示全部楼层
你试试这样 myCom = new QextSerialPort("/dev/ttyS0",QextSerialBase:olling);
看看行不行。另外,是不是因为open的时候出错了,才会引起write的时候出错?
回复

使用道具 举报

累计签到:1 天
连续签到:1 天
2013-7-11 13:39:29 显示全部楼层
hzzhou 发表于 2013-7-9 23:40
你试试这样 myCom = new QextSerialPort("/dev/ttyS0",QextSerialBaselling);
看看行不行。另外,是不 ...

应该使用myCom = new QextSerialPort("/dev/ttyS0",QextSerialPort:olling);就可以了。但是  connect(obotimer, SIGNAL(timeout()), this, SLOT(sendMsg()));连续发送数据却不行,原因是否与polling有关?


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了