pyserial readlines()挂起以获得更长的超时值

2024-10-01 00:23:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Windows7上使用了PythonSerialLibrary的3.2.1版本,Python2.7.13

这是我的代码:

import serial
import os
import sys
import argparse

parser = argparse.ArgumentParser(description="commands")
parser.add_argument("command", help="command")
args = parser.parse_args()

s = serial.Serial('COM9', 230400, timeout=20, write_timeout=20)
cmdline = args.command + os.linesep
print s.write(cmdline)  
s.flush()
lines = s.readlines()
print "".join(lines)
s.close()

问题是,当我设置timeout=2或timeout=3时,这段代码可以正常工作。但对于更大的值,它只是挂起,永远不会终止。为什么?在


Tags: 代码importparserostimeoutserialargparseargs