feat(DLD110S): V4.31 — 断开次数双变量拆分(g_loop_cut_amount≤3 LED / g_loop_cut_total持续累计BLE上报) + 恢复g_loop_cut_last边沿同步 + 文档同步

This commit is contained in:
wangfq
2026-08-26 17:56:04 +08:00
parent d45c0528a1
commit 20f6b3a38a
7 changed files with 52 additions and 15 deletions
+5 -5
View File
@@ -506,9 +506,9 @@ void usart_packet_processing_acs_loop(uint8_t flag)
if(g_loop_acs_info.flag_change){
g_loop_acs_info.flag_change = 0;
}
g_tmp_report_buf.buf[i++] = (g_loop_power_up_state == 0) ? 1 : ((uint8_t)g_loop_cut_amount);
g_tmp_report_buf.buf[i++] = (g_loop_power_up_state == 0) ? 0 : ((g_loop_cut_amount >> 8) % 0x100);
g_tmp_report_buf.buf[i++] = (g_loop_power_up_state == 0) ? 0 : ((g_loop_cut_amount >> 16) % 0x100);
g_tmp_report_buf.buf[i++] = (g_loop_power_up_state == 0) ? 1 : ((uint8_t)g_loop_cut_total);
g_tmp_report_buf.buf[i++] = (g_loop_power_up_state == 0) ? 0 : ((g_loop_cut_total >> 8) % 0x100);
g_tmp_report_buf.buf[i++] = (g_loop_power_up_state == 0) ? 0 : ((g_loop_cut_total >> 16) % 0x100);
g_tmp_report_buf.buf[i++] = (uint8_t)g_loop_acs_info.frequent;
g_tmp_report_buf.buf[i++] = (g_loop_acs_info.frequent >> 8) % 0x100;
@@ -629,8 +629,8 @@ void manage_dbn_ble_default(uint8_t *pkg, uint8_t len)
tmp_ble_buf[i++] = g_loop_cng_unit.output_mode | (g_loop_cng_unit.loopSafe_Timeout << 3);
tmp_ble_buf[i++] = g_loop_cng_unit.exist_mode;
tmp_ble_buf[i++] = g_loop_sens_list.total << 4;
tmp_ble_buf[i++] = (g_loop_power_up_state == 0) ? 1 : ((uint8_t)(g_loop_cut_amount));
tmp_ble_buf[i++] = (uint8_t)(g_loop_cut_amount >> 8);
tmp_ble_buf[i++] = (g_loop_power_up_state == 0) ? 1 : ((uint8_t)(g_loop_cut_total));
tmp_ble_buf[i++] = (uint8_t)(g_loop_cut_total >> 8);
tmp_ble_buf[i++] = g_function_mode;
/* V1.1: 追加归一化基数 LOOP_MEASURE_BASE (2^19=524288, LE), 供第三方 variation 换算 dL/L */
tmp_ble_buf[i++] = (uint8_t)(LOOP_MEASURE_BASE);
@@ -13,10 +13,10 @@
#include <stdint.h>
#define PRODUCT_MODEL "DLD110S"
#define FIRMWARE_VER "4.20"
#define FIRMWARE_VER "4.31"
#define HARDWARE_VER "4.01"
#define FIRMWARE_VER_MAIN 4
#define FIRMWARE_VER_SUB 20
#define FIRMWARE_VER_SUB 31
#define HARDWARE_VER_MAIN 4
#define HARDWARE_VER_SUB 1
@@ -37,6 +37,7 @@ extern uint8_t MACAddr[6];
extern uint8_t g_loop_cut_last;
extern uint32_t g_loop_cut_amount;
extern uint32_t g_loop_cut_total;
extern uint8_t g_loop_power_up_state;
extern uint8_t g_function_mode;
@@ -81,7 +81,8 @@ uint32_t mstick(void){
uint32_t u32CountWdt = 0;
uint8_t g_loop_cut_last = 0;
uint32_t g_loop_cut_amount = 0;
uint32_t g_loop_cut_amount = 0; // LED 快闪用 (3次上限)
uint32_t g_loop_cut_total = 0; // 上电后持续累计断开次数 (BLE 上报用, 不截断)
/*********************************************************************
@@ -821,6 +822,10 @@ void cjq_srv(void){
g_loop_cut_last = loop1_FLAG_CUT;
if(g_loop_power_up_state){
g_loop_cut_amount++;
if(g_loop_cut_amount > 3){
g_loop_cut_amount = 3;
}
g_loop_cut_total++; // 持续累计, 不截断 (BLE 上报用)
}
}