Qt 怎么判断串口是否被拔掉

imkelt 2016-04-02 10:38:32
最近用Qt在做一个串口相关的界面,想实现当串口在打开的状态下如果串口突然被拔掉了,如何去捕捉这个信息,好做出相关反应。
...全文
3223 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
robotRIS 2018-01-20
  • 打赏
  • 举报
回复
connect(serial,SIGNAL(errorOccurred(QSerialPort::SerialPortError)),this,SLOT(handleSerialError(QSerialPort::SerialPortError)));
imkelt 2016-04-14
  • 打赏
  • 举报
回复
引用 4楼haltwang 的回复:
楼主如果用的Qt4,可以参考下iCuteCom: 初始化 m_Com_Monitor = new QextSerialEnumerator(); m_Com_Monitor->setUpNotifications(); 关联信号槽: connect(m_Com_Monitor,SIGNAL(deviceDiscovered(const QextPortInfo&)),this,SLOT(hasComDiscovered(const QextPortInfo&))); connect(m_Com_Monitor,SIGNAL(deviceRemoved(const QextPortInfo&)),this,SLOT(hasComRemoved(const QextPortInfo&))); 做处理就可以了 源代码下载地址: http://download.csdn.net/download/haltwang/5336243 Qt5自带的串口类看下有没有类似的信号发出来,没有的话只有搞个线程持续刷设备列表了
我用Qt5 能不能用Qt5实现一下
草上爬 2016-04-09
  • 打赏
  • 举报
回复
4楼
haltwang 2016-04-08
  • 打赏
  • 举报
回复
楼主如果用的Qt4,可以参考下iCuteCom: 初始化 m_Com_Monitor = new QextSerialEnumerator(); m_Com_Monitor->setUpNotifications(); 关联信号槽: connect(m_Com_Monitor,SIGNAL(deviceDiscovered(const QextPortInfo&)),this,SLOT(hasComDiscovered(const QextPortInfo&))); connect(m_Com_Monitor,SIGNAL(deviceRemoved(const QextPortInfo&)),this,SLOT(hasComRemoved(const QextPortInfo&))); 做处理就可以了 源代码下载地址: http://download.csdn.net/download/haltwang/5336243 Qt5自带的串口类看下有没有类似的信号发出来,没有的话只有搞个线程持续刷设备列表了
feiyangqingyun 2016-04-04
  • 打赏
  • 举报
回复 4
开一个定时器间隔50毫秒读取所有串口号,将串口存入数组,接着判断当前串口号数组中是否包含打开的串口号,不包含则说明串口被拔掉了!
imkelt 2016-04-04
  • 打赏
  • 举报
回复
引用 1 楼 feiyangqingyun 的回复:
开一个定时器间隔50毫秒读取所有串口号,将串口存入数组,接着判断当前串口号数组中是否包含打开的串口号,不包含则说明串口被拔掉了!
能不能用代码实现一下
imkelt 2016-04-04
  • 打赏
  • 举报
回复
能不能用代码实现一下

16,216

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