开发者分享 | HelixLink 多功能调试器

先楫半导体HPMicro 2026-08-25 08:30

简介:HelixLink是一个开创性的开源硬件项目,旨在打造一款模块化、可扩展、高性价比的多功能调试器。并通过精心设计的扩展接口,构建一个属于创客和工程师的调试工具生态系统。

开源协议:CC BY-NC-SA 4.0

 项目发起人 

HelixLink项目由【HelixLink团队】协作完成,核心成员分工如下:

  • 【flyn】:负责硬件电路设计、机械结构开发以及 UI 界面设计。

  • 【maxiao】:负责软件整体架构设计,单片机固件与上位机软件的主要代码实现。

  • 【B-S-J】:负责部分底层驱动的编写与测试,修复已知 Bug,撰写项目技术文档及制作演示视频。

开发者分享 | HelixLink 多功能调试器图1

本项目欢迎社区贡献。提交代码前请阅读 CONTRIBUTING.md,并遵循已有的代码风格和提交规范。


概 述

HelixLink:多功能嵌入式调试工作站

将DAPLINK在线调试、双路串口、总线工具、逻辑分析、信号发生和本地交互集中到一套可扩展的软硬件平台中。


HelixLink 面向嵌入式工程师、电子爱好者和高校开发者,以先楫半导体 HPM5361 RISC-V MCU 为核心,通过一个 USB 2.0 High-Speed 复合设备连接电脑,并配套设备端图形界面和 Qt 桌面上位机。

开发者分享 | HelixLink 多功能调试器图2


代码仓库

https://gitee.com/helixlink


视频介绍


文档更新

  • 2026-08-14:发布第一版固件、硬件和上位机,基础功能已完成。

  • 2026-08-21:添加附件清单BOM,添加面板下单参数等说明。


1. 项目简介

嵌入式开发中,调试、串口通信、CAN 总线分析、逻辑分析和信号输出往往需要多种工具配合完成。HelixLink 将这些常用功能集中在一块便携式核心板上,并通过屏幕、桌面上位机和扩展接口,满足开发、调试和教学等场景的使用需求。


2. 项目功能

HelixLink 将在线调试、串口通信、总线调试、信号测量、文件存储和设备管理能力集成到同一块核心板,并通过桌面上位机和扩展接口提供更多功能。


核心功能:

  • 基于 DAPLink 的 CMSIS-DAP 实现 SWD / JTAG 在线调试与程序烧录,默认 SWJ 时钟配置为 10 MHz。

  • 支持双路 USB 转串口,用于串口通信、日志查看和数据透传;另有独立 USB CLI 用于设备命令和调试信息。

  • 支持 CAN / CAN FD 调试功能,支持报文收发、过滤和定时发送。

  • 支持 I²C 与 SPI 主机工具,可配置总线参数并完成设备读写和协议联调。

  • 支持逻辑分析仪,通过 ADC 多路采样获取目标信号,并在桌面端显示波形。

  • 当前支持信号发生器功能,可通过上位机配置通道和波形参数,并使用 PWM 合成测试信号;后续将移除该功能,改为 PWM 信号发生器,信号发生器相关功能移至扩展板。


存储与本地交互:

  • 配备 2.31 英寸 320 × 240 TFT 屏、拨轮、功能按键、LED 和蜂鸣器,可用于状态显示、功能选择和操作提示。

  • 配备板载 Flash 和 Micro SD,分别使用 LittleFS 和 FatFs 管理存储数据。

  • Micro SD 可通过 USB MSC 暴露给电脑,用于文件传输和存储管理。


扩展功能:

  • 20 Pin 多功能接口引出 SWD / JTAG、双路 TTL、CAN、I²C、SPI、ADC / PWM、5 V 和 3.3 V。

  • 16 Pin 扩展接口引出 GPIO、5 V、3.3 V 和 GND,可连接自定义扩展板。

  • 核心板预留 UART Wi-Fi 模块和 SPI 2.4 GHz 模块电路,可继续扩展无线通信功能。

  • 预留扩展接口,方便后续扩展其他模块。


开发中功

  • 离线烧录器功能尚未发布。

  • CAN FD 和逻辑分析仪性能还有优化空间,信号发生器后续将调整为 PWM 信号发生器。

  • 不同功能的扩展板。


