TSI_Config/data_config.h
2025-03-13 15:10:35 +08:00

139 lines
3.0 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef DATA_CONFIG_H
#define DATA_CONFIG_H
#include <QString>
#include <QPushButton>
#include <QLabel>
#include <QList>
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
extern QString g_strServerIp; // 服务端IP
#define CHANNLE_COUNT 4
typedef struct {
int slot;
int slot_type;
QString chan_display;
QString rack_type;
QPushButton* slot_btn;
QLabel* slot_label;
}SlotConfig;
enum CMTCommand {
kEigenvalueCmd = 1,
kExceptionInfo = 2,
kUpgradeCard = 3,
kGetVersionInfo = 4,
kRelaySetting = 5,
kRelayStatus = 6,
kUpgradeProgress = 7
};
enum SlotType{
POWER = 10,
CONFIG = 20,
KEYPHASOR = 25,
RELAY = 30,
VIBRATE = 40,
RPM = 50
};
typedef struct{
int id;
QString channel_name;
bool standby;
bool active;
QString rack_type;
QString tmr_group;
QString channel_type;
QString transducer_name;
QString scale_factor;
QString sample_rate;
float normal_voltage_low;
float normal_voltage_high;
}SeismicMonitor;
typedef struct{
QString type;
int low;
int high;
bool checked;
} Filter;
typedef struct{
QString type;
QString full_sacle_range;
int bias_voltage;
float clamp_value;
int phase_lag;
bool checked;
} Variables;
typedef struct{
int alert;
float danger;
bool active_100ms;
} Dealy;
typedef struct{
bool rms_active;
bool integrate_active;
bool alert_latching;
bool danger_latching;
bool timed_ok;
QString recorder_output;
bool two_ma_clamp;
float trip_mutiply;
QString comparision;
int comparision_percentage;
} Alert_Variables;
#pragma pack(1)
typedef struct {
uint8_t head[3]; // 固定值0xAA55AA
uint8_t cmd; // 命令
int len; // 数据长度
uint8_t crc; // 数据 CRC 校验和
char data[0]; // 文件内容
} PackageHead;
typedef struct {
uint8_t card_id; // 0xff是本机其它子卡是115
char data[0];
} UpgradeCardReq;
typedef struct {
uint8_t code; // 0: 上传成功
} UpgradeRsp;
typedef struct {
uint8_t card_id; // 0xff是本机其它子卡是115
} GetVersionReq;
typedef struct {
uint8_t fpga; // fpga版本号
uint8_t sw; // 软件版本号
char fpga_data[9]; // fpga版本日期
} VersionRsp;
typedef struct {
uint8_t card_id; // 0xff是本机其它子卡是115
uint8_t led_id; // ok 灯 0xff,rx/tx 灯 0xf1,板卡测试模式 0xee,板卡状态 0xe1,其他 1 ~ 16
uint8_t led_operate; // 0 OFF,1 ON,2 红色,3 绿色,4 红色1Hz闪烁,5 红色2Hz闪烁,6 绿色闪烁,7 测试状态,8 手动状态,9 工作状态
} RelaySettingReq;
typedef struct {
uint8_t code;
} RelaySettingRsp;
typedef struct {
uint8_t card_id; // 0xff是本机其它子卡是115
} RelayStatusReq;
typedef struct {
uint8_t status; // 7 测试状态,8 手动状态,9 工作状态
} RelayStatusRsp;
#pragma pack()
#endif // DATA_CONFIG_H