Python pySerial发送ASCII数据,但接收设备不响应

Python pySerial发送ASCII数据,但接收设备不响应,python,pyserial,Python,Pyserial,我一直在尝试让pySerial向设备(重量秤和质量流量控制器)发送命令,它们都使用ASCII格式,并且都不响应发送的命令。然而,我可以很容易地控制两者与终端的使用。我创建了一个虚拟组件,以查看从pySerial发送到我的设备的内容,但它会发送正确的数据。(T\r\n作为T 13 10发送,与终端发送的相同)因此我不知所措。似乎pySerial向我的设备发送了正确的数据,但由于任何原因都不能被正确接受,奇怪的是,我可以使用pySerial轻松地从设备读取数据。只是写作部分失败了,对如何解决这个问题

我一直在尝试让pySerial向设备(重量秤和质量流量控制器)发送命令,它们都使用ASCII格式,并且都不响应发送的命令。然而,我可以很容易地控制两者与终端的使用。我创建了一个虚拟组件,以查看从pySerial发送到我的设备的内容,但它会发送正确的数据。(T\r\n作为T 13 10发送,与终端发送的相同)因此我不知所措。似乎pySerial向我的设备发送了正确的数据,但由于任何原因都不能被正确接受,奇怪的是,我可以使用pySerial轻松地从设备读取数据。只是写作部分失败了,对如何解决这个问题有什么建议吗

代码是 myserialport.write('T\r\n')

我曾尝试使用flush()和flushOutput(),但这两种方法都没有成功,我还尝试以循环的方式发送命令,但都没有成功。这不是一个硬件问题,因为我可以控制设备使用终端程序,只与pySerial不工作

for i in data:
    PID.write(i)
    time.sleep(1)

在终端中键入的速度比串行端口写入慢,读取每个字符需要时间。与PC相比,刻度(或任何东西)通常非常慢。

您检查了流量控制设置吗?如果你能正确接收,波特率和奇偶校验必须正确。我能正确接收。终端设置设置为无流量控制。默认情况下,pyserial将禁用该选项。但是我会检查的。尝试在发送和接收之间设置一个延迟,比如2秒。我只是尝试向设备发送一个命令,T\r\n会使秤变重。我试过放xonxoff,但运气不好。还使用time.sleep()设置两次写入之间的延迟,如果没有运气,在这两种情况下刻度都不会变黑。然而,如果我用终端发送相同的命令,它会变脏。在写入的字符之间放置时间。不起作用。我尝试了1秒、10秒等。它实际上只向它发送了一个字符(T),带有\r\n,一次。时间延迟没有帮助。