Qt第三方串口类应用方法

参考网址:

http://blog.csdn.net/yafeilinux/article/details/4717706

http://qimo601.iteye.com/blog/1416370 

注:写串口程序,要先打开串口再对它进行设置,不然设置不起作用

Qt串口封装第三方类:

  http://download.csdn.net/source/1762781 

  http://www.qtcn.org/bbs/read.php?tid=22847

  下载到的文件为:qextserialport-1.2win-alpha.zip

我们在windows下只需要使用其中的6个文件:qextserialbase.cppqextserialbase.hqextserialport.cppqextserialport.hwin_qextserialport.cppwin_qextserialport.h我们如果在Linux下只需将win_qextserialport.cppwin_qextserialport.h 换为 posix_qextserialport.cppposix_qextserialport.h即可

Qextserialport类介绍

  qextserialbase.cppqextserialbase.h文件定义了一个QextSerialBase类,win_qextserialport.cppwin_qextserialport.h文件定义了一个Win_QextSerialPort类,posix_qextserialport.cppposix_qextserialport.h文件定义了一个Posix_QextSerialPort类,qextserialport.cppqextserialport.h文件定义了一个QextSerialPort

都继承自QIODeviceQextBaseType类,一个标识,条件编译,表示Win_QextSerialPort或者Posix_QextSeialPort

枚举变量QueryMode   读取串口的方式

两个值PollingEventDriven

Polling 查询方式  读写函数同步执行  信号不能工作,开销小   需要自定义定时器读取串口数据

EventDriven 事件驱动方式  有数据到来,readyRead()信号  读写异步  调用读写函数会立即返回,不会冻结调用线程。

Windows下支持两种模式,Linux下只支持Polling模式

数据接收控制    bytesAvailable()函数检查已经获得的字节数,从而对数据接收进行控制

如:让串口缓冲区拥有一定的数据后在读取,mycom->bytesAvailable()>=8

你可能感兴趣的:(Qt)