Qt串口通信学习方法

欢迎关注    新浪微博:学Qt编程
首先可以根据yafeiLinux给的教程,对第三方提供的QExtSerialPort类有一些了解。(网址不贴了搜一下到处都是)
然后可以下载Qt版的 串口调试助手源码(就在本论坛内),仔细浏览下源代码。
这里主要讲下想再进一步,可以到提供第三方串口类的官网学一些东西,这里介绍下经验。
网址是http://code.google.com/p/qextserialport/
点击all download去下载最新的类,支持Qt5,同时支持windows 和 linux
接着看怎么用这些类呢
回到主页,点击QExtSerialPort-1.2beta1
进入最新类的介绍,这里有三种类的使用方法,我看了觉得第二种用这最舒服,这里主要介绍下第二种。
也就是把这个类做成Lib文件,下次用的时候就方便多了。
步骤如下:
1,下载QExetSerialPort-1.2beta1到任意位置,解压。
2,复制其中的config_example.pri到桌面,重命名为config.pri,用Qt creater打开,删除里面的所有内容,然后写上
    QEXTSERIALPORT_LIBRARY = yes   
    QEXTSERIALPORT_STATIC = yes      然后保存。
3,把桌面上的config.pri复制放到和config_example.pri一样的位置。
4,进入该文件夹,执行 qmake  make(或nmake)
5,执行完毕后,大家可以分别进入你装Qt的文件夹下的mingW文件夹的bin   lib   include文件夹下,你会发现
      跟QextSerialPort有关的.dll  .h  .a问价全部放到了对应的位置,这时QExtSerialPort的类已经装到了你的编译器中
     想用就用了
6,讲一下怎么用:使用时要在.pro文件中加入:LIBS += -lqextserialport(这就像我们使用QSvg时要加入Qt += svg,起连接库文件的作用) 
      然后就可以用#include "QExtSerialPort/qextserialport.h"  了,剩下的,就跟用Qt其他类一样了。
最后讲下串口通信类使用的一个问题
       在串口打开前必须初始化串口名(就是com1/com2...),在后面设置无效。在串口打开后必须设置(波特率、数据位),在前面设置的无效。
这是我写了一些串口工具的体会,如果在串口打开前设置波特率、数据位的话,打开后没有再设置的话,后默认上一次打开串口是用的波特率和数据位。如果两次不一样就会接受到错的数据。
       以上是我的一点体会,大家觉得有什么不对的地方,往多多指点。欢迎关注新浪微博:学Qt编程  大家多交流

你可能感兴趣的:(QT)