Files
secs2-bootloader/usr/protocol/proto_CS200.h

59 lines
1.1 KiB
C

#ifndef _PROTO_CS200_H_
#define _PROTO_CS200_H_
#include "main.h"
#include "proto_Modbus.h"
#define CS200_STATE_Init 0
#define CS200_STATE_GetCurrentData 1
#define CS200_STATE_SetFlow_1 2
#define CS200_STATE_SetFlow_2 3
#define CS200_READ_STATE_ID_1 0
#define CS200_READ_STATE_ID_2 1
typedef struct
{
u8 ID;
u16 BaudRate;
u16 SetFlow;
u16 Flow;
u16 Range_u16;
u8 ValveCmd;
float SumFlow; //累计流量
u8 SumFlow_Mode; //累计流量模式
u8 Parity; //校验位
u16 Valve_U; //阀电压
float Range_Float;
float SoftStartValue; //软启动值
float RealFlow; //实机流量值
}proto_CS2000_CurrentData_t;
typedef struct
{
proto_CS2000_CurrentData_t CurrentData[2];
u16 ErrorFlag;
u8 SendTime;
u8 TimeCount;
u8 ID_1,ID_2;
u8 State;
u8 ReadState;
u16 SetFlowValue_1;
u16 SetFlowValue_2;
void (*Init)(void);
void (*Tx_Task)(void);
void (*Rx_Task)(u8 *,u16);
void (*SetFlow_1)(float);
void (*SetFlow_2)(float);
}proto_CS200_t;
extern proto_CS200_t CS200;
#endif