一杯清酒邀明月
天下本无事,庸人扰之而烦耳。

楼主在开发公司的串口下载软件时,测试人员了提了一个问题:如果已经打开的一个串口,被我不小心关闭了怎么办??
楼主一开始想到的就是信号槽去做,然后果断查询资料,果然发现有以下的信号

 楼主用的Qt是5.9.0,所以只要连接信号即可,然后在槽函数里面做处理即可
核心代码(假设此时串口已经被打开)

connect(pSerialPort_, SIGNAL(error(QSerialPort::SerialPortError)), this, SLOT(pSerialPort_onErrorOccurred(QSerialPort::SerialPortError)));

槽函数里面处理

1 在这里插入代码片
2 if (e == QSerialPort::ResourceError)
3 {
4     qDebug() << QStringLiteral("串口被拔出!");
5     // 其他处理......
6 }    

 

posted on 2022-11-09 14:20  一杯清酒邀明月  阅读(173)  评论(0编辑  收藏  举报