diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs index 3af6d1f..d02a8fd 100644 --- a/.settings/org.eclipse.core.resources.prefs +++ b/.settings/org.eclipse.core.resources.prefs @@ -17,3 +17,4 @@ encoding//StdPeriphDriver/inc/CH58x_sys.h=GBK encoding//StdPeriphDriver/inc/CH58x_uart.h=GBK encoding//StdPeriphDriver/inc/ISP585.h=GBK encoding//bsp/inc/bsp_uart.h=UTF-8 +encoding//obj/BLE_TYQ_BJQ_CH584M.map=GBK diff --git a/APP/multiCentral.c b/APP/multiCentral.c index 5db6d32..c894df2 100644 --- a/APP/multiCentral.c +++ b/APP/multiCentral.c @@ -1336,14 +1336,10 @@ uint16_t Master_ProcessEvent(uint8_t task_id, uint16_t events) { if (Flash_Get_Valve_Num())//如果有设备,发起连接 { - tmos_start_task(task_id, MASTER_CONNECT_EVT, 2400); - } - else//没有则开启定时检测 - { - logDebug("没有设备,开启定时检测\r\n"); - tmos_start_task(task_id, MASTER_DETECT_EVT, 2400); + tmos_start_task(task_id, MASTER_CONNECT_EVT, 1600); } } + tmos_start_task(task_id, MASTER_DETECT_EVT, 3200); return (events ^ MASTER_START_EVT); } else if(events & MASTER_DETECT_EVT) @@ -1353,10 +1349,10 @@ uint16_t Master_ProcessEvent(uint8_t task_id, uint16_t events) if (Flash_Get_Valve_Num()) { logDebug("有设备,尝试连接\r\n"); - tmos_start_task(task_id, MASTER_CONNECT_EVT, 2400); + tmos_start_task(task_id, MASTER_CONNECT_EVT, 1600); } } - tmos_start_task(task_id, MASTER_DETECT_EVT, 2400); + tmos_start_task(task_id, MASTER_DETECT_EVT, 3200); return (events ^ MASTER_DETECT_EVT); } diff --git a/bsp/src/bsp_flash.c b/bsp/src/bsp_flash.c index 2895748..d783e6b 100644 --- a/bsp/src/bsp_flash.c +++ b/bsp/src/bsp_flash.c @@ -2,7 +2,7 @@ * @Author: mbw * @Date: 2024-12-06 14:49:21 * @LastEditors: mbw && 1600520629@qq.com - * @LastEditTime: 2024-12-15 15:05:39 + * @LastEditTime: 2024-12-17 09:36:33 * @FilePath: \ble_-tyq_-bjq_-ch584-m\bsp\src\bsp_flash.c * @Description: 主要用于对一些MAC地址等关键信息进行保存和读取操作 * @@ -20,13 +20,15 @@ void Flash_ErasePage_ReadConfigInfo(uint8_t *page_buf) { EEPROM_READ(FLASH_INFO_ADDR, page_buf, DATA_FLASH_PAGE_SIZE); + DelayMs(2); EEPROM_ERASE(FLASH_INFO_ADDR, DATA_FLASH_PAGE_SIZE); + DelayMs(2); } int Flash_Write_ConfigInfo(uint8_t *page_buf) { EEPROM_WRITE(FLASH_INFO_ADDR, page_buf, DATA_FLASH_PAGE_SIZE); - + DelayMs(2); return 0; } @@ -68,6 +70,7 @@ int Flash_Get_Mac_Addr(uint8_t *mac_addr, uint8_t number) /*设置无线调压器数量*/ int Flash_Set_Valve_Num(uint8_t valve_num) { + __attribute__((aligned(4))) uint8_t page_buf[DATA_FLASH_PAGE_SIZE] = {0}; uint8_t in_page_offset = (FLASH_MAC_NUM_ADDR - FLASH_INFO_ADDR); Flash_ErasePage_ReadConfigInfo(page_buf); diff --git a/bsp/src/bsp_valve.c b/bsp/src/bsp_valve.c index a9e559d..878669a 100644 --- a/bsp/src/bsp_valve.c +++ b/bsp/src/bsp_valve.c @@ -139,7 +139,9 @@ int BSP_Bt_Register_Valve(uint8_t *data, uint8_t len) else { uint8_t num = Flash_Get_Valve_Num(); - Flash_Set_Valve_Num(num + 1); + logDebug("num : %02X ", num); + Flash_Set_Valve_Num(1); + logDebug("写入成功,当前阀门数量为: %d", num); BSP_Bt_Valve_Updata(); // 更新阀门信息 }