返回串口调试

技术知识库 & 调试文档 65 篇硬核手册

Web Serial Pro Multi-Module Offline Documentation Hub

主题 同步中 本地离线 知识库总览
ID: FAULT-02 串口调试常见故障诊断 (Troubleshooting)

串口 COM 端口被占用:The port is already open 怎么解决

#虚拟 COM 端口 冲突 清理#在线串口调试助手#COM 端口占用

打开串口时提示 `The port is already open`Access is deniedFailed to open serial port,或设备管理器里 COM 灰掉、助手列表里选了也连不上——几乎总是 端口句柄仍被占用,而不是 CH340/CP2102 驱动坏了。本文按「先找占用者 → 再清 Web 锁 → 最后动系统」处理,覆盖桌面助手与浏览器 Web Serial。

一分钟判断:是不是占用 | 现象 | 更像 | |---|---| | 刚关过 Arduino 监视器又开本站 | 监视器未彻底释放 | | 两个网页标签都点了连接 | 同端口只能一个 reader | | 热拔插后立刻重连失败 | 旧句柄僵死 | | 设备管理器黄叹号 / 未知设备 | 驱动问题,见 CH340 等驱动文 | | 回环也打不开端口 | 占用或驱动;不是 MCU 协议 | 原则:同一物理 COM,同一时刻只允许一个程序持有。 Windows 不会把「半开」状态自动分给第二个客户端。

常见占用者(按现场频率) 1. Arduino IDE / PlatformIO 串口监视器 — 最常见;点上传也会短暂占用。 2. SSCOM、XCOM、PuTTY、SecureCRT、厂家私有上位机 — 托盘最小化仍占口。 3. Keil、IAR、STM32CubeProgrammer 的串口下载/打印窗口。 4. 另一个浏览器标签 / 另一台在线串口页 未点断开。 5. 虚拟机 USB 透传 把设备分给了 guest,宿主侧 open 失败。 6. 崩溃残留:进程已无窗口,句柄未释放。

处理步骤(建议严格按序) 1. 关软件:退出所有串口相关程序(看任务栏托盘)。Arduino 先关 Serial Monitor 再关 IDE。 2. 网页侧:在本站点「断开」→ 刷新标签;仍不行则关闭该标签与同源多开页。 3. 任务管理器:结束可疑 *serial*、厂家上位机、残留 chrome 调试窗口(慎杀)。 4. 拔插 USB:等 3 秒再插,让系统重建节点。 5. 设备管理器:对该 COM「禁用 → 启用」;或卸载设备(可不删驱动)后重插。 6. 浏览器:完全退出 Chrome/Edge 再开;Web Serial 授权异常时到站点设置清除串口权限后重新 requestPort。 7. 仍失败:注销 Windows 或重启;工控机再查是否组策略锁了端口。

Web Serial / 本站特别说明 浏览器里串口由 ReadableStream / WritableStream 独占。规范关闭顺序: cancel 读循环 → reader.releaseLock() → writer.close/releaseLock → port.close() 异常拔线若不清理,容易留下「端口已打开」的假象。本站(Web Serial Pro)在断开与 disconnect 事件里会尽量释放;若你本地二次开发了串口页,务必自查关闭路径。 用本站验收占用是否清掉: 1. 电脑版 Chrome/Edge 打开 https://www.serialpro.top/ 2. 点击连接,应弹出系统端口选择器且能 open 3. 发送 PING 或做 TX-RX 回环 4. 能 open 即占用已解除;仍 Access denied → 回到步骤 1–5

和「驱动问题」怎么区分 | 驱动问题 | 占用问题 | |---|---| | 设备管理器无 COM / 黄叹号 | COM 存在且名称正常 | | 所有软件都打不开 | 某一个软件能开、另一个不能 | | 换线换口仍未知设备 | 关某程序后立刻恢复 | 无 COM 口:先装 CH340 / CP2102 / FT232 官方驱动。有 COM 但 open 失败:优先本文。

预防(写进实验室规范) - 调试结束 先断开再拔线。 - 产线电脑固定工具白名单,禁止多助手抢口。 - 虚拟机与宿主不要同时透传同一 USB 串口。 - 教学机可在下课脚本里杀常见串口进程。

搜索用户常问 Arduino 能监视、网页不能? 先关监视器;同一 COM 不能双开。 提示 port already open 但任务管理器看不到程序? 拔插 USB + 禁用启用 COM;查虚拟机。 Mac 上资源忙? 同类:关掉 screen/minicom/串口监视,再连本站。 COM 被占用是串口联调最高频「假硬件故障」:先杀占用者,再清 Web 锁,最后才动驱动与注册表。清掉占用后,用本站免安装串口即可继续乱码/Modbus 联调。