在 Zephyr RTOS 中驱动 Embedsky TQ-H503A:STM32H503CB 极低成本开发板的引脚映射、烧录与调试实战
2026/9/16 18:53:20 网站建设 项目流程

在 Zephyr RTOS 中驱动 Embedsky TQ-H503A:STM32H503CB 极低成本开发板的引脚映射、烧录与调试实战

【免费下载链接】zephyrPrimary Git Repository for the Zephyr Project. Zephyr is a new generation, scalable, optimized, secure RTOS for multiple hardware architectures.项目地址: https://gitcode.com/GitHub_Trending/ze/zephyr

导读

本文以 Zephyr 官方仓库中 boards/embedsky/tq_h503a/doc/index.rst 为核心文档,系统介绍 Embedsky TQ-H503A 开发板在 Zephyr RTOS 中的板级支持、外设引脚映射、时钟配置、OpenOCD 适配以及烧录与调试的完整流程。TQ-H503A 是一块基于 STM32H503CBT6(Arm Cortex-M33,最高 250 MHz)的极低成本精简开发板,本文面向希望以最低门槛上手 STM32H5 系列并跑通 Zephyr 开发闭环的嵌入式开发者。读完本文,你将掌握 TQ-H503A 的硬件资源清单、Zephyr 板级设备树(DTS)与 Kconfig 的配置方式、通过 west 构建/烧录/调试应用的完整命令,以及上游 OpenOCD 尚未支持 STM32H5 时的定制化烧录方案。

TQ-H503A 板卡概览

TQ-H503A 由 Embedsky(天嵌)推出,是 STM32H5 系列中定位入门与成本敏感场景的开发板。核心器件为 STM32H503CBT6 微控制器,属于 STM32H503x 系列的 48 引脚(LQFP48)封装变体,见 STM32H503CB 官网 与 STM32H503x 参考手册(RM0492)。

板卡主要亮点如下:

  • 主控:STM32H503CB,128 KB Flash + 32 KB SRAM,LQFP48 封装;
  • 用户 LED:板载一颗用户可编程 LED;
  • 双晶振:32.768 kHz LSE 低速晶振 + 8 MHz HSE 主晶振。

从仓库中的 board.yml 可以确认板级元数据:板名tq_h503a、厂商embedsky、SoC 为stm32h503xx;tq_h503a.yaml 进一步声明该板支持backup_sramgpiouarti2cwatchdogusb_device等外设,RAM 32 KB、Flash 128 KB。

核心芯片 STM32H503CB 硬件资源详解

STM32H503CB 属于基于高性能 Arm Cortex-M33 32 位 RISC 内核的 STM32H5 系列,最高工作频率 250 MHz。其完整资源清单如下:

  • 内核:Cortex-M33 CPU,集成 FPU(浮点单元)、MPU(内存保护单元)、DSP 指令,375 DMIPS(Dhrystone 2.1),并带 ART 加速器;
  • 存储器
    • 128 KB 内嵌 Flash,带 ECC,双 bank 支持读-写同时进行(read-while-write);
    • 2 KB OTP(一次性可编程区);
    • 32 KB SRAM,带 ECC;
    • 2 KB 备份 SRAM(在最低功耗模式下可用);
  • 时钟管理
    • 内部振荡器:64 MHz HSI、48 MHz HSI48、4 MHz CSI、32 kHz LSI;
    • 两路 PLL,用于系统时钟、USB、音频与 ADC;
    • 外部振荡器:4~50 MHz HSE、32.768 kHz LSE;
  • 电源:内嵌 LDO 稳压器;35 个快速 I/O(多数 5 V 容忍);
  • 模拟外设:1 路 12 位 ADC(最高 2.5 MSPS)、1 路 12 位双通道 DAC、1 路超低功耗比较器、1 路运算放大器(7 MHz 带宽)、1 路数字温度传感器;
  • 定时器:共 11 个——4 个 16 位、1 个 32 位、2 个可在 Stop 模式下工作的 16 位低功耗定时器、2 个看门狗、1 个 SysTick,以及带硬件日历/闹钟/校准的 RTC;
  • 通信接口:共 16 个——2 路 I2C FM+(支持 SMBus/PMBus)、2 路与 I2C 复用的 I3C、3 路 USART(支持 ISO7816、LIN、IrDA、调制解调器控制)、1 路 LPUART、3 路 SPI(其中 3 路与全双工 I2S 复用)、3 路 USART 同步模式可额外提供 3 路 SPI、1 路 FDCAN、1 路 USB 2.0 全速主机/设备;
  • DMA:两路 DMA 控制器用于卸载 CPU;
  • 安全特性:HASH(SHA-1、SHA-2)与 HMAC、真随机数发生器(TRNG)、96 位唯一 ID、主动防篡改(Active tamper);
  • 调试:支持串行线调试(SWD)与 JTAG 接口。

