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

使用QextSerial如何收到一定的字符后再发信号?

7
回复
7373
查看
[复制链接]

尚未签到

来源: 2013-7-5 11:34:17 显示全部楼层 |阅读模式
1Qter豆
请教各位,使用QextSeria串口通信,使用事件触发,l如何收到一定的字符后再发信号?谢谢

最佳答案

查看完整内容

收到一定的字符就发信号!这里是收到某一个字符呢,还是某一串字符呢? 如果是只判断一个字符,那每次就判断吧!如何一直循环执行,也可以设置单独线程来完成。 如果是判断一串字符,也可以把字符串先保留下来,后面一起判断。 yafeilinux.com上面的串口专题教程里面有些介绍和探索,可以参考一下。 ...
回复

使用道具 举报

累计签到:1572 天
连续签到:1 天
2013-7-5 11:34:18 显示全部楼层
vcip 发表于 2013-7-8 09:12
不过看打印信息,似乎是每收到一个字符就触发一次。与驱动有关?


收到一定的字符就发信号!这里是收到某一个字符呢,还是某一串字符呢?

如果是只判断一个字符,那每次就判断吧!如何一直循环执行,也可以设置单独线程来完成。
如果是判断一串字符,也可以把字符串先保留下来,后面一起判断。

yafeilinux.com上面的串口专题教程里面有些介绍和探索,可以参考一下。
回复

使用道具 举报

尚未签到

2013-7-5 11:43:34 显示全部楼层
一般都是在槽函数中用bytesAvailable()来决定要不要做什么事情
回复

使用道具 举报

尚未签到

2013-7-5 14:00:09 显示全部楼层
竞风 发表于 2013-7-5 11:43
一般都是在槽函数中用bytesAvailable()来决定要不要做什么事情

可是这样的话,接收一个字符就要判断一次,没有效率呀。
回复

使用道具 举报

累计签到:1572 天
连续签到:1 天
2013-7-6 11:03:32 显示全部楼层
我记得应该是每接受几个字符就会自动触发事件,这时可以读取这些字符,然后匹配判断,如果有指定的字符就发信号!
回复

使用道具 举报

尚未签到

2013-7-8 09:12:08 显示全部楼层
不过看打印信息,似乎是每收到一个字符就触发一次。与驱动有关?
回复

使用道具 举报

尚未签到

2013-7-11 15:26:20 显示全部楼层
我的意思是可以设定,例如,设定收到32个字符后,才触发信号,通知读取,这样就不用每个字符进行判断了。不知能做到吗?
回复

使用道具 举报

累计签到:181 天
连续签到:1 天
2013-7-11 16:40:23 显示全部楼层
应该是不能这样设定的,这个是linux和QT的机制决定的。只能通过软件来进行判断。效率的问题其实你不用太担心,现在的处理器的速度已经够快了,不差这一点。每次进行判断所消耗的资源也许只有总资源的0.0001%。人是根本不可能感觉到的。
回复

使用道具 举报

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

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