无需登录 数据私有 本地保存

Web串口控制台 - Serial API发送接收

19
0
0
0
未连接 RX: 0 TX: 0 CTS DSR DCD
接收数据
等待连接...
发送数据
ms
Ctrl+Enter 快捷发送
常见问题与知识点

Web Serial API 是一项现代浏览器技术,允许网页应用通过串口(Serial Port)与硬件设备通信。它使得无需安装任何驱动程序或桌面软件,只需一个兼容的浏览器即可调试、配置和监控串口设备。

常见用途包括:调试 Arduino / ESP32 / STM32 开发板、配置网络设备(路由器、交换机)、读取传感器数据、控制工业设备、固件升级时的串口监控等。它为 IoT 开发和嵌入式调试提供了极大的便利。

目前支持 Web Serial API 的浏览器包括:Google Chrome 89+Microsoft Edge 89+Opera 75+,以及其他基于 Chromium 的浏览器。Firefox 和 Safari 暂不支持。

手机端:Android 版 Chrome 也支持 Web Serial API,可以通过 USB OTG 线缆连接串口适配器,实现移动端串口调试。iOS 设备暂不支持(因为 Safari 使用的 WebKit 引擎未实现该 API)。

Web Serial API 属于安全上下文限制的 API,出于安全考量,浏览器要求仅在 HTTPS 或 localhost 环境下才能调用。这是为了防止恶意网站未经授权访问用户的串口设备。

如果您在本地开发调试,使用 http://localhosthttp://127.0.0.1 即可正常工作。部署到生产环境时请确保启用 HTTPS。

  • 波特率(Baud Rate):每秒传输的符号数,常见值有 9600、115200。两个设备必须使用相同波特率才能通信。波特率越高传输越快,但对线缆质量要求也更高。
  • 数据位(Data Bits):每个数据包的有效数据位数,通常为 8 位(即一个字节)。少数旧设备使用 7 位。
  • 停止位(Stop Bits):数据包结束标志,通常为 1 位。用于给接收方准备下一个数据包的时间。
  • 校验位(Parity):用于简单的错误检测。None 表示不校验,Even 为偶校验,Odd 为奇校验。大多数现代设备使用 None。
  • 流控制(Flow Control):防止数据溢出。None 不控制;RTS/CTS 为硬件流控制,通过信号线协调收发节奏。

  1. 确认设备已正确连接到电脑,且驱动程序已安装(USB转串口适配器通常需要驱动)。
  2. 检查是否其他程序(如 Arduino IDE、串口助手)占用了该端口,同一时间只能有一个程序打开串口
  3. 确认波特率、数据位、停止位、校验位参数与设备端配置一致。
  4. 尝试更换 USB 线缆或端口,部分廉价线缆可能导致通信不稳定。
  5. 在设备管理器中确认串口号和状态,排除硬件故障。
  6. 查看浏览器控制台(F12)是否有错误信息输出。

文本模式将接收到的字节按 UTF-8 编码解码为可读字符显示,适合调试输出文本信息的设备(如 AT 命令响应、日志输出)。

十六进制(HEX)模式将每个字节显示为两位十六进制数(如 48 65 6C 6C 6F),适合分析二进制协议、非文本数据或调试通信协议。当设备发送的数据包含不可打印字符时,HEX 模式能完整展示所有数据。

建议调试时优先使用 HEX 模式确认通信正确,再切换到文本模式查看可读内容。

DTR(Data Terminal Ready)RTS(Request To Send)是 RS-232 标准中的控制信号。

在调试场景中,DTR 信号常被用于自动复位:例如 Arduino 开发板在 DTR 信号变化时会自动复位并进入 Bootloader,以便烧录程序。ESP32 等芯片也使用 DTR/RTS 组合来控制下载模式。

如果您的设备在连接时意外复位,请尝试切换 DTR 或 RTS 的状态。连接前关闭 DTR 可以防止某些开发板自动复位。

完全安全,数据不会离开您的设备。此工具的所有串口通信操作都在您的浏览器中本地完成。发送和接收的数据仅在浏览器与串口设备之间传输,不会上传到任何远程服务器。Web Serial API 的设计保证了数据留在用户本地计算机上。

您可以在离线状态下使用此工具(页面加载后断开网络),功能不受影响。