必须先正确识别并打开对应COM端口,否则调试窗口空白;需安装官方驱动(如CH340用沁恒、CP2102用Silicon Labs),避免第三方合集包导致COM号错乱;COM10以上须用\.COM15格式;串口工具设8-N-1、勾选HEX收发;交叉连接TX/RX并验证硬件通断。

要让Windows电脑和单片机、传感器或路由器Console口稳定通信,必须先正确识别并打开对应的COM端口,否则调试窗口一片空白,连设备“心跳”都收不到。
确认设备已识别为可用COM口
插上USB转串口线(如CH340、CP2102或FTDI芯片),等待1~3秒;打开【设备管理器】→展开“端口(COM和LPT)”;若看到类似“USB-SERIAL CH340 (COM5)”的条目,说明驱动已就位。如果只显示“未知设备”或带黄色感叹号,【必须先安装对应芯片的驱动程序,否则后续所有操作都无效】。常见驱动包可直接从芯片官网下载:CH340用南京沁恒官方驱动,CP2102用Silicon Labs官网驱动,不要用第三方合集包——它们常混入过期版本导致COM号错乱。
注意:COM10及以上的端口号在部分旧软件中无法直接识别,比如用C语言CreateFile打开COM15时会失败,必须写成\\.\COM15格式。如果你正用自研程序调试,这点跳不过。
用串口调试工具连接COM口
推荐使用SSCOM(免安装绿色版)或XCOM(正点原子出品)。双击运行后:
第一步:点击右上角“端口”→“扫描串口”,确保目标COM号出现在下拉框中;若无显示,拔插一次线再扫——【驱动未装或接触不良会导致端口消失】。
第二步:从下拉菜单选中该COM号,手动输入波特率(如115200);不要只依赖下拉列表,有些ESP32模组或定制固件用460800等非标速率,列表里根本没有。
第三步:设置数据位=8、校验位=None、停止位=1;这三项是STM32/ESP32/Arduino默认配置,【哪怕只错一项,接收端就会吐一堆乱码】。
第四步:勾选“HEX显示”和“HEX发送”,避免中文或控制字符被终端误解析;点击“打开串口”按钮,状态栏变绿即连接成功。
验证通信是否真正打通
方法一:用另一台电脑或虚拟串口对(如com0com配对的COM5↔COM6)发测试帧,例如发送“AT ”,看是否返回“OK”。
方法二:在开发板端烧录一段回显代码(如STM32 HAL_UART_Transmit + HAL_UART_Receive),PC端发送任意字节,观察是否原样返回。若无响应,先断开硬件TX/RX线,用万用表测通断——常见错误是把TX接到TX、RX接到RX,忘了串口是交叉连接。
方法三:打开设备管理器→右键该COM口→“属性”→“详细信息”→查看“硬件ID”,确认VID/PID与所用芯片一致;若显示“USBVID_1A86&PID_7523”,就是CH340;若显示“USBVID_10C4&PID_EA60”,则是CP2102。
遇到打不开串口的紧急排查
检查任务管理器中是否有其他程序占用了该COM口(如Arduino IDE、PlatformIO、某个后台服务),结束相关进程后再试。
拔掉所有USB转串口设备,仅保留待测的一个,避免COM号冲突;尤其注意某些工控机自带多个RS232口,BIOS中可能被禁用,需进CMOS开启。
在PowerShell中执行:Get-WmiObject -Class Win32_SerialPort,列出所有系统识别到的串口及其描述,比设备管理器更底层、更真实。
如果仍失败,换一根USB线——不少廉价线只有VCC和GND,缺少D+D-数据线,插上只充电不通信。


