3. 主要参数

  • 主控: 先楫 HPM5361ICB1 RISC-V MCU

  • USB: USB Type-C,USB 2.0 High-Speed

  • 屏幕: 2.31 英寸 TFT,分辨率 320 × 240

  • 存储: 16 MB Flash,支持 Micro SD

  • 供电: USB 5V 输入,可向外提供 5V 和 3.3V

  • 整机尺寸: 55 × 55 × 15 mm


4. 硬件设计

4.1 核心板架构

核心板围绕 HPM5361 构建,包含 USB Type-C、LCD、本地输入与指示、板载 Flash、Micro SD、CAN 收发器、调试/通信接口、无线通信模块以及扩展接口。

开发者分享 | HelixLink 多功能调试器图3

核心板原理图采用模块化设计,覆盖主控最小系统、电源管理、板载存储、显示与本地交互、CAN 通信,以及调试、无线和通用扩展接口等电路。


4.2 调试与通信接口

本项目采用兼容标准 20 Pin JTAG 定义的多功能接口,同时复用 UART、CAN、I²C、SPI、信号发生器和逻辑分析仪等功能。

开发者分享 | HelixLink 多功能调试器图4
  • SWD / JTAG:兼容标准 20 Pin JTAG 接口。

  • 双路 UART:当前板级代码映射到 MCU 的 UART3 与 UART4,并与 USB CDC 桥接。

  • CAN:使用 SIT1042AQTK/3 收发器,支持标准 CAN 和最高 5 Mbit/s 的 CAN FD(本项目未板载 120 Ω 终端电阻)。

  • I²C:SCL/SDA 配有 10 kΩ 上拉至 3.3 V,并通过主接口引出。

  • SPI、PWM、ADC/OPA:作为调试、采集、输出或扩展功能使用,部分引脚存在复用关系。


4.3 显示、交互与存储

4.3.1 屏幕

核心板配备 2.31 英寸、320 × 240 分辨率的 TFT 屏,通过 SPI 接口驱动,并使用 DMA 提高刷新效率。设备端基于 LVGL 构建图形界面,用于显示设备状态、功能菜单和调试信息。

开发者分享 | HelixLink 多功能调试器图5


4.3.2 功能键与拨轮

开发者分享 | HelixLink 多功能调试器图6

板上有一个功能键和一个带按压的拨轮。拨轮左右各有两级触点,加上中间按压,相当于五个按键;当前固件使用上拨、下拨和按下三个输入,使用软件消抖。功能键与 BOOT0 复用,上电时按住可进入 USB 引导烧录模式。


4.3.3 LED 与蜂鸣器

板载红绿双色 LED 和蜂鸣器,用于提示设备启动、调试连接和异常状态:

  • 开机状态:绿灯以 1 秒亮、1 秒灭的周期闪烁。

  • DAP 已连接或目标程序停止运行:绿灯常亮。

  • DAP 未连接:红灯常亮。

  • 目标程序正在运行:红灯呈呼吸效果。

  • 蜂鸣器预设开机、警告和报警三种提示音,分别为 1 kHz 持续 1 秒、2 kHz 持续 2 秒和 3 kHz 持续 3 秒。


当前固件启动后默认进入开机灯效。蜂鸣器默认关闭,主要用于配合后续的离线烧录功能;当前提示音已经配置完成,但尚未接入上层应用代码。



4.3.4 存储系统

开发者分享 | HelixLink 多功能调试器图7

核心板配备 W25Q128JVSIQ(16 MB)板载 Flash 和 Micro SD 卡槽。Micro SD 使用的 SPI0 与主控自身的硬件 JTAG 共用 PA04~PA07,固件通过 PA09 的 CD 引脚检测 SD 卡是否插入:插卡后引脚切换为 SPI0,此时无法通过该组 JTAG 接口调试或烧录核心板主控;拔卡后引脚恢复为 JTAG。板载 Flash 使用 LittleFS 管理本地文件;Micro SD 使用 FatFs 管理文件,可存储固件、日志和采集数据,并支持通过 USB MSC 作为 U 盘连接电脑。


4.4 电源与保护

