From b52c4c5ce4eb9fd226a020fdf83692019321c040 Mon Sep 17 00:00:00 2001 From: wangfq Date: Fri, 4 Sep 2026 11:09:03 +0800 Subject: [PATCH] =?UTF-8?q?fix(V4B):=20V4.36.10=20=E2=80=94=20=E7=BB=BF?= =?UTF-8?q?=E7=81=AF=E9=95=9C=E5=83=8F=E5=8B=98=E8=AF=AF=20RLY1=E2=86=92RL?= =?UTF-8?q?Y2=20=E9=BB=98=E8=AE=A4=E7=BB=A7=E7=94=B5=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 用户确认产品两继电器: RLY2(PA5)=默认(恒随车辆存在), RLY1(PA6)=拨码3可选脉冲/存在继电器; 绿灯应指示默认继电器 poll_green_led 镜像对象 RLY1→RLY2 (odt 同源) 语法0 error, 4测试全绿; spec V2.26 / manual / devlog V2.44 --- docs/devlog.md | 17 +++++++++++++++ docs/product-manual.md | 4 ++-- docs/technical-spec.md | 3 ++- utilities/at32f421_freertos_demo/inc/cmcng.h | 4 ++-- .../at32f421_freertos_demo/src/TaskLoop.c | 21 +++++++++++-------- 5 files changed, 35 insertions(+), 14 deletions(-) diff --git a/docs/devlog.md b/docs/devlog.md index 7f47b9e..1d5d8d7 100644 --- a/docs/devlog.md +++ b/docs/devlog.md @@ -4,6 +4,22 @@ --- +## 2026-09-03 — 绿灯镜像勘误:RLY1→RLY2 默认继电器(固件 V4.36.10) + +> **固件版本:V4.36.10**(cmcng.h:FIRMWARE_VER="4.36.10",REV=10)。devlog 修订 V2.44。 + +### 用户勘误 + +绿灯指示继电器**指反了**。产品两个继电器: +- **默认继电器 RLY2 (PA5)**:恒随车辆存在(VD_FLAG)——绿灯应指示它 +- **RLY1 (PA6)**:带脉冲的继电器(拨码3 设置是否启用脉冲信号) +V4.36.4 实现镜像了 RLY1 → 若 RLY1 配为脉冲模式,平时不吸合 → 绿灯不随默认继电器 → 观感"反了" + +### 改动 + +`poll_green_led` 稳定后镜像对象 RLY1_GPIO->odt → **RLY2_GPIO->odt**; +注释与文档同步。自检慢闪、断开保持(RELAY_HOLD_MS 保持段 RLY1/RLY2 同 ON)逻辑不变。 + ## 2026-09-03 — 频率窗上限 115→125kHz(固件 V4.36.9) > **固件版本:V4.36.9**(cmcng.h:FIRMWARE_VER="4.36.9",REV=9)。devlog 修订 V2.43。 @@ -1711,6 +1727,7 @@ if (dev >= dlt_ORG × 4) { | 版本 | 时间 | 说明 | |------|------|------| +| V2.44 | 2026-09-03 | V4.36.10 绿灯镜像 RLY1→RLY2 默认继电器(PA5); RLY1 为拨码3可选脉冲继电器 | | V2.43 | 2026-09-03 | V4.36.9 频率窗上限 115→125kHz (20~125kHz, 43nF≈38µH起) | | V2.42 | 2026-09-03 | V4.36.8 进入/释放确认按Q档(高3/中4/低5样本), dlt已比例化无需分档 | | V2.41 | 2026-09-03 | V4.36.7 参数: RELAY_HOLD 1s; Q抑制 高200/中300/低400ms | diff --git a/docs/product-manual.md b/docs/product-manual.md index 9066064..d7245d8 100644 --- a/docs/product-manual.md +++ b/docs/product-manual.md @@ -170,8 +170,8 @@ DLD154V4B 是一款基于 ARM Cortex-M4 微控制器的**单通道环形线圈 |------|-----------|-----------------|-------------------| | 上电自检中 | 呼吸 | **慢闪** (200ms),基准值稳定后停止 (约2~5s) | 快闪 (200ms) | | 正常运行,无车(继电器释放) | 呼吸 | 灭 | 灭 | -| 正常运行,有车(继电器吸合) | 呼吸 | **亮**(=RLY1 状态) | 灭 | -| 线圈断开,断开前有车(继电器保持 500ms) | 呼吸 | **亮**(继电器未释放) | 快闪 | +| 正常运行,有车(默认继电器 RLY2 吸合) | 呼吸 | **亮**(=RLY2 默认继电器状态) | 灭 | +| 线圈断开,断开前有车(继电器保持 1s) | 呼吸 | **亮**(默认继电器未释放) | 快闪 | | 线圈断开,继电器已释放/无车断开 | 呼吸 | 灭 | 快闪 | ### 5.2 故障状态 diff --git a/docs/technical-spec.md b/docs/technical-spec.md index 94977eb..99fe9f0 100644 --- a/docs/technical-spec.md +++ b/docs/technical-spec.md @@ -1,6 +1,6 @@ # DLD154V4B 技术规格书 -> 单路线圈车辆检测器 | 固件版本: V4.36.9 | 文档版本: V2.25 +> 单路线圈车辆检测器 | 固件版本: V4.36.10 | 文档版本: V2.26 > 本文档面向工程开发、系统集成及故障深度分析 --- @@ -791,3 +791,4 @@ DLD154V4B V1.4 起实现该专利的整数化版本,用于大车通行时的 | V2.23 | 2026-09-03 | **V4.36.7 参数调整**:RELAY_HOLD_MS 500→**1000**(有车断开继电器保持);抑制窗 高Q 100→**200** / 中Q 200→**300** / 低Q 400 不变 → 分档 200/300/400ms | | V2.24 | 2026-09-03 | **V4.36.8 Q 档判定参数**:进入确认 ENTRY_CONFIRM 按 Q 档(高3/中4/低5 样本)+ 释放确认同表分档——低Q 抖动大防假进入/输出抖落;dlt 已比例化无需分档;update_q_confirm_need 每样本按空场 f 更新 | | V2.25 | 2026-09-03 | **V4.36.9 COIL_F_OK_MAX_KHZ 115→125**:频率合理窗 20~125kHz(43nF 板口径 ≈38µH 起) | +| V2.26 | 2026-09-03 | **V4.36.10 绿灯镜像勘误**:绿灯指示对象 RLY1(PA6 脉冲/存在继电器)→**RLY2(PA5 默认继电器,恒随车辆存在)**——用户确认产品两个继电器:默认 + 拨码3 可选脉冲,绿灯指示默认继电器 | diff --git a/utilities/at32f421_freertos_demo/inc/cmcng.h b/utilities/at32f421_freertos_demo/inc/cmcng.h index d571f7b..786cbe2 100644 --- a/utilities/at32f421_freertos_demo/inc/cmcng.h +++ b/utilities/at32f421_freertos_demo/inc/cmcng.h @@ -14,11 +14,11 @@ #define __CMCNG_H__ #define PRODUCT_MODEL "DLD154" -#define FIRMWARE_VER "4.36.9" // ..޶ (2026-09-03 : СĶֻ REV; MAIN/SUB ɲƷ) +#define FIRMWARE_VER "4.36.10" // ..޶ (2026-09-03 : СĶֻ REV; MAIN/SUB ɲƷ) #define HARDWARE_VER "3.00" #define FIRMWARE_VER_MAIN 4 #define FIRMWARE_VER_SUB 36 -#define FIRMWARE_VER_REV 9 +#define FIRMWARE_VER_REV 10 #define HARDWARE_VER_MAIN 3 #define HARDWARE_VER_SUB 0 diff --git a/utilities/at32f421_freertos_demo/src/TaskLoop.c b/utilities/at32f421_freertos_demo/src/TaskLoop.c index 90db9ad..5a0c5d1 100644 --- a/utilities/at32f421_freertos_demo/src/TaskLoop.c +++ b/utilities/at32f421_freertos_demo/src/TaskLoop.c @@ -288,12 +288,14 @@ void LEDA_ON_OFF(void) * 模式: * 自检/稳定中 (loop1_INI_LOOP || 线圈未连 || !g_loop_stable): * → 慢闪 (200ms 亮 / 200ms 灭) — 就绪过程指示, 此阶段继电器未驱动 - * 稳定后 (V4.36.4): - * → 绿灯 = RLY1 继电器实际输出状态 (镜像 PA6 odt): - * 吸合(PA6 高) → 绿灯亮; 释放(PA6 低) → 绿灯灭 - * - 有车/离开延时(存在模式) → 亮; 脉冲输出中 → 短亮 + * 稳定后 (V4.36.4/10): + * → 绿灯 = 默认继电器 RLY2 (PA5, 恒随车辆存在) 实际输出状态: + * 吸合(PA5 高) → 绿灯亮; 释放(PA5 低) → 绿灯灭 + * - 有车 → 亮; 无车 → 灭 * - 有车断开保持(RELAY_HOLD_MS)期间 → 保持亮 (与继电器一致) * - 断开超时释放/无车 → 灭 + * (V4.36.10 勘误: 原镜像 RLY1(PA6 脉冲/存在继电器) 指反 → + * 用户: 绿灯指示【默认继电器】, RLY1 为拨码3 可选脉冲继电器) *===========================================================================*/ void poll_green_led(void) { @@ -311,15 +313,16 @@ void poll_green_led(void) return; } - /*--- 稳定后: 绿灯 = RLY1 继电器实际输出状态 (V4.36.4) --- - * 读 RLY1_GPIO->odt (与 RLY1_ON/OFF 宏同源, 即真实驱动状态): + /*--- 稳定后: 绿灯 = 默认继电器 RLY2 (PA5) 实际输出状态 (V4.36.4/10) --- + * 读 RLY2_GPIO->odt (与 RLY2_ON/OFF 宏同源, 即真实驱动状态): * 吸合(高) → 绿灯亮; 释放(低) → 绿灯灭 + * RLY1(PA6) 为拨码3 可配置的脉冲/存在继电器 — 不指示 * 断开时无强制灭分支 → 与继电器保持逻辑一致 (防误判"继电器释放") */ _slow_tick = 0; - if (RLY1_GPIO->odt & RLY1_PIN) - LEDA_ON; // 继电器吸合 → 绿灯亮 (PA9 低电平点亮) + if (RLY2_GPIO->odt & RLY2_PIN) + LEDA_ON; // 默认继电器吸合 → 绿灯亮 (PA9 低电平点亮) else - LEDA_OFF; // 继电器释放 → 绿灯灭 + LEDA_OFF; // 默认继电器释放 → 绿灯灭 } /*===========================================================================