支持的 Zephyr 特性

TQ-H503A 在 Zephyr 中已注册的板级支持特性如下(zephyr:board-supported-hw指令自动渲染生成):

特性说明
backup_sram备份 SRAM(低功耗模式可用)
gpioGPIO 驱动
uart串口驱动
i2cI2C 驱动
watchdog看门狗
usb_deviceUSB 设备

对应地,tq_h503a_defconfig 中默认开启了串口(CONFIG_SERIAL=yCONFIG_CONSOLE=yCONFIG_UART_CONSOLE=y)、GPIO(CONFIG_GPIO=y)、ARM MPU(CONFIG_ARM_MPU=y)与硬件栈保护(CONFIG_HW_STACK_PROTECTION=y),保证开箱即可获得控制台输出与基础安全特性。而 Kconfig.tq_h503a 通过select SOC_STM32H503XX将板卡与 STM32H5x SoC 系列绑定(见 soc/st/stm32/stm32h5x/Kconfig.soc 中SOC_STM32H503XX的定义)。

引脚映射

板卡引脚总览

doc/img/tq_h503a.webp 给出了 TQ-H503A 的完整引脚排布图,图中标注了引脚编号、电源轨(3.3V / 5V / GND、NRST、VBAT)以及各引脚复用功能(USART1/2/3、I2C1/2、SPI1/2/3、TIM1/2/3、ADC1_INP0~19、FDCAN1、USB_DP/DM、I2S2 等),是硬件接线时的第一参考依据。

默认 Zephyr 外设映射

Zephyr 为 TQ-H503A 预配置了以下默认外设映射(来自 tq_h503a.dts 的 pinctrl 定义):

外设引脚说明
UART_1 TX/RXPB14 / PB15控制台串口,115200 baud
USER_LEDPC13高电平点亮
I2C1 SCL/SDAPB6 / PB5400 kHz(FM 快速模式)
SPI1 SCK/MISO/MOSIPA5 / PB4 / PA4布线至外部 Flash 封装位(footprint)
SPI1 CSPA15片选,低有效
USART3 TX/RXPB10 / PA12第二串口
USB DM/DPPA11 / PA12USB 2.0 全速设备

设备树中chosen节点将zephyr,consolezephyr,shell-uart均指向usart1,SRAM 指向sram0、Flash 指向flash0aliases中定义了led0(即 PC13 上的用户 LED)与watchdog0(独立看门狗 IWDG)。

时钟源配置

TQ-H503A 板载两个外部振荡器:32.768 kHz LSE 慢速时钟与 8 MHz HSE 主时钟。默认情况下,系统时钟由 PLL 提供,以 HSE 为参考输入倍频至 250 MHz,具体参数见设备树中pll节点:div-m = <1>mul-n = <125>div-p = <4>div-q = <2>div-r = <2>,即 8 MHz ÷ 1 × 125 ÷ 4 = 250 MHz 系统时钟。RCC 节点同时配置clock-frequency = <DT_FREQ_M(250)>与四个总线分频器(AHB/APB1/APB2/APB3 预分频均为 1)。

设备树中还启用了 CSI、HSI、HSI48 三个内部振荡器,为 USB(HSI48)等外设提供时钟来源,并启用了 RNG(真随机数发生器)与 IWDG(独立看门狗)外设。

编程与烧录

