在Python中半实时读/写串行数据(延迟<0.1秒)

2024-10-05 10:39:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我想读写一个波特率为/dev/ttyUSB0的串行连接。[它使用PL2303芯片组也可能有关系]在Python2.7中有没有通过printraw_input语句来实现这一点的方法?


Tags: 方法devinputraw关系语句printttyusb0
1条回答
网友
1楼 · 发布于 2024-10-05 10:39:22

你要找的术语是波特率。115200波特表示串行端口每秒能够传输115200位(:读位)。这是一个相当常见的波特率,所以这应该不是一个问题,只要你的USB通用异步收发器可以跟上。我有一个超老的FTDI USB UART,它不可靠超过19200年,但这是唯一一个曾经给我悲伤。坏电缆的症状是损坏,在您的响应和传输中缺少字符。在

我不认为你可以使用打印或原始输入进行串行处理。如果可以的话,我看不出任何理由,因为这不是他们设计的目的。您要使用的是pyserial模块:https://github.com/pyserial/pyserial

我有一个项目https://github.com/PyramidTechnologies/Python-RS-232运行在树莓皮上很好。实施要点:

    ser = serial.Serial(
        port=portname,
        baudrate=115200,
        bytesize=serial.SEVENBITS,
        parity=serial.PARITY_EVEN,
        stopbits=serial.STOPBITS_ONE
    )

一定要设置为目标设备发出的任何声音

然后,对于读写,设置一些流控制,如下所示:

^{pr2}$

相关问题 更多 >

    热门问题