You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

131 lines
2.1 KiB
C

1 year ago
#ifndef UART_H
#define UART_H
#include<QSerialPortInfo>
#include<QSerialPort>
#include <QList>
#include <QDebug>
#include <QObject>
#include <QtWidgets/QWidget>
#include <QApplication>
#include <QFileDialog>
struct UU_data{
QByteArray wirelessTData_adress;
QByteArray wirelessTData_data;
QByteArray concentratorTData_adress;
QByteArray concentratorTData_data;
QByteArray policeData;
QByteArray TevTop;
QByteArray TevFreq;
QByteArray TevLevel;
QByteArray TevAve;
QByteArray Tevperiodicity;
QByteArray UltTop;
QByteArray UltFreq;
QByteArray UltLevel;
QByteArray UltAve;
QByteArray UltEffective;
QByteArray tevData;
QByteArray ultData;
QByteArray SecFanStartTemperature;
QByteArray SecTripTemperature;
QByteArray SecAlarmTemperature;
QByteArray SecReturnTemperature;
QByteArray SecFanStartTempeture;
QByteArray SecWheelVol;
QByteArray SecZeroSequenceVol;
QByteArray SecActivePower;
QByteArray SecActivePowerCom;
QByteArray SecReactivePower;
QByteArray SecReactivePowerCom;
QByteArray SecWheelPowerFactor;
QByteArray SecWheelPowerFactorCom;
QByteArray SecWheelFrequency;
QByteArray SecWheelTemperature;
QByteArray SecWheelPositiveElectricEnergy;
QByteArray SecWheelNegativeElectricEnergy;
QByteArray SecWheelActivePowerCom;
QByteArray SecWheelReactivePowerCom;
QByteArray SecCT;
QByteArray McuState;
QByteArray SecData;
QByteArray Incident;
};
namespace Ui {
class UART;
}
class UART : public QObject
{
Q_OBJECT
public:
void platform_test();
void happenInfoError(QByteArray data);
void memcpySerialData(char *data,QByteArray &A,uint16_t len);
explicit UART(QObject *parent = nullptr);
~UART();
void openserial(QString COM/*,QString COM2*/);
void setserial();
void ShuJu_Write(QByteArray data);
void serial_close();
void ModBusCRC16(QByteArray data);
void creat_file();
QByteArray platformdata1;
QByteArray platformdata2;
public slots:
void ShuJu_Read();
void receverDataFromSerialPort();
void uart_init(QString COM,uint8_t Enable);
void Delay_MSec(unsigned int msec);
private:
Ui::UART *ui;
QThread *my_thread;
QThread *uart_thread;
};
#endif