R2UWaterRS485UW500/app/UWater_Frame/UWater_frame_func_ReplyBLE.h

144 lines
4.4 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 UWATER_FRAME_FUNC_REPLAY_BLE_H
#define UWATER_FRAME_FUNC_REPLAY_BLE_H
#include "sys_config.h"
#include "type.h"
#if PRODUCT_BLE_SS
//----------------------------------------------蓝牙规约协议----------------------------------------/
/**
数据标识0不从0开始
增加读取功能配置字
*/
//抄读表数
#define BLE_READ_DATA_DI0 0x00
#define BLE_READ_DATA_DI1 0x50
//阀控
#define BLE_VALVE_CTRL_DI0 0x01
#define BLE_VALVE_CTRL_DI1 0x50
//读取表地址
#define BLE_READ_MET_DI0 0x02
#define BLE_READ_MET_DI1 0x50
//设置表地址
#define BLE_SET_MET_DI0 0x03
#define BLE_SET_MET_DI1 0x50
//设置表底数
#define BLE_SET_DATA_DI0 0x04
#define BLE_SET_DATA_DI1 0x50
//升级
#define BLE_SET_BOOT_DI0 0x05
#define BLE_SET_BOOT_DI1 0x50
//读软件版本
#define BLE_READ_VERSION_DI0 0x06
#define BLE_READ_VERSION_DI1 0x50
//读表时间
#define BLE_READ_TIME_DI0 0x07
#define BLE_READ_TIME_DI1 0x50
//设置表时间
#define BLE_SET_TIME_DI0 0x08
#define BLE_SET_TIME_DI1 0x50
//启动自检
#define BLE_TEST_START_DI0 0x09
#define BLE_TEST_START_DI1 0x50
//查询自检
#define BLE_TEST_READ_DI0 0x0A
#define BLE_TEST_READ_DI1 0x50
//启动校准
#define BLE_ADJUST_START_DI0 0x0B
#define BLE_ADJUST_START_DI1 0x50
//查询校准
#define BLE_ADJUST_READ_DI0 0x0C
#define BLE_ADJUST_READ_DI1 0x50
//读SOE
#define BLE_READ_SOE_DI0 0x0D
#define BLE_READ_SOE_DI1 0x50
//读欠压阈值
#define BLE_READ_PWLOW_DI0 0x0E
#define BLE_READ_PWLOW_DI1 0x50
//设置欠压阈值
#define BLE_SET_PWLOW_DI0 0x0F
#define BLE_SET_PWLOW_DI1 0x50
//读EE数据
#define BLE_READ_EEPROM_DI0 0x10
#define BLE_READ_EEPROM_DI1 0x50
//擦除EEPROM
#define BLE_ERASE_EEPROM_DI0 0x11
#define BLE_ERASE_EEPROM_DI1 0x50
//读RAM区数据
#define BLE_READ_RAM_DI0 0x12
#define BLE_READ_RAM_DI1 0x50
//读取过流告警值与持续时间
#define BLE_READ_OVERFLOW_DI0 0x13
#define BLE_READ_OVERFLOW_DI1 0x50
//设置过流告警值与持续时间
#define BLE_SET_OVERFLOW_DI0 0x14
#define BLE_SET_OVERFLOW_DI1 0x50
//读取过流告警值与持续时间
#define BLE_READ_ROVERFLOW_DI0 0x15
#define BLE_READ_ROVERFLOW_DI1 0x50
//设置过流告警值与持续时间
#define BLE_SET_ROVERFLOW_DI0 0x16
#define BLE_SET_ROVERFLOW_DI1 0x50
//读日结数据
#define BLE_READ_DAILY_DI0 0x17
#define BLE_READ_DAILY_DI1 0x50
//读月结数据
#define BLE_READ_MONTH_DI0 0x18
#define BLE_READ_MONTH_DI1 0x50
//MCU重启
#define BLE_RESET_MCU_DI0 0x19
#define BLE_RESET_MCU_DI1 0x50
//设置功能配置字
#define BLE_SET_CONFIG_DI0 0x1A
#define BLE_SET_CONFIG_DI1 0x50
//读瞬时流量和温度
#define BLE_READ_FLOWTEMP_DI0 0x1B
#define BLE_READ_FLOWTEMP_DI1 0x50
//进入检定
#define BLE_ENTER_TEST_DI0 0x1C
#define BLE_ENTER_TEST_DI1 0x50
//读检定数据
#define BLE_READ_TEST_DI0 0x1D
#define BLE_READ_TEST_DI1 0x50
//退出检定
#define BLE_EXIT_TEST_DI0 0x1E
#define BLE_EXIT_TEST_DI1 0x50
//读某日历史数据
#define BLE_READ_HIS_DI0 0x1F
#define BLE_READ_HIS_DI1 0x50
//设置OTA升级标志
#define BLE_OTA_NOTIC_DI0 0x80
#define BLE_OTA_NOTIC_DI1 0x50
typedef enum{
BLE_STATE_S0 = 0,
BLE_STATE_S1,
BLE_STATE_S2,
BLE_STATE_S3,
BLE_STATE_S4
}TYP_STATE_BLE;
#define PACK_NUM_GPRS 155
//获取状态字
UNION_4U8TOU32 getBleWetState(void);
//规约数据存储部分初始化
void DataStoreInit(void);
//规约数据存储状态机
void DataStoreMachine(void);
//规约数据存储休眠判断
u8 DataStoreIfIdle(void);
u8 crack_frame_BLE(u16 frame_lenth,u8 *frame_buffer);
//深水规约处理
u8 up_deal_code_ble(void);
void Frame_ResetDealState_BLE(void);
//应答数据组帧
void Frame_ack_BLE(u8* p_send_buf, u16* p_send_len);
u32 sys_get_net_state(void);
void setBleReadAccessFlag(u8 data);
#endif
#endif