This commit is contained in:
parent
caa17f68ed
commit
86f27d8e6d
|
@ -18,11 +18,25 @@
|
|||
}
|
||||
],
|
||||
"files.associations": {
|
||||
"*.sqlbook": "sql",
|
||||
"*.ndjson": "jsonl",
|
||||
"*.dbclient-js": "javascript",
|
||||
"config.h": "c",
|
||||
"ch58xble_lib.h": "c",
|
||||
"bsp_uart.h": "c",
|
||||
"bsp_iwdg.h": "c",
|
||||
"log.h": "c"
|
||||
"log.h": "c",
|
||||
"hal.h": "c",
|
||||
"multicentral.h": "c",
|
||||
"bsp_valve.h": "c",
|
||||
"shell_port.h": "c",
|
||||
"atomic": "c",
|
||||
"cstddef": "c",
|
||||
"type_traits": "c",
|
||||
"gattprofile.h": "c",
|
||||
"bsp_flash.h": "c",
|
||||
"shell.h": "c",
|
||||
"ch58x_uart.h": "c",
|
||||
"bsp_tim.h": "c"
|
||||
}
|
||||
}
|
|
@ -819,6 +819,16 @@ static void centralEventCB(gapRoleEvent_t *pEvent)
|
|||
centralScanRes = 0;
|
||||
tmos_stop_task(centralConnList[connItem].taskID, START_READ_RSSI_EVT);
|
||||
logDebug("Discovering...\r\n");
|
||||
//更新阀门状态信息
|
||||
if (bt_connect_flag == 1)
|
||||
{
|
||||
bt_connect_flag = 0;
|
||||
valve_list.valve_data[0].valve_connct_status = FALSE;
|
||||
valve_list.valve_data[0].valve_switch_status = FALSE;
|
||||
valve_list.valve_data[0].valve_temp = FALSE;
|
||||
BSP_Bt_Valve_Resp(kValveConncetStatus, valve_list.valve_data[0].valve_id, valve_list.valve_data[0].valve_mac, FALSE);//表示连接成功
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
case GAP_LINK_PARAM_UPDATE_EVENT:
|
||||
|
@ -1242,8 +1252,6 @@ int BSP_Master_Receive_Data(uint8_t task_id, uint8_t *data, uint16_t len)
|
|||
|
||||
return -5;
|
||||
}
|
||||
// logDebug("BT 数据帧校验通过");
|
||||
|
||||
// //有效数据长度
|
||||
size_t data_len = (datalength + 5);
|
||||
ret = data_len;
|
||||
|
|
|
@ -101,6 +101,10 @@ int main(void)
|
|||
GAPRole_CentralInit();
|
||||
Central_Init();
|
||||
|
||||
logDebug("get_ticks %d", BSP_Get_Tick());
|
||||
DelayMs(2000);
|
||||
logDebug("get_ticks %d", BSP_Get_Tick());
|
||||
|
||||
BSP_FLASH_Init();
|
||||
BSP_Valve_Init();
|
||||
BSP_UART1_Init(); // BT UART
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: mbw
|
||||
* @Date: 2024-12-06 16:52:29
|
||||
* @LastEditors: mbw && 1600520629@qq.com
|
||||
* @LastEditTime: 2025-01-02 11:22:39
|
||||
* @LastEditTime: 2025-04-22 15:24:49
|
||||
* @FilePath: \ble_-tyq_-bjq_-ch584-m\bsp\inc\bsp_uart.h
|
||||
* @Description:
|
||||
* @
|
||||
|
@ -38,6 +38,8 @@ typedef struct __attribute__((packed))
|
|||
uint8_t buf[256];
|
||||
} BTFrameData;
|
||||
|
||||
extern uint8_t bt_connect_flag;
|
||||
extern uint8_t BtRxTaskId;
|
||||
|
||||
void BSP_UART1_Init(void);
|
||||
unsigned int BSP_Uart1_Receive_Data(void *buf, unsigned int len);
|
||||
|
@ -52,6 +54,6 @@ unsigned int BSP_Uart3_Send_Data(const void *buf, unsigned int len);
|
|||
uint8_t _CheckSum(const uint8_t *data, size_t len);
|
||||
uint8_t BT_GenerateRawFrame(BTFrameData *pRawData, const uint8_t *p_src, uint8_t src_len);
|
||||
|
||||
extern uint8_t BtRxTaskId;
|
||||
|
||||
|
||||
#endif // !__BSP_UART_H__
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: mbw
|
||||
* @Date: 2024-12-09 11:40:04
|
||||
* @LastEditors: mbw && 1600520629@qq.com
|
||||
* @LastEditTime: 2025-01-02 14:09:43
|
||||
* @LastEditTime: 2025-04-22 13:19:22
|
||||
* @FilePath: \ble_-tyq_-bjq_-ch584-m\bsp\inc\bsp_valve.h
|
||||
* @Description:
|
||||
* @
|
||||
|
@ -33,6 +33,7 @@ typedef enum
|
|||
kValveCmdRep,
|
||||
kValveCmdRemAll,//移除所有的阀门地址
|
||||
kValveEventStatus,//阀门状态包
|
||||
kValveConncetStatus,//阀门状态包
|
||||
kValveCmdMax,
|
||||
} ValveCmdType;
|
||||
|
||||
|
|
|
@ -98,6 +98,7 @@ void BSP_FLASH_Init(void)
|
|||
if (flash_write_flag != FLASH_INFO_WRITE_FLAG_VAL) // 用以防止刷掉写入的数据
|
||||
{
|
||||
logDebug("flash_write_flag != FLASH_INFO_WRITE_FLAG_VAL");
|
||||
logDebug("BSP_FLASH_Init");
|
||||
flash_write_flag = FLASH_INFO_WRITE_FLAG_VAL;
|
||||
// 擦除数据
|
||||
EEPROM_ERASE(FLASH_INFO_ADDR, DATA_FLASH_PAGE_SIZE); // 擦除待写区
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: mbw
|
||||
* @Date: 2024-12-07 15:13:24
|
||||
* @LastEditors: mbw && 1600520629@qq.com
|
||||
* @LastEditTime: 2024-12-16 14:54:45
|
||||
* @LastEditTime: 2025-04-24 09:42:42
|
||||
* @FilePath: \ble_-tyq_-bjq_-ch584-m\bsp\src\bsp_tim.c
|
||||
* @Description:
|
||||
*
|
||||
|
@ -11,12 +11,10 @@
|
|||
#include "bsp_tim.h"
|
||||
#include "HAL.h"
|
||||
|
||||
|
||||
// tick_1ms_cnt<6E><74>SysTick_Handler()<29><>1ms +1
|
||||
volatile uint32_t tick_1ms_cnt = 0;
|
||||
|
||||
/**
|
||||
* @description: <EFBFBD><EFBFBD>SysTick<EFBFBD><EFBFBD>1ms<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
* @description:
|
||||
* @return {uint32_t}
|
||||
*/
|
||||
uint32_t BSP_Get_Tick(void)
|
||||
|
@ -27,14 +25,13 @@ uint32_t BSP_Get_Tick(void)
|
|||
}
|
||||
|
||||
|
||||
// SysTick<63>жϺ<D0B6><CFBA><EFBFBD>
|
||||
__INTERRUPT
|
||||
__HIGH_CODE
|
||||
void SysTick_Handler()
|
||||
{
|
||||
static uint8_t cnt_ms = 0;
|
||||
|
||||
SysTick->SR = 0; // <20><><EFBFBD><EFBFBD>жϱ<D0B6>־
|
||||
SysTick->SR = 0;
|
||||
tick_1ms_cnt++;
|
||||
|
||||
cnt_ms++;
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: mbw
|
||||
* @Date: 2024-12-06 16:52:30
|
||||
* @LastEditors: mbw && 1600520629@qq.com
|
||||
* @LastEditTime: 2025-01-02 11:38:30
|
||||
* @LastEditTime: 2025-04-22 15:16:57
|
||||
* @FilePath: \ble_-tyq_-bjq_-ch584-m\bsp\src\bsp_uart.c
|
||||
* @Description:
|
||||
*
|
||||
|
@ -43,6 +43,8 @@ uint8_t uart3_rx_buf[UART3_RX_BUFFER_LENGTH] = {0};
|
|||
|
||||
uint8_t BtRxTaskId;
|
||||
|
||||
uint8_t bt_connect_flag = 0;
|
||||
|
||||
BTFrameData bt_frame = {0};
|
||||
/**
|
||||
* @description: 从帧起始符开始到校验码之前所有字节的和的模256,即各字节不计超过255的溢出值的二进制算术和。
|
||||
|
@ -310,7 +312,17 @@ uint16_t BSP_Send_Process(uint8_t *pdata)
|
|||
case kCmdData:
|
||||
valve_list.valve_data[0].valve_connct_status = 1;
|
||||
tmos_memcpy(&valve_list.valve_data[0].valve_switch_status, &master_rx_buf[3], master_rx_buf[2]);
|
||||
BSP_Bt_Valve_Resp(kValveEventStatus, valve_list.valve_data[0].valve_id, valve_list.valve_data[0].valve_mac, 0);
|
||||
|
||||
if ((bt_connect_flag != 1) && (valve_list.valve_data[0].valve_connct_status == 1))
|
||||
{
|
||||
bt_connect_flag = 1;
|
||||
logDebug("阀门连接成功");
|
||||
BSP_Bt_Valve_Resp(kValveConncetStatus, valve_list.valve_data[0].valve_id, valve_list.valve_data[0].valve_mac, TRUE);//表示连接成功
|
||||
}
|
||||
else
|
||||
{
|
||||
BSP_Bt_Valve_Resp(kValveEventStatus, valve_list.valve_data[0].valve_id, valve_list.valve_data[0].valve_mac, TRUE);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
logError("不支持的命令: %d", master_rx_buf[1]);
|
||||
|
@ -415,7 +427,7 @@ void BSP_UART3_Init(void)
|
|||
GPIOB_ModeCfg(UART3_TX_PIN, GPIO_ModeOut_PP_5mA); // TXD-配置推挽输出,注意先让IO口输出高电平
|
||||
UART3_DefInit();
|
||||
UART3_BaudRateCfg(460800);
|
||||
UART3_ByteTrigCfg(UART_7BYTE_TRIG);
|
||||
UART3_ByteTrigCfg(UART_1BYTE_TRIG);
|
||||
// 中断方式接收数据
|
||||
UART3_INTCfg(ENABLE, RB_IER_LINE_STAT | RB_IER_RECV_RDY);
|
||||
PFIC_EnableIRQ(UART3_IRQn);
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: mbw
|
||||
* @Date: 2024-12-09 11:40:10
|
||||
* @LastEditors: mbw && 1600520629@qq.com
|
||||
* @LastEditTime: 2025-01-04 13:02:54
|
||||
* @LastEditTime: 2025-04-22 15:15:24
|
||||
* @FilePath: \ble_-tyq_-bjq_-ch584-m\bsp\src\bsp_valve.c
|
||||
* @Description:
|
||||
*
|
||||
|
@ -305,6 +305,7 @@ void BSP_Bt_Valve_Updata(void)
|
|||
|
||||
}
|
||||
|
||||
//蓝牙主机对报警器的响应函数。 state表示此对应的项目,可能是执行成功与否,可能是蓝牙连接状态吗,具体参考对应的case
|
||||
int BSP_Bt_Valve_Resp(uint8_t cmd, uint8_t id, uint8_t *mac_addr, uint8_t state)
|
||||
{
|
||||
uint8_t ret = 0;
|
||||
|
@ -329,6 +330,13 @@ int BSP_Bt_Valve_Resp(uint8_t cmd, uint8_t id, uint8_t *mac_addr, uint8_t state)
|
|||
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));
|
||||
break;
|
||||
case kValveConncetStatus:
|
||||
ptr->buf[0] = id;
|
||||
tmos_memcpy(&ptr->buf[1], mac_addr, 6);
|
||||
ptr->buf[7] = state; //0表示断开,1表示连接
|
||||
logDebug("连接状态:%d", ptr->buf[7]);
|
||||
BT_GenerateRawFrame(&valve_frame_data, (uint8_t *)ptr, 9);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue