一、简述
在使用vs+qt插件开发项目时,无使用QtCreator IDE创建项目时的.pro文件(无法通过Qt += serialport引入),且无法直接通过cmke或qmake引入库文件,下面演示如何在vs+qt环境下面配置串口库,并使用串口通信
二、配置
1.首先默认已经配置好了vs+qt开发环境,且功能正常(后续有vs+qt+vtk+pcl+主流camera的配置教程)。
点击上边栏视图(V)-->其他窗口-->属性管理器 打开项目属性管理(若未配置属性表,直接右键解决方案打开属性管理器同理(右键解决方案-->属性))
2.在属性配置中找到Qt Project Settings 若无此选项,请注意版本是否一致
选择qt modules配置模块,选择下拉栏,选择select modules选择模块
串口通信所需模块在SerialPort中,选择此项,(如需其他模块也可一次性勾选上)
勾选完成后可见模块栏多了serialport,确定保存属性配置后就可以引入头文件到项目中了
3.可见头文件可以被包含进来了,可以使用以下代码测试
4.代码测试:将这段代码放在自己的窗体构造函数中,若代码报错,请注意代码是否在窗体类内的构造函数内,若Qserialport报错,则说明未引入成功,请按照上述步骤排查,若qmessagebox报错,请包含其头文件QMessageBox或qmessagebox.h,若打开串口失败,请检查自己设备是否有此串口(推荐虚拟串口配置工具Configure Virtual Serial Port Driver)
-----YOUR PROGRAM
//...
QSerialPort com;
//获取COM串口名字
QString portname = QString::fromLocal8Bit("COM1");
//设置COM串口名字
com.setPortName(portname);
//设置COM波特率
com.setBaudRate(9600);
//设置COM数据位
com.setDataBits(QSerialPort::Data8);
//设置COM停止位
com.setStopBits(QSerialPort::OneStop);
//设置COM校验位
com.setParity(QSerialPort::NoParity);
//打开串口
if (!com.open(QIODevice::ReadWrite){
QMessageBox::information(NULL, "com", "open failed!");
}
else{
QMessageBox::information(NULL, "com", "open succceed!");
}
//...
-----YOUR PROGRAM
配置完成,打开成功