feat(adc): UN 标定完成、标定脚本归集到 test/host/cal/
- UN 通道 5 点最小二乘标定完成:r=555.382141, b=-1, 残差 0.038%, R²=0.99999967 - UA/IA/UN 三路 VALID 置位,保护解卡 - ROM 默认值更新为当前标定值(ADC_CAL_R_Q16_VOLT=555.144958) - UB/UC/UN 通过 104 写入 ROM 默认值,config.ini 同步 - cal_fit.py 新增 ROLD 表自动读取,不再需要手传 --r-old - 执行卡精简至 126 行,新增 cal_collect.py 采集脚本与 ROLD 填表 - 标定脚本(cal_fit/cal_write/cal_collect)归集到 test/host/cal/ - 全库文档路径引用同步更新(8 文件) - UN 当前态文档改写:明确零序电压 U0 语义、本台架未接线状态 - 删除已失效的外部知识底座文档链接
This commit is contained in:
@@ -282,10 +282,10 @@ static void tc_104_read(void)
|
||||
"TC-RUNPAR-004 k echo last channel (IN, STM32 ROM)");
|
||||
CHECK((run_par_104_read(0x8048u, &v) == 0) && (v == 0.0f),
|
||||
"TC-RUNPAR-004 b echo factory zero");
|
||||
CHECK((run_par_104_read(0x8050u, &v) == 0) && (fabsf(v - 1000.0f) <= 1e-3f),
|
||||
"TC-RUNPAR-004 r echo first slot = ROM voltage family 1000.0");
|
||||
CHECK((run_par_104_read(0x8054u, &v) == 0) && (fabsf(v - 29.4118f) <= 1e-3f),
|
||||
"TC-RUNPAR-004 r echo current family = 29.4118");
|
||||
CHECK((run_par_104_read(0x8050u, &v) == 0) && (fabsf(v - 555.144958f) <= 1e-3f),
|
||||
"TC-RUNPAR-004 r echo first slot = ROM voltage family 555.144958");
|
||||
CHECK((run_par_104_read(0x8054u, &v) == 0) && (fabsf(v - 29.610748f) <= 1e-3f),
|
||||
"TC-RUNPAR-004 r echo current family = 29.610748");
|
||||
CHECK(run_par_104_read(0x8058u, &v) == -1, "TC-RUNPAR-004 above r block not owned");
|
||||
}
|
||||
|
||||
@@ -420,14 +420,14 @@ static void tc_104_ratio(void)
|
||||
/* 选择段:只粗守(NaN/Inf),0.5 这类"执行段会拒"的值在选择段返 0 */
|
||||
CHECK(run_par_104_write(0x8051u, 0.5f, 1u) == 0,
|
||||
"TC-RUNPAR-009 select only guards finiteness (0.5 passes)");
|
||||
CHECK((run_par_104_read(0x8051u, &v) == 0) && (fabsf(v - 1000.0f) <= 1e-3f),
|
||||
CHECK((run_par_104_read(0x8051u, &v) == 0) && (fabsf(v - 555.144958f) <= 1e-3f),
|
||||
"TC-RUNPAR-009 select did not touch the ratio");
|
||||
CHECK(run_par_104_write(0x8051u, 0.5f, 0u) == -1, "TC-RUNPAR-009 execute rejects the same 0.5");
|
||||
CHECK((run_par_104_read(0x8051u, &v) == 0) && (fabsf(v - 1000.0f) <= 1e-3f),
|
||||
CHECK((run_par_104_read(0x8051u, &v) == 0) && (fabsf(v - 555.144958f) <= 1e-3f),
|
||||
"TC-RUNPAR-009 rejected execute left the ratio intact");
|
||||
|
||||
/* 段边界:0x8057 是 r 块末地址,0x8058 起非本段 */
|
||||
CHECK(run_par_104_write(0x8057u, 29.4118f, 0u) == 0, "TC-RUNPAR-009 last r slot writable");
|
||||
CHECK(run_par_104_write(0x8057u, 29.610748f, 0u) == 0, "TC-RUNPAR-009 last r slot writable");
|
||||
CHECK(run_par_104_write(0x8058u, 2.0f, 0u) == -2, "TC-RUNPAR-009 0x8058 passes through to prot_set");
|
||||
CHECK(run_par_104_read(0x8058u, &v) == -1, "TC-RUNPAR-009 0x8058 not owned on read");
|
||||
|
||||
@@ -438,7 +438,7 @@ static void tc_104_ratio(void)
|
||||
"TC-RUNPAR-009 save cleared dirty and wrote file");
|
||||
CHECK(strstr((const char *)s_vfs, "r_ua=131072000") != NULL,
|
||||
"TC-RUNPAR-009 file carries r_ua=131072000 (= 2000 x 65536)");
|
||||
(void)run_par_104_write(0x8050u, 1000.0f, 0u); /* 覆盖内存态 */
|
||||
(void)run_par_104_write(0x8050u, 555.144958f, 0u); /* 覆盖内存态 */
|
||||
CHECK(cfg_file_load() == 0, "TC-RUNPAR-009 engine reload ok");
|
||||
CHECK((run_par_104_read(0x8050u, &v) == 0) && (fabsf(v - 2000.0f) <= 0.01f),
|
||||
"TC-RUNPAR-009 reload restores saved ratio");
|
||||
|
||||
Reference in New Issue
Block a user