Skip to content
| Marketplace
Sign in
Visual Studio Code>Debuggers>Serial LabNew to Visual Studio Code? Get it now.
Serial Lab

Serial Lab

czt123

|
25 installs
| (2) | Free
串口波形、文本/HEX 收发与 STM32 SWD 运行态调参,支持连接向导和离线环境
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Serial Lab

在 VS Code 中查看串口波形、收发数据,调整 STM32 运行中的 RAM 参数。

将多通道波形、文本/HEX 终端和参数面板放在编辑器旁边,支持普通串口调试、Native 协议调参,以及通过 SWD 调试探针直接读写 RAM 变量。

Keil、STM32CubeIDE 用户也能使用,无需学习 CMake。 普通用户不需要下载插件源码、安装 Node.js 或运行 npm 命令。

选择适合你的连接方式

想做什么 使用方式 需要准备
收发串口数据、查看波形 串口连接,支持 CH340 等系统串口设备 驱动、正确接线、匹配的波特率和协议
通过固件协议调整参数 Native 串口调参 固件接入对应 Native SDK/协议
不添加上位机通信代码,调整 RAM 参数 SWD / DAPLink 调参 调试探针、运行中的固件、配套 ELF/AXF

CH340 USB 转 TTL 用于串口收发,不能替代 SWD 调试探针。串口与 SWD 连接独立,可以按需使用。

第一次使用

  1. 安装扩展,打开左侧 Serial Lab 侧栏。
  2. 点击 首次连接向导,选择 Serial / UART 或 SWD。
  3. 串口模式:选择端口、波特率和数据协议,连接后打开波形面板。
  4. SWD 模式:准备环境、选择探针、手动选择芯片,再选择匹配的 ELF/AXF 和 RAM 变量。

通过命令面板运行 Serial Lab: Open Workbench 也可以打开工作台。不确定固件发送格式时,可先用 RawData 查看原始数据;显示波形需要匹配的数据协议。

需要 VS Code 1.90 或更新版本。SWD 需要受信任的工作区。安装、接线和完整操作步骤见 使用说明。

不需要更换开发工具

继续使用原来的 IDE 编译和烧录,再将产物交给 Serial Lab:

开发工具 在插件中选择 关键要求
Keil MDK / µVision .axf 启用 Debug Information,产物需包含支持的 ELF/DWARF 信息
STM32CubeIDE .elf 保留调试信息,选择与本次烧录一致的产物
CMake + ARM GCC .elf 使用工程现有预设或脚本,保留 -g / -g3

无需转换工程,也不需要专门创建名为 Release-SWD 的配置。HEX/BIN 不能代替变量解析所需的 ELF/AXF。

菜单位置、文件查找和操作步骤见 Keil / CubeIDE / CMake 工程准备指南。

功能

  • 多通道波形:连续曲线、缩放、跟随、暂停和通道显隐。
  • 串口终端:文本/HEX 收发,可选择发送行尾。
  • 协议解析:JustFloat、FireWater、RawData、Native 和自定义协议。
  • 运行态调参:选择 RAM 变量,设置写入范围,写入后读回核对。
  • 源码操作:连接 SWD 后,在 C/C++ 中右键 Watch、Add to Plot、Edit;成员声明可选择完整实例路径。
  • 配置与诊断:查看实际配置和待重连配置,复制诊断报告。
  • 数据导出:采样 CSV 和原始收发日志。

串口数据格式

协议 固件输出格式
JustFloat 小端 float32 序列,帧尾 00 00 80 7F
FireWater 换行结束的文本数值,数值间用逗号或空格分隔
RawData 原始字节,仅终端显示,不解析波形
Native 对应的设备发现、参数及数据协议

自定义分隔符、通道和脚本解析见 自定义协议说明。

环境准备与离线使用

默认无需手动安装或激活 Python。首次使用 SWD 时,插件可按提示下载独立环境;后续启动会后台预检已有环境。也可以指定自己的 Python 解释器。

首次在线安装需要下载站点可达。无网络电脑可导入 Windows 同架构离线环境包,其中包含 Python、依赖和导出时已安装的芯片支持包。USB 驱动需单独准备。详见 离线环境说明。

调参前需要了解

  • 芯片型号由用户选择,不从 ELF 自动推断。
  • ELF/AXF 必须与已烧录固件一致;重新编译并烧录后,应选择对应产物。
  • 参数需要有固定可写 RAM 地址,算法应持续读取。推荐使用实际参与运算的 volatile 全局变量或结构体成员。
  • 宏、常量、被优化掉的变量、临时局部变量等不属于当前支持范围。
  • 启用 D-Cache 的工程需要处理缓存一致性,单加 volatile 不够。
  • RAM 修改通常在复位后恢复初始值;插件不自动保存到 Flash,也不负责烧录或使能执行机构。

具体类型、数量限制和缓存说明见 SWD 技术说明。不同电脑、编译器输出和开发板组合仍需实机验证。

遇到问题

查看工作台的 实际连接配置与诊断,需要反馈时点击 复制诊断报告。

现象 优先检查
没有串口 USB 连接、驱动、刷新端口列表
串口打不开 是否被其他软件占用,查看具体错误
已连接但 RX 为 0 固件发送、接线、端口选择
收到字节但没有波形 波特率、协议和帧格式;RawData 不生成波形
实际波特率与界面选择不同 .seriallab.json 的配置优先,查看来源并重连
SWD 环境或芯片支持缺失 使用连接向导,或导入包含该型号的离线环境
源码变量无法解析 先连接 SWD,选择完整表达式或列表中的实例

反馈时请说明插件版本、芯片、探针/串口设备和复现步骤。诊断报告包含本机路径及探针 ID,可在分享前删除不必要的信息。

文档

  • 完整使用说明
  • Keil / STM32CubeIDE / CMake 工程准备
  • SWD 技术说明
  • 离线环境迁移
  • 自定义串口协议
  • 更新日志

参与开发

以下命令只用于开发插件,普通用户无需执行:

npm install
npm run compile
npm test

在 VS Code 中打开插件源码,按 F5 启动扩展开发宿主。npm run package 生成 VSIX 安装包。

原创代码采用 MPL-2.0,见 许可文件。第三方组件遵循各自许可证;主要组件包括 serialport、uPlot 和 SWD 环境中的 pyOCD。

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft