feat(DLD154Pro): V3.04 — 0x24追加LOOP_MEASURE_BASE归一化基数(与DLD110S对齐) + 文档同步

This commit is contained in:
wangfq
2026-08-26 18:10:06 +08:00
parent fcbe7698a3
commit 16f5e9b738
6 changed files with 57 additions and 9 deletions
+11 -5
View File
@@ -1,7 +1,7 @@
# DLD154Pro 蓝牙小程序接口协议
> 依据源码整理:`BLE/DLD154Pro_Peripheral_28K/APP/dbn_ble_srv.c`(主逻辑)、`peripheral.c`/`Profile/gattprofile.c`BLE 服务)、`include/storage.h`(配置结构)、`include/cmcng.h`(常量)
> 固件版本:V3.03cmcng.h `FIRMWARE_VER`| 硬件版本:V3.01 | 产品型号:DLD154Pro
> 固件版本:V3.04cmcng.h `FIRMWARE_VER`| 硬件版本:V3.01 | 产品型号:DLD154Pro
---
@@ -84,7 +84,7 @@ dsum = Header + Len + CMD + Data[0] + ... + Data[N-1]; // 取低 8 位
|------|------|------|
| 0-5 | 6 | MAC 地址(MACAddr[6] |
| 6-7 | 2 | 硬件版本 MAIN/SUBV3.01 → 03 01 |
| 8-9 | 2 | 固件版本 MAIN/SUBV3.03 → 03 03 |
| 8-9 | 2 | 固件版本 MAIN/SUBV3.04 → 03 04 |
| 10 | 1 | 产品型号长度 |
| 11.. | N | 产品型号 ASCII"DLD154Pro" |
| .. | 6 | 设备编号(g_dev_number[6] |
@@ -121,7 +121,7 @@ g_hold_time = exist_mode * 20 * 5 (tick)
### 5.4 0x24 读车检器参数
无 Data。响应 Data8B):
无 Data。响应 Data11B):
| 偏移 | 内容 |
|------|------|
@@ -130,9 +130,15 @@ g_hold_time = exist_mode * 20 * 5 (tick)
| 2 | `output_mode \| (loopSafe_Timeout << 3)` |
| 3 | exist_mode |
| 4 | `sens_list.total << 4`(灵敏度档数,高 4 位) |
| 5 | 线圈断开次数低字节(g_loop_cut_amount |
| 5 | 线圈断开次数低字节(g_loop_cut_amount,上电持续累计 |
| 6 | 线圈断开次数高字节 |
| 7 | direction_mode |
| 8-10 | **归一化基数 LOOP_MEASURE_BASE3B LE= 524288**V3.04 追加) |
> ⚠ **偏移 8-10 用途(V3.042026-08-26 追加)**variation 换算 ΔL/L 的归一化基数。
> 第三方应用连接后读一次 0x24 缓存该值:`Δf/f ≈ variation / LOOP_MEASURE_BASE``ΔL/L ≈ -2 × variation / LOOP_MEASURE_BASE`。
> **背景**DLD154Pro 的 MEASUREMENT_BASE = 5242882^19 @60MHz),与 DLD110S 相同、与 DLD154V4B 的 131072 不同。固件显式上报后第三方无需猜测(曾出现照搬 131072 导致百分比放大 4 倍的问题,DLD110S 2026-08-26 实测发现)。
> 向后兼容:老小程序只读前 8B 不受影响;新小程序读 11B。
### 5.5 0x31 读写 UART 参数
@@ -228,7 +234,7 @@ Data`[enable] [interval] [timeout_min]`
│ └─ Header = 0 (单包)
└─ Magic = 0x8F
芯片 → Char4 notify: 8F 00 10 XX [MAC6][03 01][03 03][0A "DLD154Pro"][dev_no6][00 00][00 00] [XOR] [SUM]
芯片 → Char4 notify: 8F 00 10 XX [MAC6][03 01][03 04][0A "DLD154Pro"][dev_no6][00 00][00 00] [XOR] [SUM]
Len=0x10(16): CMD + 15B Data
```