多路串口调试:在单个网页中并发连接和管理多个物理串口 COM 的拓扑方案

传统 PC 桌面串口助手往往只能在单个界面开一条 COM 通道。若要同时观测发送端与接收端、或调试串口网关,开发者不得不多开多个 exe,窗口切换与时间戳对齐都很痛苦。

Web Serial API 允许在同一文档中持有多个 `SerialPort` 实例。把每个端口的打开、读循环、写队列封装成独立 Class 或 Hook 状态后,一个网页即可并发管理 3~5 路物理串口。

### 典型场景

  • **主从对照**:一路连 Modbus 主站模拟器,一路连真实从站,同屏对比请求/响应延时与 CRC。
  • **透传网关**:A 口收、B 口发,网页中转并记录双向日志。
  • **多传感器**:温湿度、电表、条码枪分属不同 COM,统一时间线展示。

### 实现要点

  1. 每个端口独立 `readable.getReader()` / `writable.getWriter()`,切勿共用锁。
  2. 断开时按「cancel 读 → releaseLock → close」顺序清理,避免 "port already open"。
  3. UI 上为每路单独显示波特率、连接灯与日志面板,防止日志串台。
  4. 浏览器对同时打开端口数量无严格硬顶,但 USB 集线器供电与驱动稳定性会成为瓶颈。

Web Serial Pro 这类工具把多路能力放在浏览器沙箱内完成,免安装、易分享链接给同事,非常适合实验室与产线联调。