【发布时间】:2021-06-01 08:22:07
【问题描述】:
我正在尝试通过 QSerialPort 接收自定义帧原始字节,使用值 0 作为异步模式下的分隔符(使用信号而不是轮询)。
不便之处在于 QSerialPort 似乎没有一种方法可以读取串行数据,直到遇到指定的字节值,例如pyserial 中的 read_until (delimiter_value)。
我想知道是否可以在 Python 中重新实现 QSerialPort 的 readLine() 函数,以便它读取直到遇到 0 字节值而不是 '\n'。同样,重新实现 canReadLine() 也会很方便。
我知道可以使用 readAll() 方法,然后解析数据以获取分隔符值。但是这种方法可能意味着更多的代码和效率的降低。我希望在处理帧时开销尽可能低(串行波特率和传入字节数很大)。但是,如果您知道一种快速的方法,我想看看。
【问题讨论】:
标签: methods pyqt serial-port pyserial qtserialport