05-常见问题

常见问题

Q: 串口列表为空,找不到 COM 口?

  1. 解决方案:
  2. 打开设备管理器(devmgmt.msc),查看"端口 (COM 和 LPT)"下是否有设备
  3. 如果设备带黄色感叹号,需重新安装驱动
  4. 插拔设备后点击 刷新 按钮

Q: 打开串口失败,提示"无法打开串口"?

  1. 解决方案:
  2. 关闭所有可能占用该串口的程序
  3. 确认串口号正确
  4. 点击 刷新 重新扫描

Q: 能发送但收不到数据?

  1. 检查项:
  2. 确认 TX 和 RX 接线正确(TX 对端 RX,RX 对端 TX)
  3. 确认 GND 已共地
  4. 确认波特率和校验位等参数与目标设备一致
  5. 设备是否真的在发送数据(用示波器或逻辑分析仪验证)

Q: 收到乱码怎么排查?

  1. 可能原因(按概率排序):
  2. 波特率不匹配 — 最常见原因,检查两端波特率设置
  3. 编码不匹配 — 如果发送端用 GBK 而显示端用 UTF-8,中文会乱码
  4. 校验位不匹配 — 某些设备开启校验但程序未开
  5. 数据位不匹配 — 较少见
  6. 硬件问题 — USB 转串口芯片不稳定、杜邦线接触不良
  1. 排查步骤:
  2. 先切到 十六进制显示,观察原始字节
  3. 对比发送端和接收端的原始字节是否一致
  4. 如果原始字节一致但文本乱码,切换编码尝试(GBK ↔ UTF-8)

Q: 支持的最大波特率是多少?

程序层面无限制,可选波特率下拉框中包含常用值。

Q: 自动发送的最小间隔是多少?

建议最小间隔不低于 10ms,避免串口缓冲区溢出。

Q: 图表不显示数据?

  1. 检查项:
  2. 是否勾选了 启用图表
  3. 是否添加了至少一条数据提取规则
  4. 接收的数据是否包含符合规则的数值
  5. 规则表达式是否正确(可先用正则测试工具验证)

Q: 支持通过命令行参数指定串口吗?

当前版本不支持命令行参数。该功能可能在后续版本中添加。

Q: 虚拟串口对怎么创建?

  1. 推荐使用 com0com 工具(开源免费):
  2. 下载并安装 com0com
  3. 创建虚拟串口对(如 COM10 ↔ COM11)
  4. 打开两个 NexSerial 实例,分别连接 COM10 和 COM11
  5. 二者可以互相收发数据,适合开发测试