QTserial 的问题

QSerialPort readyread()函数卡死

 

 

看了网上一个帖子:

分析:QSerialPort QTcpIp等资源属于硬件资源,此资源数据收发由程序QCoreApplication循环事件处理。

解决办法:1.确保QSerialPort QTcpIp等资源必须由主线程创建

2.阻塞收发数据时,必须调用QCoreApplication::processEvents();

Solve:

将子函数中的  serial.open(QIODevice::ReadWrite) 该写到 ui 的构造函数中,在主线程中创建

 

posted @ 2024-04-08 13:40  GeraldG  阅读(18)  评论(0编辑  收藏  举报