您的位置:首页 > 编程语言 > Qt开发

ubuntu 下Qt串口及modbus例程调试

2016-08-01 15:07 507 查看
最在学习Qt下实现mosbus协议通信,环境为ubuntu16.04 + Qt5.6.1,Qt自带了例程。把调试程序的点滴记录下来,也希望给和我一样的小白带来帮助。

1.制作虚拟串口调试工具

在网上搜到Qt串口调试需要的工具,虚拟串口,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)

 

把上边的代码保存文件为VirtualComTest.py

在终端下执行python VirtualComTest.py效果如下图所示(虚拟串口制作完成)



此时/dev/pts/21   /dev/pts/22两个口即为连接状态

 

 2.打开例程并调试

Qt5.6.1中搜索到modbus例程



Slave例程执行后的效果(在Port后输入  /dev/pts/21  然后点connect)



可以连接上。

Master例程执行后的效果,连接同上,Prot口输入/dev/pts/22  此时两个程序可以通信。

 


程序代码还没有仔细看。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: