1. 默认低频档频率合理窗 20~120kHz, 出界即告警(不做档位判定/灰带):
TaskLoop.c 新增 coil_monitor() — 稳定+无车空闲由无车主路径调用,
Origin 反推空场 f, f<20kHz→L偏大/f>120kHz→L偏小, 1s 防抖置位/清除
2. 告警形式: 黄灯"一长一短" 200ms亮/100ms灭/100ms亮/800ms灭 循环 (模式5)
3. 黄灯优先级: 断开快闪 > 故障补偿(学习)常亮 > 电感量一长一短 > N短闪 > 灭
4. 故障补偿等待 ENV_RESYNC_WAIT 6000→1000 (60s→10s): 总补偿 ~66s→~21s
验证: tests/test_coil_range.c 5场景(边界19/20/120/121+防抖) ALL PASS;
test_env_resync.c 适配10s(applied_at=1600tick) 5场景 ALL PASS; 语法 0 error
文档: devlog V2.24/spec V2.5/manual V2.9/design doc v0.3(标记已实现)
修复: 源文件行尾多CR污染(\\r\\r\\r\\r\\n)统一规范化回标准CRLF
73 lines
1.7 KiB
C
73 lines
1.7 KiB
C
/**
|
|
**************************************************************************
|
|
* @file cmcng.h
|
|
* @version v1.0
|
|
* @date 2025-09-08
|
|
* @brief һЩÅäÖÃ
|
|
**************************************************************************
|
|
* Copyright notice & Disclaimer
|
|
* * Create 2025-09-08 by wangfq
|
|
* *
|
|
**************************************************************************
|
|
*/
|
|
#ifndef __CMCNG_H__
|
|
#define __CMCNG_H__
|
|
|
|
#define PRODUCT_MODEL "DLD154"
|
|
#define FIRMWARE_VER "4.26"
|
|
#define HARDWARE_VER "3.00"
|
|
#define FIRMWARE_VER_MAIN 4
|
|
#define FIRMWARE_VER_SUB 26
|
|
#define HARDWARE_VER_MAIN 3
|
|
#define HARDWARE_VER_SUB 0
|
|
|
|
|
|
#include <stdio.h>
|
|
#include <stdint.h>
|
|
|
|
|
|
#ifdef DEBUG
|
|
#define PRINT(X...) printf(X)
|
|
#else
|
|
#define PRINT(X...)
|
|
#endif
|
|
|
|
|
|
|
|
typedef struct _LOOP_ACS_INFO
|
|
{
|
|
uint8_t flag_event;
|
|
uint8_t loop_num;
|
|
uint8_t freq_level;
|
|
uint8_t sensity;
|
|
uint8_t relay1_cng;
|
|
uint8_t relay1_state;
|
|
uint8_t relay2_cng;
|
|
uint8_t relay2_state;
|
|
uint8_t loop_state;
|
|
uint8_t output_mode;
|
|
uint8_t dir_mode;
|
|
uint8_t delay;
|
|
uint8_t car_state;
|
|
uint8_t direction;
|
|
uint8_t flag_loop_safe;
|
|
uint32_t loop_safe_counter;
|
|
uint8_t condition;
|
|
uint32_t frequent;
|
|
uint32_t loop_capvd;
|
|
int16_t variation;
|
|
uint32_t event_counter;
|
|
uint32_t report_counter;
|
|
} Loop_ACS_Info;
|
|
extern Loop_ACS_Info g_loop_acs_info;
|
|
|
|
|
|
extern uint8_t g_flag_output;
|
|
extern uint8_t g_flag_output2;
|
|
|
|
extern uint8_t g_input_div;
|
|
|
|
|
|
|
|
#endif
|