Python 2.7 我可以使用raspberry pi(型号B+;)的USB端口进行串行通信(RS232)吗

Python 2.7 我可以使用raspberry pi(型号B+;)的USB端口进行串行通信(RS232)吗,python-2.7,raspberry-pi,Python 2.7,Raspberry Pi,我需要连接一台旧机器(thermostream)来连接树莓pi(型号B+) thermostream设备有一个RS232串行端口,我想使用RS232串行到USB电缆将其连接到raspberry pi的USB端口(电缆的USB端插入pi,串行端连接到设备)。我需要用python编写代码 这可能吗?如果是,我应该如何进行?非常感谢您的帮助。是的。首先,您需要安装 然后,在Python中,可以使用以下函数创建连接到端口的串行对象。pi上的usb端口动态分配一个名称,这些名称可以更改。此函数将使您能够通

我需要连接一台旧机器(thermostream)来连接树莓pi(型号B+)

thermostream设备有一个RS232串行端口,我想使用RS232串行到USB电缆将其连接到raspberry pi的USB端口(电缆的USB端插入pi,串行端连接到设备)。我需要用python编写代码


这可能吗?如果是,我应该如何进行?非常感谢您的帮助。

是的。首先,您需要安装

然后,在Python中,可以使用以下函数创建连接到端口的串行对象。pi上的usb端口动态分配一个名称,这些名称可以更改。此函数将使您能够通过名称的每个端口进行循环。(在连接多个设备时可能无法正常工作)。检查要与之通信的设备上的连接设置(波特率、奇偶校验、停止位等),并修改代码以使用这些设置

import serial

def serialConnect(): 
    serlocations=['/dev/ttyACM', '/dev/ttyACM0', '/dev/ttyACM1','/dev/ttyACM2', '/dev/ttyACM3','/dev/ttyACM4', '/dev/ttyACM5','/dev/ttyUSB0','/dev/ttyUSB1','/dev/ttyUSB2','/dev/ttyUSB3', '/dev/ttyUSB4', '/dev/ttyUSB5', '/dev/ttyUSB6', '/dev/ttyUSB7', '/dev/ttyUSB8', '/dev/ttyUSB9', '/dev/ttyUSB10','/dev/ttyS0', '/dev/ttyS1', '/dev/ttyS2', 'com2', 'com3', 'com4', 'com5', 'com6', 'com7', 'com8', 'com9', 'com10', 'com11', 'com12', 'com13', 'com14', 'com15', 'com16', 'com17', 'com18', 'com19', 'com20', 'com21', 'com1', 'end']
    for device in serlocations:
        try:
            ser = serial.Serial(
                port=device,
                baudrate=9600,
                parity=serial.PARITY_ODD,
                stopbits=serial.STOPBITS_TWO,
                bytesize=serial.SEVENBITS
            )
            print device
            return ser  
        except:
            x=0 
    if device == 'end':
        print "No Device Found"     

ser = serialConnect()
if ser:
    ser.write("TEST")
    ser.timeout=5
    for i in ser.readlines():
        print i

谢谢你的回复。我已经试过了,但似乎不起作用。对于串行接口,pyserial是最好的选择(它实际上是我知道的唯一选择)。如果它不工作,请检查ser.readlines()是否有要读取的内容,或者您的设备是否正在侦听您使用ser.write()发送的内容。我不熟悉你的特定设备,但是你可以考虑使用一个ARDUIO到Pix.Primter()来确保接收通道正在工作。它只是坐在那里等待消息,我正在尝试从PI中接收我发送的内容。为此,我连接了RS232的RX和TX引脚,并使接地共用。只是在答案中添加了一个写入过程。您是使用USB还是pi的直接RX-TX引脚?USB连接到pi,RS232串行端的RX和TX彼此连接(这样做是为了我可以读取我正在写入的内容,即读取我正在从pi发送的内容)