TQ-H503A 应用可以按 Zephyr 常规方式构建与烧录,通用流程参考 Zephyr 的构建应用(build an application)与应用运行(application run)指南。

OpenOCD 支持现状与定制化适配

当前上游 OpenOCD 尚不支持 STM32H5 器件,可关注 OpenOCD 官方 GitHub 镜像 的更新。若要在本板上使用 OpenOCD,需要克隆 STMicroelectronics 定制版 OpenOCD 仓库(STMicroelectronics OpenOCD GitHub)并按 README 构建。

编译完成后,在 boards/embedsky/tq_h503a/board.cmake 中设置OPENOCD_ROOT等变量,指向 OpenOCD 二进制与脚本目录(该文件包含在公共openocd.board.cmake之前):

set(OPENOCD_ROOT "<path_to_openocd_stm32_repo>") set(OPENOCD "${OPENOCD_ROOT}/src/openocd" CACHE FILEPATH "" FORCE) set(OPENOCD_DEFAULT_PATH ${OPENOCD_ROOT}/tcl)

board.cmake中还为 openocd runner 配置了--tcl-port=6666--cmd-pre-init "gdb_report_data_abort enable"--no-halt等参数,并同时引入 blackmagicprobe runner 作为备用烧录途径(--connect-rst)。此外,仓库提供了 support/openocd.cfg,内含 ST-Link 接口与target/stm32h5x.cfg目标配置,并使用dapdirect_swd传输、connect_assert_srst复位策略(低功耗 WFI 应用需要),且定义了 OpenOCD 初始化后自动reset halt的流程以配合 GDB 调试。

烧录流程

本板通过 west 的 openocd runner 经 ST-LINK 烧录:

$ west flash

将应用烧录到 TQ-H503A 的具体步骤:

  1. 将 SWD 调试器(ST-LINK)连接到板上的 3V3(3.3 V)、GND、SCK、DIO 四个引脚;
  2. 通过 USB 将调试器连接到主机;
  3. 启动串口主机程序连接调试器的 VCP(虚拟串口),例如:
$ minicom -D /dev/ttyACM0
  1. 构建并烧录应用,例如hello_world示例:
$ west build -b tq_h503a samples/hello_world $ west flash

烧录成功后,串口控制台应输出:

Hello World! tq_h503a/stm32h503xx

其中tq_h503a/stm32h503xx表明内核正确识别了板卡与 SoC 型号。

调试

调试同样遵循 Zephyr 常规流程。以blinky示例为例,使用 GDB 通过 west 启动调试会话:

$ west build -b tq_h503a samples/basic/blinky $ west debug

结合上文board.cmake中的 OpenOCD 定制配置,west debug会自动拉起带 STM32H5 支持的 OpenOCD,并以reset halt状态进入 GDB,便于设置断点后运行。

从源码验证板级实现的要点

  • SoC 绑定:Kconfig.tq_h503a 中config BOARD_TQ_H503A通过select SOC_STM32H503XX建立板卡与 SoC 的依赖关系,对应 soc/st/stm32/stm32h5x/Kconfig.soc;
  • 设备树:tq_h503a.dts 包含 HSE/PLL/RCC 时钟树、USART1/USART3/SPI1/I2C1/USB 的 pinctrl、LED 节点与别名定义,是理解默认映射的第一手材料;
  • 构建配置:tq_h503a_defconfig 是板级最小可用配置的范例,可作为自定义裁剪的起点;
  • 烧录配置:board.cmake 与 support/openocd.cfg 完整呈现了 STM32H5 在官方 OpenOCD 缺位时的落地适配方案,对移植其他 STM32H5 板卡具有直接参考价值。

参考资料

  • STM32H503CB 产品主页
  • STM32H503x 参考手册 RM0492
  • OpenOCD 官方 GitHub 镜像
  • STMicroelectronics 定制 OpenOCD

【免费下载链接】zephyrPrimary Git Repository for the Zephyr Project. Zephyr is a new generation, scalable, optimized, secure RTOS for multiple hardware architectures.项目地址: https://gitcode.com/GitHub_Trending/ze/zephyr

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询