基于QT的以太网TCP连接 用qcustomplot和fft3绘制时域谱和频域谱 上位机软件

为做的传感器数据采集卡写了一个简单的上位机软件做测试 可以同时显示时域谱和频域谱 也可以实现对采集到的数据进行保存 把主要功能的实现代码分享出来希望对大家有所帮助 界面如下
基于QT的以太网TCP连接 用qcustomplot和fft3绘制时域谱和频域谱 上位机软件_第1张图片
信号发生器接采集卡送正弦波进去之后基于QT的以太网TCP连接 用qcustomplot和fft3绘制时域谱和频域谱 上位机软件_第2张图片
实现这个上位机软件要用到两个额外的库 如果之前没有用过的话需要去下载安装 一个是qcustomplot 另一个是FFTW.
qcustomplot就在官网上下载 然后把qcustomplot.h 和qcustomplot.cpp文件加入 然后.pro文件上引入 printsupport
下载地址:https://www.qcustomplot.com/

QT       += printsupport

FFTW 库安装相对会麻烦点 特别是对windows用户 论坛里有好多文章讲如何安装和导入FFTW库的 讲得很详细 可以搜索下
下载地址: http://www.fftw.org/

TCP连接
首先要在.pro文件中引入network

QT       += network

在头文件中包含QTcpSocket和QHostAddress

#include 
#include 

创建QTcpSocket私有成员变量

private:
    QTcpSocket *socket;

在构造函数中定义socket

socket = new QTcpSocket;

点击连接按键时执行TCP连接 IP地址和端口号从lineEdit上获取

void MainWindow::on_connectButton_clicked()
{
   
	ui->status->setText("正在连接中");
    QString ip = ui->ipLineEdit->text();
    QString port = ui->portLineEdit->text();
    socket->connectToHost(QHostAddress(ip),port.toShort());
    connect(socket, &QTcpSocket::connected, [this](){
   
        ui->status->setText("连接成功");
    });
    connect(socket

你可能感兴趣的:(qt,数据分析,fft,qt)