我正在尝试使用这个程序加上 socat 来模拟串行设备。
#echo.py
n=0
while True:
s = raw_input()
if 'query' in s:
print n
n+=1
当我尝试将程序链接到假串口时
sudo socat -ddd -ddd PTY,raw,link=/dev/ttyS32,echo=0 EXEC:"python echo.py"
从端口读取或写入时,我什么也得不到。如果我使用 READLINE 而不是 EXEC,串行数据可以毫无问题地传入和传出 socat 终端。是否raw_input
在幕后做某事阻止 socat 为其提供正常的标准输入?