核心板由 USB Type-C 5 V 供电,VBUS 经限流后生成系统 +5V,再转换为 +3V3,并分别为模拟、无线和扩展接口提供独立电源。多功能接口可输出 +5V_OUT 和 +3V3_OUT,两路均带有限流保护。


USB 接口带有 ESD 保护,CAN 总线带有共模电感和 TVS,I²C、SPI、UART 及模拟接口也加了 ESD 保护阵列,用于接口插拔和外部接线时的静电防护。


4.5 扩展与预留接口

开发者分享 | HelixLink 多功能调试器图8

核心板预留了 2.4 GHz 和 Wi-Fi 模块位置,便于后续扩展无线调试功能。2.4 GHz 模块与 20 Pin 接口的 JTAG 信号复用,使用该模块时无法使用烧录功能;当前版本暂未使用无线模块。


扩展接口预留了 2 路 UART、DAC,以及 I²C 和 CAN 各 1 路,具体引脚对应如下:

引脚
外设
PA00、PA01
UART0
PY06、PY07
UART1
PY04、PY05
CAN3
PY02、PY03
I²C2
PB08、PB09
DAC


5. 软件设计

软件代码主要放在 02_software 目录下,目录结构如下:

开发者分享 | HelixLink 多功能调试器图9


软件部分包括设备固件和桌面上位机。设备固件从 firmware/user/main.c 启动,完成各级模块初始化后进入 FreeRTOS 调度;上位机请求经 Protobuf 编码后,通过 libusb 发送到设备端 Bulk 接口,设备完成解析并调用对应功能模块,再将结果和状态数据返回上位机。


固件和上位机都使用 CMake 构建。固件使用 HPM SDK 和 RISC-V GCC 工具链;上位机使用 Qt 6.8 和 C++17,libusb 直接随源码编译。两端共用 share/com 下的 .proto 文件,构建时会自动生成对应的 nanopb 代码。开发者分享 | HelixLink 多功能调试器图10


5.1 设备固件

设备固件基于 FreeRTOS,main() 主要完成板级初始化、GPIO 配置和模块加载,随后启动任务调度。各功能模块负责自身的外设配置,并按需要创建信号量、消息队列和任务。

工程在 module_load.h 中参考 RT-Thread 实现了分级初始化注册机制,系统启动时按照板级、设备、组件、环境和应用的顺序加载模块,不需要在 main() 中逐个调用初始化函数。对应的注册宏如下:

开发者分享 | HelixLink 多功能调试器图11

新增模块时,在 module 目录下建立对应文件并实现初始化函数,再根据模块的依赖关系选择注册级别。需要持续运行的功能可在初始化函数中创建 FreeRTOS 任务。完成注册后,模块会随系统启动自动加载,无需修改 main()


5.2 统一通信协议

固件和桌面端共用 .proto 消息定义,目前覆盖设备信息、错误、CAN、I²C、SPI、逻辑分析和信号发生模块。

通信帧结构为:

0x55 0xAA | Payload Length (uint32 LE) | Protobuf Envelope | CRC-16/CCITT-FALSE


协议支持请求/响应关联和设备主动通知。单帧 Protobuf 负载上限为 2048 B;大数据采集需要通过多帧事件持续上报。



5.3 桌面上位机

桌面端基于 Qt 6.8 Widgets 与 C++17,采用 UI 线程和设备工作线程分离的模块化设计。当前工程包含:

  • 设备发现、连接、信息与能力查询
  • CAN / CAN FD 报文收发、过滤与定时发送界面
  • I²C 与 SPI 参数配置、数据读写
  • 逻辑分析波形显示
  • 信号发生参数配置
  • 设置、快捷命令、批量发送和会话保存


5.4 主要功能设计


5.4.1 在线调试与 USB 复合设备

设备端使用 CherryUSB 组成一个 USB 2.0 High-Speed 复合设备,其中调试功能采用 DAPLink 的 CMSIS-DAP 实现,负责处理 SWD / JTAG 调试命令。同一个 USB 接口还包含双路 CDC 串口、CLI、上位机通信接口和 Micro SD MSC,各功能使用独立的接口和端点。


5.4.2 双路 USB 转串口

两路 CDC 串口分别桥接 UART3 和 UART4。电脑设置串口波特率、数据位、停止位和校验方式后,固件同步更新对应的物理 UART。USB 收到的数据直接转发到 UART,UART 接收的数据通过缓冲区回传到 USB,实现双向透传。


