Python中USB转换器上的串行通信-如何实现?

Python中USB转换器上的串行通信-如何实现?,python,serial-port,usb,Python,Serial Port,Usb,python程序需要每秒从串行端口接受一个字符串。我计划使用RS-232到USB转换器。该应用程序将在Ubuntu 10.04下运行 我该如何处理这个问题?我用还是用 同时需要进行一些处理,因此同步通信是不可行的。我是使用某种中断还是需要打开不同的线程?或者我使用分块读取,相信1对我的计算来说已经足够了(现在已经足够了) 我知道,RTFM,但是从一开始就朝着正确的方向前进会节省我很多时间!感谢您的支持。如果您的RS232-USB转换器在Ubuntu中有一个驱动程序,使其看起来像一个COM端口,那

python程序需要每秒从串行端口接受一个字符串。我计划使用RS-232到USB转换器。该应用程序将在Ubuntu 10.04下运行

我该如何处理这个问题?我用还是用

同时需要进行一些处理,因此同步通信是不可行的。我是使用某种中断还是需要打开不同的线程?或者我使用分块读取,相信1对我的计算来说已经足够了(现在已经足够了)


我知道,RTFM,但是从一开始就朝着正确的方向前进会节省我很多时间!感谢您的支持。

如果您的RS232-USB转换器在Ubuntu中有一个驱动程序,使其看起来像一个COM端口,那么您将希望使用pySerial(接口与任何其他COM端口相同)。如果您的设备没有驱动程序,那么您可能必须使用libusb并查找特定设备的协议。如今,大多数主要的RS232-USB转换器都在Linux内核中提交并维护了基于usbserial的驱动程序。只需向您的供应商了解这一点

并行处理有很多方法,但我通常用两种方法编写应用程序:

  • 有一个读取线程,它只读取并填充本地线程安全缓冲区,以便在需要时为其他线程准备好数据

  • 拥有一个读取线程,该线程读取数据,确定数据的去向,并通过消息传递/事件处理将数据传递给需要数据的组件


这里的决定将取决于你的目标是什么,以及在阅读之外需要多少处理。

谢谢你的许多想法。现在要实现它们:)