如何使用QSocketNotifier(linux)观看串口?

时间:2009-04-25 16:49:45

标签: python qt serial-port pyqt4

有人可以举例说明如何设置QSocketNotifier来触发事件吗 / dev / ttyS0 ? (最好是在python / pyqt4中)

1 个答案:

答案 0 :(得分:5)

这是一个使用QSocketNotifier继续读取文件的示例。只需将'foo.txt'替换为'/ dev / ttyS0'就可以了。你应该很高兴。


import os

from PyQt4.QtCore import QCoreApplication, QSocketNotifier, SIGNAL


def readAllData(fd):
        bufferSize = 1024
        while True:
                data = os.read(fd, bufferSize)
                if not data:
                        break
                print 'data read:'
                print repr(data)


a = QCoreApplication([])

fd = os.open('foo.txt', os.O_RDONLY)
notifier = QSocketNotifier(fd, QSocketNotifier.Read)
a.connect(notifier, SIGNAL('activated(int)'), readAllData)

a.exec_()