BLE_TYQ_BJQ_CH584M/bsp/inc/bsp_valve.h

103 lines
2.3 KiB
C
Raw Normal View History

/***
* @Author: mbw
* @Date: 2024-12-09 11:40:04
* @LastEditors: mbw && 1600520629@qq.com
2025-04-24 10:33:19 +08:00
* @LastEditTime: 2025-04-22 13:19:22
* @FilePath: \ble_-tyq_-bjq_-ch584-m\bsp\inc\bsp_valve.h
* @Description:
* @
* @Copyright (c) 2025 by ${git_name_email}, All Rights Reserved.
*/
/***
* @Author: mbw
* @Date: 2024-12-09 11:40:04
* @LastEditors: mbw && 1600520629@qq.com
* @LastEditTime: 2024-12-12 17:50:12
* @FilePath: \ble_-tyq_-bjq_-ch584-m\bsp\inc\bsp_valve.h
* @Description:
* @
* @Copyright (c) 2024 by ${git_name_email}, All Rights Reserved.
*/
#ifndef __BSP_VALVE_H__
#define __BSP_VALVE_H__
2024-12-11 20:03:50 +08:00
#include "CH58x_common.h"
#define MAX_VALVE_NUM 8
typedef enum
{
2024-12-11 20:03:50 +08:00
kValveCmdCtr = 0X01,
kValveCmdReg,
kValveCmdRem,
kValveCmdRep,
kValveCmdRemAll,//移除所有的阀门地址
2024-12-13 19:07:00 +08:00
kValveEventStatus,//阀门状态包
2025-04-24 10:33:19 +08:00
kValveConncetStatus,//阀门状态包
2024-12-13 19:07:00 +08:00
kValveCmdMax,
2024-12-11 20:03:50 +08:00
} ValveCmdType;
typedef enum
{
WirelessValveClose = 0x01,
WirelessValveOpen,
2024-12-11 20:03:50 +08:00
} WireLessState;
// 阀门类型
typedef enum
{
kTyq = 0X01,
kZbf,
kDcf,
} TeVavleType;
typedef enum
{
kCmdCfg = 0X01,
2024-12-12 19:38:49 +08:00
kCmdCloseVavle,
kCmdOpenVavle,
kCmdData,
} TeFrameCmd;
2024-12-11 20:03:50 +08:00
/*
线
线 MAC
线
线
线
线
线
线
*/
struct __attribute__((packed)) valve_data
{
uint8_t valve_id;
uint8_t valve_mac[6];
2024-12-16 15:34:47 +08:00
uint8_t valve_connct_status;
uint8_t valve_switch_status;
uint8_t valve_temp;
uint32_t valve_in_pressure;
uint32_t valve_out_pressure;
uint32_t valve_atm_pressure;
uint8_t valve_type;
2024-12-11 20:03:50 +08:00
};
typedef struct valve_data_list
{
uint8_t valve_num;
2024-12-13 19:07:00 +08:00
struct valve_data valve_data[MAX_VALVE_NUM];
} valve_data_list_t;
2024-12-11 20:03:50 +08:00
extern valve_data_list_t valve_list;
2024-12-13 19:07:00 +08:00
void BSP_Valve_Init(void);
2024-12-11 20:03:50 +08:00
int BSP_Bt_Valve_Ctr(uint8_t *data, uint8_t len);
int BSP_Bt_Register_Valve(uint8_t *data, uint8_t len);
int BSP_Bt_Remove_Valve(uint8_t *data, uint8_t len);
int BSP_Bt_Replace_Valve(uint8_t *data, uint8_t len);
void BSP_Bt_Valve_Updata(void);
int BSP_Bt_Remove_All_Valve(void);
2024-12-13 19:07:00 +08:00
int BSP_Bt_Valve_Resp(uint8_t cmd, uint8_t id, uint8_t *mac_addr, uint8_t state);
2024-12-11 20:03:50 +08:00
#endif // ! __BSP_VALVE_H__