4112b7cbbf380f2a0e6f8aafe1c4299aafa0e694
时间单位: - 串口协议 V1.06 / TCP JSON 协议: 杂项时间量、事件 value 由 5ms 修正为 50ms, 对齐 Loop 固件 50ms tick 实现 (TMR15 5ms×10) event_report (iot_mqtt_srv.c + net_srv.c): - 沿检测双路汇聚: Step1 消费路径 + lup 回调覆盖 uart_srv 路径, 不漏帧 - 16 深环形队列, 事件仅 ACK(code=0) 后出队; 溢出丢最旧 - 5s 超时重发同 msg_id/原始 ts ×3 次, 耗尽挂起, 新事件/重连沿合并补报 - 帧消费提前至 READY/enable 之前: 断网期间事件入队, 重连补报 - 线圈断开期间屏蔽 car 沿; loop_restore value=本地计时/50 - msg_id 独立 uint32 计数 (g_iot_msg_id 为 uint8 混用会破坏去重窗口) - net_srv.c ACK 路由: cmd=event_report 回显帧确认出队, 不回 unsupported - gcc 隔离单测 8 组全过 (tests/test_event_report.c), 单包 6 条实测 317B
vd_960 — 车检器 DLD960 嵌入式软件
产品概述
DLD960 是一款双 MCU 架构的车检器(车辆检测器),采用线圈检测原理。
硬件架构
| 芯片 | 型号 | 主频 | Flash | SRAM | 职责 |
|---|---|---|---|---|---|
| 线圈 MCU | AT32F421 | 120MHz | 64KB | 16KB | 四路线圈信号采集与处理 |
| 通信 MCU | CH32V208 | 144MHz | 128KB | 64KB | 蓝牙、网口、1路 RS485 |
两个 MCU 之间通过内部总线(UART/SPI)通信。
子项目
| 子项目 | 目录 | MCU | 功能 |
|---|---|---|---|
| vd960Loop | vd960Loop/ |
AT32F421 | 线圈驱动、频率采样、车辆检测算法 |
| vd960DBN | vd960DBN/ |
CH32V208 | 蓝牙管理、TCP/IP 协议栈、RS485 通信 |
开发环境
- vd960Loop: Keil MDK / AT32 IDE(ARM Cortex-M4)
- vd960DBN: MounRiver Studio(RISC-V)
Releases
4
vd960DBN V1.02.05(DBN 单侧发布)
Latest
Languages
C
98.1%
Python
0.9%
Assembly
0.6%
CMake
0.2%
Linker Script
0.2%