• 欢迎浏览“String me = Creater\忠实的资深Linux玩家;”,请文明浏览,理性发言,有侵犯你的权益请邮件我(creater@vip.qq.com).
  • 把任何的失败都当作一次尝试,不要自卑;把所有的成功都想成是一种幸运,不要自傲。
  •    4年前 (2014-12-21)  Linux Linux应用 |   抢沙发  21 
    文章评分 0 次,平均分 0.0
    • 1.虚拟串口
    • 虚拟串口的方法采用python创建两个从设备,并读取他们的数据进行转发,代码如下:

      #! /usr/bin/env python
      #coding=utf-8
      import pty
      import os
      import select
      def mkpty():
          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)

      下载链接,点击这里virtualcom.py.tar
      代码还是算比较简单,使用select来检测数据可读事件,并读取数据,转发到另外的虚拟设备。

    • 2.串口调试方法1
    • 这种方法使用极其简单,可以使用cat /etc/pts/11,这样就会打开该设备并阻塞,直到收到数据。
      发送数据方法也很简单,直接 echo "123" >> /etc/pts/12,即可。

    • 3.串口调试方法2
    • 这种方法使用Linux下的串口调试助手,xgcom,在goolecode可以下载到源码,另外还需要安装一些依赖包

      apt-get install make  automake libglib2.0-dev  libvte-dev  libgtk2.0-dev

      安装也很简单

      ./autogen.sh
      make && make install
      xgcom

      分别开两个xgcom,设备名字分别填上第一步里虚拟出的串口设备,然后进行通信测试。

    后记:在windows下有非常好用的VSPD使用,当然在Linux下也是有这个软件的Linux版本,只是说配置文件很繁琐,没时间去折腾,感兴趣的可以搜索“VSPD for linux”。

     

    除特别注明外,本站所有文章均为String me = "Creater\忠实的资深Linux玩家";原创,转载请注明出处来自http://unix8.net/home.php/3893.html

    关于

    发表评论

    暂无评论

    切换注册

    登录

    忘记密码 ?

    切换登录

    注册

    扫一扫二维码分享