feat: 上电3秒内抑制主动上报, 等线圈稳定
- uart_report_packet_loop_acs 开头检查 misc_counter < 60 (3s@50ms) - 抑制期内清零 report_counter 防止出抑制后立即触发上报 - 利用 misc_counter 自由运行特性, 无需额外静态变量
This commit is contained in:
@@ -417,6 +417,12 @@ void uart_report_packet_loop_acs(uint8_t flag)
|
|||||||
uint32_t _misc_val[LOOP_CAPTURE_MAX] = {0};
|
uint32_t _misc_val[LOOP_CAPTURE_MAX] = {0};
|
||||||
uint16_t _interval;
|
uint16_t _interval;
|
||||||
|
|
||||||
|
/*--- 0. 上电抑制: 3秒内不上报, 等线圈稳定 ---*/
|
||||||
|
if (g_loop_states.misc_counter < 60) { // 60 × 50ms = 3s
|
||||||
|
g_loop_states.report_counter = 0; // 抑制期清零, 防止出抑制后立即上报
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
/*--- 1. 检查是否有进场/离开事件 ---*/
|
/*--- 1. 检查是否有进场/离开事件 ---*/
|
||||||
for (i = 0; i < LOOP_CAPTURE_MAX; i++) {
|
for (i = 0; i < LOOP_CAPTURE_MAX; i++) {
|
||||||
Loop154_Unit *unit = &g_loop_states.loop_unit[i];
|
Loop154_Unit *unit = &g_loop_states.loop_unit[i];
|
||||||
|
|||||||
Reference in New Issue
Block a user