Linux下的虚拟终端(可用于在本机上模拟串口进行调试)
转载自:http://fayaa.com/code/view/8500/代码:#! /usr/bin/env python#coding=utf-8import ptyimport osimport selectdef mkpty():#open virtual commaster1, slave = pty.openpty()slaveName1 =
转载自:http://fayaa.com/code/view/8500/
代码:
#! /usr/bin/env python
#coding=utf-8
import pty
import os
import select
def mkpty():
#open virtual com
master1, slave = pty.openpty()
slaveName1 = os.ttyname(slave)
master2, slave = pty.openpty()
slaveName2 = os.ttyname(slave)
print '\nslave device names: ', slaveName1, slaveName2
return master1, master2
if __name__ == "__main__":
master1, master2 = mkpty()
while True:
rl, wl, el = select.select([master1,master2], [], [], 1)
for master in rl:
data = os.read(master, 128)
print "read %d data." % len(data)
if master==master1:
os.write(master2, data)
else:
os.write(master1, data)
=================================================================================================================
假设程序名叫mkptych.py,在终端里运行“python mkptych.py &”,这样就可以生成一个基于pty(伪终端)的虚拟端口对,
两个设备名会显示在终端里。然后就可以利用这两个设备名在本机上进行虚拟串口之类的调试~
使用完后用ps查看这个python进程的pid号,然后kill掉即可~
=================================================================================================================
使用时可以配合minicom或者stkterm等超级终端进行串口数据调试
=================================================================================================================
更多推荐
所有评论(0)