ba35ea8ae35fff4a6179e5cb5a14f33cbd84c533
核心变更:去掉 g_json_socket_client,listen socket 直接承载收发数据。 参考 EVT/EXAM/ETH/TCPServer 例程: - 创建 PROTO_TYPE_TCP socket → WCHNET_SocketListen - 同一 socket 处理 CONNECT + RECV + DISCONNECT + TIMEOUT - 不需要 'accepted socket' 检测 移除的复杂逻辑: - g_json_socket_client 变量及所有 'newly accepted' 检测代码 - WCHNET_HandleSockInt 第二路由条件(socketid!=listen,!=TCP,!=UDP 那串) - tcp_json_handle_sock_int 中 listen/client 分离处理 - listen==client overlap 的迂回保护 修改文件: - tcp_json_srv.h: 移除 g_json_socket_client extern - tcp_json_srv.c: 移除 g_json_socket_client,handler 简化为 4 个 if - net_srv.c: 路由简化为仅 socketid==g_json_socket_listen
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)
Description
Languages
C
99%
Assembly
0.6%
CMake
0.2%
Python
0.2%