我一直试图让pySerial向设备发送命令(体重秤和质量流量控制器)都使用ASCII格式,并且两者都不响应发送的命令。但是,我可以使用终端轻松控制两者。我创建了一个虚拟comport来查看从pySerial发送到我的设备的是什么,但它发送了正确的数据。 (T \ r \ n发送为T 13 10,与终端发送的相同)所以我不知所措。似乎pySerial向我的设备发送了正确的数据,但由于任何原因未被正确接受,奇怪的是我可以使用pySerial从设备中轻松读取数据。只是写作部分失败,有关如何解决问题或修复此问题的任何建议?
代码是 myserialport.write( 'T \ r \ N')
我曾尝试使用flush()和flushOutput(),但是没有诀窍,我也尝试在循环中发送命令conseticutavely,但它没有起作用。它不是硬件问题,因为我可以控制使用终端程序的设备,但只能用于pySerial ......
答案 0 :(得分:0)
for i in data:
PID.write(i)
time.sleep(1)
您在终端中键入的速度比串行端口写入慢,并且需要时间来读取每个字符。与PC相比,规模(或其他)通常非常慢。