使用python通过Raspberry Pi中的串行端口向PLC发送数据



我正在Debian安装的Raspberry Pi上运行我的LX终端。我有一个PLC通过USB连接到我的树莓派。我想用python从我的终端发送ASCII。我甚至安装了python Serial,但我不知道如何使用它。这是我在python中尝试的代码。我知道串行端口可以工作,因为我使用基于Linux的minicom将数据发送到plc,并且它可以工作。今天有了python,它没有按我希望的方式运行到

用户~$python

>>>import serial
>>>ser =  serial.Serial('/dev/ttyUSB0')
>>>ser.portstr
'/dev/ttyUSB0'
>>>ser

我做错了什么?如有任何帮助,将不胜感激

import serial
ser =  serial.Serial('/dev/ttyUSB0', 4800)
while 1:
    inp = raw_input("Enter the data to send or enter 'exit' to exit:")
    if inp=='exit':
        break
    else:
        ser.write(inp)

这段代码与波特率为4800的ttyUSB0进行通信。确保你在baudrate上写作,这与你的听众被配置为在的baudrate相同。

它将用户输入作为字符串,并通过串行发送。这种情况在循环中发生,直到用户输入退出为止。

还要确保您只运行一个进程来从侦听端的串行读取,或者只有其中一个进程将从串行读取,或两个进程都将读取其中的一部分。

希望这有帮助:)

最新更新