#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