STM32CubeMX 里 SYS → Debug 选项含义

1. 当前选的:Serial Wire(SWD 调试)

这是最常用、推荐的调试模式,只占用 2 根引脚

  • PA13:SWDIO(数据)
  • PA14:SWCLK(时钟) 优点:
  1. 引脚占用少,剩下的 JTAG 引脚可以当普通 GPIO 使用;
  2. 下载、在线调试、断点、单步运行全部支持;
  3. 市面上绝大多数下载器(ST-Link、DAPLink)都支持。

2. Debug 下拉框全部选项说明

(1)No Debug

关闭硬件调试接口

  • 芯片上电后 PA13/PA14 默认可做普通 GPIO;
  • 缺点:无法用下载器在线调试、烧录程序,只能靠串口 / FlashLoader 烧写;
  • 适合量产成品,关闭调试接口防固件被读取。

(2)Serial Wire(SWD,你当前配置)

两线调试,日常开发首选,上面已说明。

(3)JTAG (4 pins)

标准 4 线 JTAG 调试,占用 4 个专用引脚: PA13 (SWDIO)/PA14 (SWCLK)/PA15 (JTMS)/PB3 (JTDO)

  • 调试速度略快,但占用更多 IO;
  • 老款 JTAG 下载器使用,现在基本淘汰。

(4)JTAG (5 pins)

5 线 JTAG,多一根复位脚 PB4 (JTRST),占用 IO 更多,极少使用。

3. 补充两个配套知识点

① System Wake-Up

低功耗唤醒功能,勾选后启用调试唤醒,一般开发阶段不用勾选。

② Timebase Source: TIM4

这个是 HAL 库系统滴答 HAL_Delay()HAL_GetTick() 的底层定时器。 默认是 SysTick,你改成了 TIM4,意味着:

  • 系统时基不再用内核 SysTick,改用 TIM4 定时器;
  • 注意:TIM4 后续不能再自己做定时业务,会和 HAL 时基冲突。

4. 开发实用建议

  1. 调试开发全程保持 Serial Wire,方便在线断点调试;
  2. 产品量产时,代码里可关闭调试接口,CubeMX 也可设为 No Debug;
  3. PA13/PA14 作为 SWD 时,不能用作普通输入输出,如需复用 GPIO 只能切 No Debug。
Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