如何读取从通讯端口写入的数据?

问题描述:

我尝试通过COM4通信端口尝试在我的设备和python代码之间进行通信:pyserial通信。 所以起初我尝试发送和写一个问候,然后阅读我的设备的输出, 但我的问题是如何读取首先发送的问候。我的意思是我想从我的设备读取COM4上的字符串hello如何读取从通讯端口写入的数据?

import serial 
    ser = serial.Serial(
     port='COM4',\ 
     baudrate= 230400) # open serial port 
    print(ser.name)   # check which port was really used 
    #ser.write(b'hello\n')  # write a string 
    #str=ser.readline() 
    while True: 
     print(ser.read(30).decode()) 
    ser.close()    # close ports 

我的设备的代码是用C语言编写的。

如果您能指导我,我将不胜感激。

+0

我不确定我明白问题到底是什么。你想在哪里阅读字符串“你好”?在你的设备上?或者设备发送一个字符串“hello”,你想用Python读取?请让你的问题更具体。 –

+0

我发送字符串hello,我的设备已经能够写入,但是我怎么能从COM4中恢复该字符串,通过使用我的设备来读取它。现在清楚了吗? – user7161303

+0

所以你想从你的设备读取COM4上的数据?如果是这样的话,这不是一个Python问题,而是一个C问题(你说你的设备正在运行一个C程序)。不幸的是,我不是C专家,并且没有针对该问题的快速解答... –

此过程因操作系统而异。这里有一个支持Linux和Windows的好库: http://www.teuniz.net/RS-232/