12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- #ifndef DEVICE_MESSAGE_H
- #define DEVICE_MESSAGE_H
-
- #include <stdint.h>
-
- typedef struct _DEVICE_READ_DATA_INFO{
-
- uint8_t decimalPoint;
- uint8_t keyword[20];
- uint8_t deviceId[20];
- uint8_t mdbSlave;
- uint8_t mdbFunctionCode;
- uint16_t registerLength;
- uint16_t mdbRegister;
- uint8_t deviceID645[6];
- uint16_t datalength;
- uint32_t dataType645;
- uint8_t bigLittleFormat;
- uint8_t data[9]; //从机应答的值,前四个字节存储浮点数数据、后面五个字节存储645 DATE内容
- uint8_t rxLen; //从机应答值的长度
- }device_read_data; //70字节
- typedef struct _DEVICE_WRITE_DATA_INFO{
- uint8_t decimalPoint;
- uint8_t keyword[20];
- uint8_t deviceId[20];
- uint8_t mdbSlave;
- uint8_t mdbFunctionCode;
- uint16_t registerLength;
- uint16_t mdbRegister;
- uint32_t deviceID645;
- uint8_t bigLittleFormat;
- uint16_t data; //只支持写入一个16位寄存器的值
- uint8_t flag; //写是否成功标志位 0失败 1成功
- }device_write_data; //50字节
- typedef struct _CONFIG_PARAMS
- {
- uint8_t data_valid_flag; //数据有效标志 0xF1:有效 其它:无效
- uint8_t host[20]; //MQTT服务器地址
- uint16_t port; //MQTT服务器端口号
- uint8_t messageTopic[50]; //MQTT消息主题
- uint8_t commandTopic[50]; //MQTT指令主题
- uint32_t baudrate; //波特率
- uint8_t dataBits; //数据位
- uint8_t checkBit; //校验位
- uint8_t stopBit; //停止位
- uint8_t flowControl; //流控制
- uint8_t deviceId[20]; //设备ID
- uint8_t dataSource; //协议类型 0 保留 1 表示645协议 2表示modbus协议
- uint8_t dataType645; //645协议数据类型 0保留 1 表示07版本 2表示97版本
- uint32_t pollTime; //轮询时间
- uint32_t inboundTime;
- uint8_t device_read_data_num;
- uint8_t device_write_data_num;
- device_read_data device_read_data[180];
- device_write_data device_write_data[120];
-
- uint8_t state; //检测是否上位机配置过当上位机配置过该状态位,则以后均不走http获取相应配置 置位值为0xF1
- uint8_t version[10]; //用于版本检测升级
- uint8_t gatewayId[10]; //固化信息
- uint8_t gatewayMode[10]; //工作模式、后续版本迭代使用
- //网关相关信息
- uint8_t gateName[10];
- }CONFIG_PARAMS; //168+180*70+120*50+41=19000字节/4=4750
-
- typedef union _CONFIG_PARAMS_UNION
- {
- CONFIG_PARAMS config_params;
- uint32_t data[4750];
- }CONFIG_PARAMS_UNION;
-
- extern int load_config_params(void);
-
- extern CONFIG_PARAMS *get_config_params(void);
-
-
- extern int save_config_params(CONFIG_PARAMS *params);
- extern void clear_gateway_config_block(void);
-
- #endif
|