5.4.3 CAN、I²C 与 SPI

CAN、I²C 和 SPI 模块向 module/com 注册各自的消息处理函数。上位机请求到达后,由通信模块完成解码和分发,再调用对应的 BSP 驱动执行配置、读写或报文发送,结果通过响应消息返回。CAN 接收使用独立任务轮询控制器,收到报文后通过通知消息主动上报,因此不需要上位机反复查询。


5.4.4 逻辑分析与信号发生

逻辑分析仪提供 9 路输入,可选择采集通道并设置高低电平触发条件,采集到的波形通过上位机实时显示,便于查看各接口的电平变化和通信时序。当前使用自定义通信协议,后续考虑适配 PulseView。

当前版本的信号发生器提供 11 个可选输出通道,支持正弦波、方波、三角波和直流输出,可设置频率、幅值和偏置。输出由 PWM 合成,正弦波和三角波需经过外部低通滤波后使用;后续将移除该功能,改为 PWM 信号发生器,相关功能移至扩展板。


5.4.5 存储管理

板载 W25Q128JVSIQ Flash 通过 SPI 连接,使用 LittleFS 管理本地文件;Micro SD 通过 SPI0 连接,使用 FatFs 管理文件。SD 卡在 FatFs 和 USB MSC 之间切换时由状态机统一处理,进入 U 盘模式前先卸载文件系统,退出后再重新挂载,避免电脑和设备端同时访问卡内数据。


5.5 LVGL 界面与 PC 模拟

设备端界面基于 LVGL 开发,界面源码位于 firmware/ui,包含页面、组件、图片和字体等资源,配合拨轮和功能按键进行操作。

工程同时提供 firmware/ui_simulator PC 模拟工程。模拟工程复用设备端的 LVGL 界面源码,使用 CMake 和 SDL2 生成 PC 窗口,可在没有连接硬件的情况下进行界面布局和交互调试;需要时还可以启用 FreeRTOS POSIX 模拟。模拟器主要用于界面开发,显示、拨轮和按键等硬件相关功能仍需在设备上验证。



6. 结构设计

本项目的结构设计采用方形便携结构。根据屏幕比例、边框观感、接口位置和装配方式进行了多次调整,使外形工整简洁,使用时也便于拿取和操作。开发者分享 | HelixLink 多功能调试器图12整机外形约为 55 × 55 × 15 mm,大小接近掌心。正面使用 2.31 英寸横向屏幕,屏幕上、左、右三侧边框保持对称;下方 JTAG 接口区域的面板用于放置项目 Logo 和运行状态指示灯,降低大黑边的存在感。开发者分享 | HelixLink 多功能调试器图13拨轮和功能按键布置在侧面,单手即可完成常用操作。同时,USB Type-C、侧面按键和拨轮高度保持一致,整体看起来更加协调。开发者分享 | HelixLink 多功能调试器图14外壳预留 20 Pin 接口开口,支持标准 20 Pin 调试排线直接插入,无需拆开外壳。开发者分享 | HelixLink 多功能调试器图15外壳内部设置定位柱和安装孔,核心板、屏幕、导光柱、拨轮和按键按对应位置插入装配,不需要额外使用螺钉。



7. 组装与复刻流程

7.1 PCB 下单与元件采购

  1. PCB 下单使用最新的 helixlink_core_V1.3,板厚选择 1.6 mm,板层结构选JLC04161H-3313,免费阻抗。
  2. 元件可参考 BOM 购买,推荐从立创商城或淘宝采购,并注意核对封装。
  3. 面板下单参考以下选项,遮光建议强遮光,背胶可自行选择:
开发者分享 | HelixLink 多功能调试器图16
开发者分享 | HelixLink 多功能调试器图17

7.2 PCB 焊接与检查

开发者分享 | HelixLink 多功能调试器图18
  1. PCB 背面的排母、Wi-Fi 模块和 2.4 GHz 模块暂不焊接;R7 电阻也不需要焊接,否则会导致 SD 卡无法正确识别。
  2. 上电前测量电源与 GND 之间是否短路,首次上电建议使用带限流功能的电源。
  3. 确认 +5V+3V3 等主要电源正常后,再进行固件烧录和功能测试。

