加了本地删除所有阀门数据的功能
This commit is contained in:
parent
29bfea488d
commit
b422fa964d
|
@ -1,3 +1,13 @@
|
|||
/***
|
||||
* @Author: mbw
|
||||
* @Date: 2024-12-09 11:40:04
|
||||
* @LastEditors: mbw && 1600520629@qq.com
|
||||
* @LastEditTime: 2025-01-02 14:09:43
|
||||
* @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
|
||||
|
@ -21,6 +31,7 @@ typedef enum
|
|||
kValveCmdReg,
|
||||
kValveCmdRem,
|
||||
kValveCmdRep,
|
||||
kValveCmdRemAll,//移除所有的阀门地址
|
||||
kValveEventStatus,//阀门状态包
|
||||
kValveCmdMax,
|
||||
} ValveCmdType;
|
||||
|
@ -84,7 +95,7 @@ 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);
|
||||
int BSP_Bt_Valve_Resp(uint8_t cmd, uint8_t id, uint8_t *mac_addr, uint8_t state);
|
||||
|
||||
#endif // ! __BSP_VALVE_H__
|
||||
|
|
|
@ -204,6 +204,18 @@ int BSP_Bt_Process(uint8_t *data, uint16_t len)
|
|||
BSP_Bt_Valve_Resp(kValveCmdRep, valve_list.valve_data[CONNECT0_ITEM].valve_id, valve_list.valve_data[CONNECT0_ITEM].valve_mac, FALSE);
|
||||
}
|
||||
break;
|
||||
case kValveCmdRemAll:
|
||||
logDebug("recv cmd: 0x04, 执行的动作是移除所有阀门信息");
|
||||
ret = BSP_Bt_Remove_All_Valve();
|
||||
if (ret == 0)
|
||||
{
|
||||
BSP_Bt_Valve_Resp(kValveCmdRemAll, 0, 0, TRUE);
|
||||
}
|
||||
else
|
||||
{
|
||||
BSP_Bt_Valve_Resp(kValveCmdRemAll, 0, 0, FALSE);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
logError("unknow cmd: %02X", data[index + 2]);
|
||||
break;
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: mbw
|
||||
* @Date: 2024-12-09 11:40:10
|
||||
* @LastEditors: mbw && 1600520629@qq.com
|
||||
* @LastEditTime: 2025-01-02 13:24:41
|
||||
* @LastEditTime: 2025-01-02 14:44:19
|
||||
* @FilePath: \ble_-tyq_-bjq_-ch584-m\bsp\src\bsp_valve.c
|
||||
* @Description:
|
||||
*
|
||||
|
@ -199,6 +199,32 @@ int BSP_Bt_Remove_Valve(uint8_t *data, uint8_t len)
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*移除所有阀门信息*/
|
||||
int BSP_Bt_Remove_All_Valve(void)
|
||||
{
|
||||
uint8_t mac_addr[FLASH_MAC_INFO_LEN + 2] = {0};
|
||||
uint8_t num = Flash_Get_Valve_Num();
|
||||
if(num == 0)
|
||||
{
|
||||
logError("没有找到任何阀门信息");
|
||||
return 0;
|
||||
}
|
||||
tmos_memset(mac_addr, 0xFF, FLASH_MAC_INFO_LEN);
|
||||
if (Flash_Set_Mac_Addr(mac_addr, 1) != 0)
|
||||
{
|
||||
logError("移除阀门信息失败[-2]");
|
||||
return -2;
|
||||
}
|
||||
if (Flash_Set_Valve_Num(0) != 0) // 移除一个阀门
|
||||
{
|
||||
logError("移除阀门信息失败[-3]");
|
||||
return -3;
|
||||
}
|
||||
BSP_Bt_Valve_Updata();
|
||||
Master_DisConnect();
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*更换阀门信息*/
|
||||
int BSP_Bt_Replace_Valve(uint8_t *data, uint8_t len)
|
||||
{
|
||||
|
@ -299,6 +325,10 @@ int BSP_Bt_Valve_Resp(uint8_t cmd, uint8_t id, uint8_t *mac_addr, uint8_t state)
|
|||
ptr->buf[7] = state;
|
||||
BT_GenerateRawFrame(&valve_frame_data, (uint8_t *)ptr, 9);
|
||||
break;
|
||||
case kValveCmdRemAll:
|
||||
ptr->buf[0] = state;
|
||||
BT_GenerateRawFrame(&valve_frame_data, (uint8_t *)ptr, 2);
|
||||
break;
|
||||
case kValveEventStatus:
|
||||
tmos_memcpy(&ptr->buf[0], &valve_list.valve_data[id - 1], sizeof(struct valve_data));
|
||||
BT_GenerateRawFrame(&valve_frame_data, (uint8_t *)ptr, sizeof(struct valve_data));
|
||||
|
|
Loading…
Reference in New Issue