读取数据RS232而不进行轮询

时间:2013-05-17 21:02:30

标签: c++ windows qt

我从RS232中的for loop读取数据。这没有良好的性能。我希望没有for循环,而不是像数据接收时那样的事件火。这可能吗?例如,当从COM16事件触发接收数据时。

1 个答案:

答案 0 :(得分:2)

看起来这个项目在Qt 5中已经将添加到Qt 5.1 中了!

http://qt-project.org/wiki/QtSerialPort

http://doc-snapshot.qt-project.org/qt5-stable/qtserialport/qtserialport-index.html

这些示例显示了从串行端口获取信息的两种不同方法:

这个使用信号插槽连接:

http://doc-snapshot.qt-project.org/qt5-stable/qtserialport/terminal.html

这个循环使用轮询:

http://doc-snapshot.qt-project.org/qt5-stable/qtserialport/blockingslave.html

这是一个不同的,但可以做所有相同的事情。我之前用过这个就成功了。它在示例中有一个信号插槽。

https://code.google.com/p/qextserialport/

希望有所帮助。