接了三个 USB 转串口设备,上午还是 COM3、COM4、COM5,下午拔插一次就变成了 COM7、COM8、COM9——上位机软件全部失联。如果你被 COM 口号变动困扰过,这篇就是解决方案。
COM 口号为什么会变
Windows 的 COM 口号分配逻辑:USB 物理端口 + 设备序列号 = 唯一标识。当你把同一个设备换到另一个 USB 口,Windows 会认为这是一台”新设备”,分配一个全新的 COM 号。之前的号码不会自动释放,而是变成隐藏的”幽灵 COM 口”继续占位。
所以你会发现:明明只接了 3 个设备,COM 号却已经排到了 COM15。
方法一:设备管理器手动修改
这是最直接的方法。可以把任何设备的 COM 号改成你想要的数字。
- 打开设备管理器 → 展开「端口 (COM 和 LPT)」
- 右键目标设备 → 属性
- 切换到「端口设置」选项卡 → 点击「高级」
- 在「COM 端口号」下拉菜单中选择你想要的号码
- 确定 → 拔掉设备再重新插入
[设备管理器中修改 COM 号的步骤——从属性到高级到端口号下拉菜单]
️ 如果目标号码显示「正在使用」,可能是被幽灵设备占用了。参见下面的「清理幽灵 COM 口」方法先释放号码。
修改后的 COM 号会和该设备绑定。只要插在同一个 USB 口,每次都是这个号码。
方法二:固定 USB 口
最简单、零操作的方案——给每个设备指定一个固定的 USB 口,不要换。
实际操作建议:
- 在 USB 口旁边贴物理标签(如”PLC主站 – COM3″)
- 优先使用机箱背板 USB 口(前面板 USB 经过延长线,电气特征可能不同)
- 记录一张设备-USB口-COM号对照表
这个方法虽然不”技术”,但在固定工位的场景下反而最可靠。
方法三:清理幽灵 COM 口
长期使用后,设备管理器中会积累大量已不存在的串口设备,它们占着 COM 号却看不见。
显示隐藏设备:
- 设备管理器 → 查看 → 显示隐藏的设备
- 展开「端口 (COM 和 LPT)」,此时会出现灰色的设备条目
[图片占位:设备管理器中显示隐藏设备后——灰色的幽灵 COM 口]
灰色条目就是幽灵设备。右键 → 卸载设备,即可释放它占用的 COM 号。
建议定期清理,保持 COM 号空间整洁。
多口设备的特殊处理
摩可灵 CH348-4MFG(FT231 芯片,USB转232/485/422/TTL 四合一)等多通道设备,一个 USB 口会生成多个 COM 号(如 COM3、COM4、COM5、COM6)。
这种情况下:
- 多个 COM 号是连续分配的,但哪个号对应哪个通道,取决于驱动注册顺序
- 建议首次使用时逐通道测试确认对应关系,记录下来
- 同样适用上面的固定 USB 口策略——只要 USB 口不变,COM 号和通道的对应关系不变
上位机软件的建议
如果你的上位机软件(如组态软件、PLC 编程环境)允许自定义 COM 号,建议统一使用高位号码(COM10 以上)。原因:COM1~COM9 在一些老旧软件中有特殊含义或限制,高位号码反而更干净、冲突更少。
部分老旧软件打开 COM10 以上端口时需要使用 \.COM10 格式。如果软件提示无法打开高位 COM 口,试试这个写法。