7.3 固件烧录

  1. 从官方仓库下载烧录工具:HPMicro Manufacturing Tool (https://github.com/hpmicro/hpm_manufacturing_tool)。

  2. 解压后运行 hpm_manufacturing_gui.exe,在左侧选项栏中选择如下参数:

开发者分享 | HelixLink 多功能调试器图19


  1. 按住 BOOT0 复用的功能按键后连接 USB,使芯片进入 USB 引导模式。
开发者分享 | HelixLink 多功能调试器图20
  1. 选择固件并点击烧录,等待烧录完成。
开发者分享 | HelixLink 多功能调试器图21


7.4 基础功能检查

  1. 烧录完成后断电重启,设备正常启动时绿色 LED 会闪烁,设备管理器中会出现以下 USB 设备。若串口名称尚未显示为 HelixLink USB,属于正常现象,可按下一步修改。其中,Helixlink USB to UART1 对应芯片的 UART3,Helixlink USB to UART2 对应芯片的 UART4,Helixlink USB Cli 用于调试。
开发者分享 | HelixLink 多功能调试器图22


  1. 项目提供 05_tools/win_usb_rename.ps1 脚本。连接 HelixLink 后,以管理员身份运行该脚本,可将 HelixLink 的 USB 串口修改为上图所示的名称,方便区分。


  2. 在串口助手中选择 Helixlink USB Cli 端口,以任意波特率打开,输入 help\r\n(必须包含换行)即可收到回复。部分串口助手还需开启 DTR 才能收到回复;随后可根据提示输入对应指令,验证部分功能。输入命令后必须带换行。开发者分享 | HelixLink 多功能调试器图23


  1. 连接桌面上位机,确认设备能够被识别,并验证 CAN、I²C、SPI 等功能。验证 CMSIS-DAP 时,在 Keil 的 Debug 设置中选择 CMSIS-DAP,设备应识别为 CMSIS-DAP 设备,当前设备名称为 CherryUSB CMSIS-DAP;连接后绿色 LED 常亮。上位机占用设备时,Keil 无法连接 HelixLink,测试前需先断开上位机。


7.5 接口功能验证

  1. 使用已知正常的目标板验证 CMSIS-DAP 的 SWD / JTAG 连接和程序烧录。
  2. 分别验证双路串口收发,以及 CAN、I²C、SPI 的基本通信。
  3. 检查逻辑分析仪的多通道采集和触发功能,并验证信号发生器的 PWM 输出;正弦波和三角波需接入外部低通滤波器后测量。

7.6 安装外壳

  1. 先安装屏幕和前壳组件,确认屏幕方向、边框位置和导光柱安装位置。
开发者分享 | HelixLink 多功能调试器图24
  1. 将屏幕、导光柱(可不装)和前壳上的定位结构对齐,确认各部件能够顺利贴合。
开发者分享 | HelixLink 多功能调试器图25
  1. 将屏幕排线与核心板连接,然后核心板与上壳的孔位对齐。
开发者分享 | HelixLink 多功能调试器图26
  1. 安装金属按键。
开发者分享 | HelixLink 多功能调试器图27
  1. 对齐前后壳及后盖,沿定位柱和安装孔插入合拢。
开发者分享 | HelixLink 多功能调试器图28


  1. 装配完成后检查 USB Type-C、20 Pin 接口、屏幕、拨轮和按键,确认接口能够正常插拔,再进行整机上电测试。
开发者分享 | HelixLink 多功能调试器图29

8. 参考工程、资料与协议

8.1 参考工程与技术资料

  • HPM SDK:MCU 驱动、板级支持、FreeRTOS 及构建体系。
  • CherryUSB:USB 2.0 High-Speed 复合设备协议栈。
  • DAPLink:CMSIS-DAP 协议核心及 SWD / JTAG 调试实现参考。
  • CMSIS-DAP:调试器通信协议与命令说明。
  • USB 2.0 Specification:USB 2.0 协议规范。
  • HPMicro Manufacturing Tool:HelixLink 固件烧录工具。


工程还使用了 LVGL、LittleFS、FatFs、nanopb、lwrb、libusb 和 Qt 等开源项目,具体版本以仓库源码及子模块记录为准。

相关参考工程和硬件资料:

  • HSLink Pro:基于 HPM5301 的 CherryDAP 调试器项目。
  • MicroLink 开源工程:基于 CMSIS-DAP、CherryUSB 和 HPM5301 的多功能调试工具。

  • MicroLink 在线资料:MicroLink 的功能、接口和使用说明。

  • HPM5300 系列官方资料:HPM5300 系列芯片及开发板资料。

  • HPM5301 EVKLite 用户指南:HPM5301 EVKLite 硬件和使用参考。


以上内容,参考原文链接:https://oshwhub.com/flyn/helixlink

8.2 协议说明

本项目自有内容采用 CC BY-NC-SA 4.0 (https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh-hans)许可协议:

  • 署名(BY):转载、修改或分享时须注明原作者和项目来源。
  • 非商业性使用(NC):未经授权,不得将本项目用于商业用途。
  • 相同方式共享(SA):基于本项目修改或创作的内容,须继续使用 CC BY-NC-SA 4.0 协议发布。

如需商业使用,请事先取得项目作者的单独授权。


第三方组件继续遵循各自的开源许可证,主要包括:

  • HPM SDK:BSD 3-Clause
  • CherryUSB、DAPLink:Apache License 2.0
  • LVGL、lwrb:MIT License
  • LittleFS、FatFs:BSD 风格许可证
  • libusb:GNU LGPL 2.1
  • nanopb:zlib License


CC BY-NC-SA 4.0 不替代第三方组件原有许可证。转载、分发或发布编译产物时,还应保留相关组件的版权声明和许可证文件;完整条款以各组件源码目录中的 LICENSECOPYING  NOTICE 文件为准。



设计图

helixlink_core_V1.3 面板

原理图


开发者分享 | HelixLink 多功能调试器图30
开发者分享 | HelixLink 多功能调试器图31
开发者分享 | HelixLink 多功能调试器图32
开发者分享 | HelixLink 多功能调试器图33
开发者分享 | HelixLink 多功能调试器图34
开发者分享 | HelixLink 多功能调试器图35


(共计6张图片,左右滑动查看)

PCB开发者分享 | HelixLink 多功能调试器图36

BOM、3D模型、上位机及相关附件下载

参考原文链接:https://oshwhub.com/flyn/helixlink


END


开发者分享 | HelixLink 多功能调试器图37
开发者分享 | HelixLink 多功能调试器图38
开发者分享 | HelixLink 多功能调试器图39

以上内容来自先楫开发者的原创分享。

我们始终相信开发者共创的力量。先楫社区坚持开源共享、互惠互利,贴近每一个开发者,一步一个脚印,一点一滴积累,为成为更好的我们而不断努力。


心之所向,锐意进取,星辰大海,恣意成长。


MCU生态建设需要您的贡献与支持!欢迎广大爱好者和开发者踊跃投稿,供稿请联系marketing@hpmicro.com。


关于科技区角:国内科技展会垂直内容策划服务商,提供从论坛内容全案策划、会展市场化IP打造到精准专业观众一站式邀约服务,以产业内容吸引高质量B端人群,打通展会从议题设计、演讲嘉宾邀约、宣传预热、精准邀观到供需对接全链路。
声明:内容取材于网络,仅代表作者观点,如有内容违规问题,请联系处理。
more
理想汽车官宣自研电池全面上车,MEGA及i9等车型切换时间表出炉
车用电池从“普惠扶持”到“定向滴灌”| 评论
储能电池销量暴增83%、海外首超国内,2026年储能中报透视三重逻辑
历史性转变!从电池、电机到飞控,eVTOL的国产供应链正加速成型
华为乾崑+四激光雷达,插混电池包比纯电车还大?啥车?
Stellantis加码循环经济,SUSTAINera再制造电池登陆法兰克福车展
理想自研电池全面铺开,核心零部件自主化再进一步
我国已建成高效完备的动力电池产业体系
英集芯推出 IP5167 锂电池转干电池芯片
苹果iOS/iPadOS 27.0正式版发布;荣耀Magic9超能版手机官宣11000mAh容量电池;一汽成广汽第二大股东;曝追觅6至8月离职裁员约1万人...
Copyright © 2025-成都区角科技有限公司
蜀ICP备2025143415号-1
  
川公网安备51015602001305号