找回密码
 立即注册
收起左侧
楼主: yafeilinux

Qt串口通信全新专题

125
回复
97613
查看
  [复制链接]
累计签到:1 天
连续签到:1 天
2017-2-21 11:28:44 显示全部楼层
本帖最后由 CX0660 于 2017-2-21 11:33 编辑

下载的Qcom串口调试助手在收发高速信息(比如定时收到50ms/次的4字节数据)的时候,界面会出现卡顿、假死现象(界面上的各个按钮都没法按)。请问这个正常吗?是什么原因造成的?应该怎么解决?我在网上搜索事件驱动可以代替多线程,Qcom是事件驱动的,可为什么还是会卡顿???
回复 支持 反对

使用道具 举报

累计签到:1564 天
连续签到:1 天
2017-2-22 00:48:56 显示全部楼层
CX0660 发表于 2017-2-21 11:28
下载的Qcom串口调试助手在收发高速信息(比如定时收到50ms/次的4字节数据)的时候,界面会出现卡顿、假死现 ...

这个软件只是让大家学习用的,优化的并不好
回复 支持 反对

使用道具 举报

累计签到:1 天
连续签到:1 天
2017-2-22 13:45:43 显示全部楼层
yafeilinux 发表于 2017-2-22 00:48
这个软件只是让大家学习用的,优化的并不好

谢谢您的回复,还想请问下要达到不卡顿,需要我自己在从哪方面进行优化?
回复 支持 反对

使用道具 举报

累计签到:1564 天
连续签到:1 天
2017-2-23 15:52:18 显示全部楼层
CX0660 发表于 2017-2-22 13:45
谢谢您的回复,还想请问下要达到不卡顿,需要我自己在从哪方面进行优化? ...

可以尝试在其他线程处理复杂操作。
回复 支持 反对

使用道具 举报

累计签到:3 天
连续签到:1 天
2017-11-16 12:45:03 显示全部楼层
不支持中文。我现在遇到一个问题:如果中文GBK编码的话,只读到高字节,然后把数据转为Unicode编码,会乱码。这个这么解决呢
回复 支持 反对

使用道具 举报

累计签到:6 天
连续签到:1 天
2018-8-15 15:23:49 显示全部楼层
很棒 学习了 谢谢分享这么细致的东西,每一点滴的进步都感谢大家的分享与帮助
回复 支持 反对

使用道具 举报

累计签到:2 天
连续签到:1 天
2018-8-17 11:38:04 显示全部楼层
本帖最后由 snow11010 于 2018-8-17 11:52 编辑

    老师您好,有个问题想请教您。我用QT 5.6.3自带的modbus示例程序做串口数据收发演示的时候出现问题,问题是自带的示例程序可能不发送modbus请求。    情景:我用VSPD虚拟出两个串口,用SSCOM V5.13.1做modbus从站模拟(接收QT示例程序的请求),用QT自带的modbus Master示例程序进行与串口调试助手(SSCOM)进行通讯。双方参数为:波特率1200、无校验、8位数据位、1位停止位。modbus参数为:地址域-1,功能码-4,起始地址-0,寄存器数量-1;超时重连次数3,超时时间1000ms。(见图片)
    问题详细描述:1. 不发送modbus请求与设置的波特率有关,当9600波特率时,示例程序发送2帧请求帧(最后一帧缺少CRC);当波特率为19200时,示例程序发送4帧请求帧(最后一帧缺少CRC);当波特率为115200时,示例程序发送23帧请求帧(最后一帧缺少CRC);可以发送请求帧的数量与波特率大小成比例。
                           2. 在示例程序中的接收槽readReady()里设置断点,每次点击read按钮触发断点,手动继续执行,这样就不会出现不发送请求帧的问题。
                           3. 当触发不发送请求帧的问题时,QModbusRtuSerialMaster 对象 激发QModbusDevice::ConnectionError错误码,错误字符串为“Resource error.” (源程序155行)
    注:红色标注的文字代表问题现象的猜测,因为我没有定义到错误根源,所以有可能不是不发送,而是SSCOM没收到请求帧。
    希望老师帮忙找出我的问题,~

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

累计签到:2 天
连续签到:1 天
2018-8-20 11:06:50 显示全部楼层
snow11010 发表于 2018-8-17 11:38
老师您好,有个问题想请教您。我用QT 5.6.3自带的modbus示例程序做串口数据收发演示的时候出现问题,问 ...

老师,这个问题暂时性解决了,把VSPD虚拟串口换成真实的串口线做调试就没问题。目前还没有定位到具体原因。
回复 支持 反对

使用道具 举报

累计签到:14 天
连续签到:1 天
2020-6-1 21:03:10 显示全部楼层
哈哈 以前我也用C#做过一个简单的串口助手
回复 支持 反对

使用道具 举报

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

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