最近帮老师做的项目中使用到了QT串口,然后首先百度了一下,发现网上的QT串口代码都是同一个版本。而且没有公开源代码,遂自己写了个简单的串口通信代码,并将它公布出来,一方面供有需要的人参考,另一方面记录下来,也可以防止自己忘记了。
本项目没有用到QT自带的串口通信模块,使用了第三方库qextserialport,这个库基本已经满足了串口所有的功能,而且上手也快。好了。废话不多说了,先来张效果图吧。
这是整体效果图,主要实现的是开发板和下位机通信,上位机通过串口发送指令给下位机,下位机再执行相应的操作。本文主要讲讲串口通信的部分吧。
简单来说,串口通信分为三部分:1:设置端口号和波特率等等,数据位和校验之类的一般的可以提前设定好,再代码中同样也可以设定。2:将数据写入串口,这个时候就要分发送的是多少进制的数据了,虽然计算机在实际存储时是不区分进制的。3:读串口数据,将串口接收到的数据读出来,进行下一步处理。后面我会把全部代码贴出来,代码经过调试已经可以运行了。本文中具体的控件布局我就不讲了,我只讲讲一些核心的代码,大家感兴趣的话可以自己去跑跑我的代码,代码中注释非常详细,每一行都有注释,看起来不费劲。
1.设置端口和波特率
//打开串口,波特率和端口号可以通过下拉菜单进行选择
void uwiCMonitorPC::on_openMyComBtn_clicked()
{