110VCGQ/485SWJ/CGQ485V2/CGQ485/mainwindow.h

171 lines
3.6 KiB
C
Raw Normal View History

2024-11-18 10:09:39 +08:00
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include "dialogsetport.h"
#include "crc.h"
#include <QGraphicsView>
#include <QDateTime>
#include <QChartView>
#include <QLineSeries>
#include <QSplineSeries>
#include <QValueAxis>
#include <QDateTimeAxis>
#include <fileset.h>
#include "userhelp.h"
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
enum readState
{
None = 0,
readData = 1,
readPWM = 2,
readFactor = 3,
readVersion = 4,
readAll,
sendFile,
};
private slots:
void on_setSerilport_triggered();
void on_readVersion_clicked();
void on_readPWM_clicked();
void on_readFactor_clicked();
void on_SerialPort_readyRead();
void on_Time1_out();
void on_pushButton_read03_clicked();
void on_setPWM_clicked();
void on_setFactor_clicked();
void on_pushButton_ClearS_clicked();
void on_pushButton_ClearR_clicked();
void on_pushButton_addrUP_clicked();
void on_pushButton_addrDOWN_clicked();
void on_pushButton_reset03_clicked();
void on_checkBox_timer_clicked(bool checked);
void on_pushButton_send06_clicked();
void on_comboBox_current_currentIndexChanged(int index);
void on_pushButton_reset06_clicked();
void on_pButton_HorizDec_clicked();
void on_pButton_HorizInc_clicked();
void on_phButton_VertitalInc_clicked();
void on_phButton_VertitalDec_clicked();
void draw_Line(int addr,int data);
void on_pButton_gViewClear_clicked();
void on_fileSet_triggered();
void on_help_action_triggered();
void on_pushButton_readonce_clicked();
void on_checkBox_clicked(bool checked);
void on_pushButton_clear2_clicked();
void on_pushButton_setPWM_clicked();
void on_pushButton_estimate_clicked();
void on_pushButton_17_clicked();
void on_pushButton_18_clicked();
void on_pushButton_20_clicked();
void on_pushButton_chartclear_clicked();
void on_pushButton_Ysmall_clicked();
void on_pushButton_Ylargr_clicked();
void on_pushButton_Xsmall_clicked();
void on_pushButton_Xlargr_clicked();
void on_OpenFile_Btn_clicked();
void on_SenFile_Btn_clicked();
void on_overSend_Btn_clicked();
void on_clear3_Btn_clicked();
private:
Ui::MainWindow *ui;
DialogSetPort *port = NULL;
FileSet *fileset = NULL;
UserHelp *userhelp = NULL;
CRC *crc;
readState state = None;
QTimer *time1,*time2,*time3; //time2第一页定时读取数据time3第二页定时读取数据
QDateTime curDateTime = QDateTime::currentDateTime();
QChart *chart;
QSplineSeries *series0;
QLineSeries *lineSeries[20];
int Xmin = -8,Xmax = 2,Ymin=-3000,Ymax = 3000;
QValueAxis *axisY,*axisY3;
QDateTimeAxis *axisX ;
// QValueAxis *axisX;
QDateTime *currentzAxis;
double write_time =0;
//图表2的定义
int Xmin2 = -8,Xmax2 = 2,Ymin2=-3000,Ymax2 = 3000;
QChart *chart2;
QLineSeries *lineSeries2[5];
QValueAxis *axisY2;
QDateTimeAxis *axisX2 ;
//文件传输定义
QString *fileName;
QFile *file;
QByteArray *fileData;
QVector<QByteArray> groupedData;
uint16_t CurrentIndex = 0; //代码数据分组编号
uint8_t start_addr,over_addr,current_addr;
QTimer *time4; //传输文件时超时发送的
QTimer *time5; //广播定时发送数据
void dataTreating(QByteArray array);
void sendNextFile();
};
#endif // MAINWINDOW_H