平台

win10 x64系统
qt 5.14.2
编译x86程序

问题

同步阻塞方式读取串口数据(waitForReadyRead)一直返回timeout

过程

1、用的qt自带的QSerialPort类,新建一个线程专门收发数据,仿真时,串口发送数据后,通过阻塞方式waitForReadyRead(),一直收不到数据 ,waitForReadyRead()一直返回timeout。

2、
1)如果写上"connect(myPort, &QSerialPort::readyRead, this, &SendThread::receiveData)",是可以收到ReadyRead信号,但线程中的waitForReadyRead()仍然返回timeout,神奇的是读取串口是可以读到数据的 ;
2)发送数据后如果不写 waitForReadyRead(),连ReadyRead信号都收不到,这是啥奇奇怪怪的BUG 。
不过这个属于 同步方式(waitForReadyRead) 和异步方式(ReadyRead signal)混用,qt 文档不让这么用!!!!

解决

不管是从国内网站,还是国外网站看了一堆类似的问题,还是没找到解决方案,只能又重新下载了个qt 5.13.2 ,仿真是可以的,吐血。有在qt5.14.2上解决的可以留言告诉我。


经过测试,Qt 5.15.2也是返回timeout,qt5.15在线安装的方式已经够吐血,没想到还存在这问题,头大

qt waitForReadyRead 函数一直返回timeout相关推荐

  1. Qt串口QSerialPort的多线程 及 QSerialPort的waitForReadyRead函数的问题

    文章目录 1.QSerialPort的多线程限制 1.1.尝试通过复制参数在子线程运行 1.1.1.操作原理 1.1.2.QSerialPort::write的异步特性 2.使用QSerialPort ...

  2. Qt 使用C++特性“引用” - 获得槽函数的返回值

    QT信号与槽中,槽函数是可以定义有返回值的,但是我们都是在connect函数中进行调用,那么该如何获得调用后的槽函数的返回值呢? 答案是不可能获得了的! 槽函数虽然可以定义返回值类型,但其实他和信号一 ...

  3. 在qt中用c语言数组,在QT函数中返回一个数组/把一个数组传参给函数

    1.把数组传参给函数 可以定义一个QVector的一个数组 QVector num(10); for(int  i =0;i<10;i++) num [i] = i*i; fun(num); / ...

  4. 百科不全书之QT常用函数

    参考链接: 璎珞qc:Qt之QImage类. 沙振宇:Qt输出打印信息的日志到文件(两种方式). tandesir:Qt测算程序运行时间. 半生瓜のblog [QT]QT容器 百科不全书之QT常用函数 ...

  5. Qt sprintf_s函数格式化字符串出错

    Qt sprintf_s函数格式化字符串出错 问题的出现: 我在VS上用c C++写的跨平台的函数 移植到Qt 上面 出现sprintf_s 函数格式化出错. 开始以为是编码问题  反复查找Qt乱码问 ...

  6. linux下延时函数qt,Qt延时函数

    QT 延时函数包含在一个叫做QThread.h的类中(大小写自己改改) 在使用的时候 注意包含该文件#include 成员函数文档 QThread::QThread () 构造一个新的线程.这个线程将 ...

  7. QT:函数知识点总结

    QChar            表示一个字符的类,包含于QtCore 判断: bool isDigit() const;//判断是否是十进制数字('0'-'9') bool isLetter() c ...

  8. python3 内置函数map 返回的迭代器转为列表

    python3 内置函数map 返回的是迭代器,python2 返回的才是列表, 在python3中想要使用需要把迭代器在转换成列表 list_a = [1, 2, 3, 4, 5]def add(n ...

  9. wpf 窗口的返回值_如何:获取页函数的返回值

    如何:获取页函数的返回值How to: Get the Return Value of a Page Function 03/30/2017 本文内容 本示例显示如何获取页函数的返回值.This ex ...

最新文章

  1. 18段代码带你玩转18个机器学习必备交互工具
  2. Linux查看磁盘分区的命令
  3. codeforces 1039B Subway Pursuit【二分+随机】
  4. php5实现web services
  5. 人生真正拉开距离不是高考!是大学毕业后第一个十年
  6. cuda_error_launch_failed: unspecified launch failure
  7. 服务器项目访问速度,【随心秀】优化1M带宽的云服务器访问速度
  8. Shell脚本加密工具——Shc
  9. java生成生日贺卡代码_【5号课堂】scratch制作电子生日贺卡
  10. 错误No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbala
  11. 有空必须要看的文章(没空也要看)
  12. C# Chart之双Y轴图表实现
  13. AD绘制怎么画3D封装库?
  14. 算法题练习系列之(一):守形数
  15. 详解申请微信h5支付方法,开通微信h5网页支付接口(转)
  16. 使用Navicat将表设计导出数据库设计文档
  17. Android 开发Usb知识
  18. [笔记][总结] MIT线性代数 Gilbert Strang 正交矩阵
  19. SOT-23、SOT-223封装的三极管、MOS管
  20. 手机相册里不能有的四种照片,你有没有中招?

热门文章

  1. 一棵二叉树中总共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为多少个?
  2. 改善简历的47条原则
  3. ASP - 字符串拼接类
  4. python微信库we_python操作微信客户端:WechatPCAPI库实现自动化回复
  5. 在CAD设计的时候怎么使用剪切命令绘制中国结效果?
  6. Android录屏并利用FFmpeg转换成gif(三) 在Android中使用ffmpeg命令
  7. linux下的swap分区
  8. Block multi-queue 架构解析(一)数据结构
  9. 周易卦爻解读笔记——小畜
  10. uniapp h5下载文件