feat(V4B): V4.36.9 — 频率窗上限 115→125kHz
COIL_F_OK_MAX_KHZ 125 (43nF板口径 ≈38µH 起) test_coil_range 边界 125/126 全绿; 语法0 error spec V2.25 / manual 故障表 / devlog V2.43
This commit is contained in:
@@ -2,8 +2,8 @@
|
||||
* test_coil_range.c — 线圈电感量合理范围监视 gcc 隔离单测 (DLD154V4B V4.26)
|
||||
*
|
||||
* 验证对象: TaskLoop.c coil_monitor() (V4.26 拍板规格)
|
||||
* 默认低频档口径(43nF 三极管板): 空场频率合理窗 20~115kHz, 出界即判定电感量不合理
|
||||
* g_coil_fault: 0=正常 1=L偏大(f<20kHz) 2=L偏小(f>115kHz)
|
||||
* 默认低频档口径(43nF 三极管板): 空场频率合理窗 20~125kHz, 出界即判定电感量不合理
|
||||
* g_coil_fault: 0=正常 1=L偏大(f<20kHz) 2=L偏小(f>125kHz)
|
||||
* 防抖: 越界/恢复均连续 100tick(=1s) 才置位/清除 (调用点=稳定无车空闲)
|
||||
*
|
||||
* 镜像宏与固件一致 (改 COIL_* 时同步此处!)
|
||||
@@ -14,7 +14,7 @@
|
||||
#include <stdint.h>
|
||||
|
||||
#define COIL_F_OK_MIN_KHZ 20
|
||||
#define COIL_F_OK_MAX_KHZ 115
|
||||
#define COIL_F_OK_MAX_KHZ 125
|
||||
#define COIL_DEF_C_NF 66
|
||||
|
||||
static uint8_t g_coil_fault = 0;
|
||||
@@ -86,11 +86,11 @@ static void test_boundaries(void)
|
||||
{
|
||||
g_coil_fault = 0; g_coil_bad_cnt = 0;
|
||||
run_ticks(19, 100); assert(g_coil_fault == 1); /* 19 → 偏大 */
|
||||
run_ticks(62, 100); assert(g_coil_fault == 0); /* 20~115 正常 */
|
||||
run_ticks(62, 100); assert(g_coil_fault == 0); /* 20~125 正常 */
|
||||
run_ticks(20, 100); assert(g_coil_fault == 0); /* 边界 20 正常 */
|
||||
run_ticks(115, 100); assert(g_coil_fault == 0); /* 边界 115 正常 */
|
||||
run_ticks(116, 100); assert(g_coil_fault == 2); /* 116 → 偏小 */
|
||||
printf("4. 边界 19/20/115/116 OK\n");
|
||||
run_ticks(125, 100); assert(g_coil_fault == 0); /* 边界 125 正常 */
|
||||
run_ticks(126, 100); assert(g_coil_fault == 2); /* 126 → 偏小 */
|
||||
printf("4. 边界 19/20/125/126 OK\n");
|
||||
}
|
||||
|
||||
static void test_jitter_no_alarm(void)
|
||||
@@ -111,6 +111,6 @@ int main(void)
|
||||
test_recover();
|
||||
test_boundaries();
|
||||
test_jitter_no_alarm();
|
||||
printf("\nALL PASS (窗口 20~115kHz, 防抖 1s)\n");
|
||||
printf("\nALL PASS (窗口 20~125kHz, 防抖 1s)\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user