快捷搜索: 王者荣耀 脱发

基于qwt和串口通信的软件示波器

在嵌入式开发过程中,经常需要查看DSP/MCU内部变量的值,通常的做法是使用仿真器,或者通过DAC输出用示波器观察,本文介绍一种基于qt/qwt的软件示波器,DSP/MCU将内部变量的值通过串口发出,软件示波器收到以后以波形的形式显示。

1、安装QT5.8

从下面地址下载qt-opensource-windows-x86-mingw530-5.8.0.exe并安装:

安装完成后添加环境变量: C:QtQt5.8.05.8mingw53_32in;C:QtQt5.8.0Toolsmingw530_32in

2、安装qwt-6.1.3

(1) 下载qwt6.1.3并解压,例如我电脑上是解压到I:QTqwt-6.1.3qwt-6.1.3:

(2) 开始->运行->powershell

(3) 进入qwt所在目录: cd I:QTqwt-6.1.3qwt-6.1.3

(4) 运行qmake qwt.pro

(5) 运行qmake

(6) 运行mingw32-make.exe

(7) 运行 mingw32-make.exe install

(8) 将I:QTqwt-6.1.3qwt-6.1.3lib 下的*.dll文件复制到C:QtQt5.8.05.8mingw53_32in

(9) 将I:QTqwt-6.1.3qwt-6.1.3lib下的*.a文件复制到C:QtQt5.8.05.8mingw53_32lib

(10) 将C:Qwt-6.1.3pluginsdesigner下的所有文件复制到C:Qwt-6.1.3pluginsdesigner

(11) 将C:Qwt-6.1.3include下的所有文件复制到C:QtQt5.8.05.8mingw53_32includeqwt 其中qwt为新建文件夹,在qt程序中包含此文件夹。

3、 QT程序

(1) 新建QT程序并包含qwt相关头文件:

(2) 在ui中增加start/stop按钮,qwt plot控件等

(3) 为qwtplot控件设置背景网络,设置放大缩小的机制,设置曲线的颜色等。

(4) 增加串口通信功能 示例程序中假设串口每1ms接收4个变量的值,每个变量2个字节,共8个字节。 每10ms从串口中读取接收到的数据并赋给QwtPlotCurve变量,再通过qwtplot显示。 示例程序下载地址:

4、 演示功能

为了演示示波器的功能,示例程序中模拟产生4个正弦波,并通过串口发送出去,如果将串口的Rx和Tx短接,串口将接收到发送出去的数据并在示波器上显示,效果如下图所示:

5、改进

读者可以根据自己的实际需要进行修改,例如增加光标,增加波形的保存和回放等功能。

经验分享 程序员 微信小程序 职场和发展