欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 名人名企 > STM32 调试口STM32CUBEMX配置

STM32 调试口STM32CUBEMX配置

2025/4/21 5:30:06 来源:https://blog.csdn.net/qq_22560021/article/details/145677127  浏览:    关键词:STM32 调试口STM32CUBEMX配置

STM32 调试口STM32CUBEMX配置

  • 1.JTAG调试接口
    • 1.1 配置方法
    • 1.2 功能
    • 1.3 其他配置模式
      • 1.3.1 JTAG(4 pins)模式
      • 1.3.1 JTAG with Trace Synchro 模式
    • 1.4 优劣
  • 2.SWD调试接口
    • 2.1 配置方法
    • 2.2 功能
    • 2.3 其他配置模式
      • 2.3.1 Trace Asynchronous Sw模式
      • 2.3.2 Trace Synchro Sw 模式
    • 2.4 优劣
  • 3. 特殊配置:禁用调试接口
  • 4. 总结

  STM32的调试口主要有两种类型:JTAG调试接口和SWD调试接口。以下是基于STM32CubeMX的配置方法、功能及优劣对比:

  在STM32CubeMX中,调试接口的配置位于 System Core > SYS > Debug 选项,常见模式如下:

模式功能描述引脚占用情况适用场景引用
Serial Wire (SWD)仅启用SWD调试接口(2线制:SWDIO + SWCLK),释放其他调试引脚(如JTAG的TMS、TCK等)作为普通GPIO使用。占用PA13(SWDIO)、PA14(SWCLK)资源受限场景,需最大化利用GPIO资源
JTAG (4-pin)启用完整JTAG接口(5线制:TMS、TCK、TDI、TDO + NRST),占用更多GPIO。占用PA13~PA15、PB3、PB4需要JTAG调试或多设备链式调试的复杂系统
Trace Asynchronous Sw启用SWD并保留部分引脚用于异步跟踪功能(如ETM),需搭配特定调试工具使用。占用SWD引脚及额外跟踪引脚需要实时跟踪调试数据的高性能应用
Disabled完全关闭调试接口,所有调试引脚恢复为普通GPIO。需谨慎使用,可能导致无法再次烧录程序。无占用量产阶段需完全禁用调试功能的设备

1.JTAG调试接口

1.1 配置方法

• 在STM32CubeMX中,选择“Pinout&Configuration”标签页。

• 在左侧的“System Core”中找到“SYS”选项。

• 在“Debug”选项中选择“JTAG”。

• 确保相关引脚(如PA13、PA14、PA15、PB3、PB4)被正确配置为JTAG功能。

如下图所示:
在这里插入图片描述

烧录口原理图:
在这里插入图片描述
  上图中JTAG接口都通过电阻上拉了,有的单片机的这几个引脚在内部已经上拉,所以这几个上拉电阻可以省略,减少了成本和PCB空间的占用。

1.2 功能

• JTAG(Joint Test Action Group)是一种标准的硬件调试接口,支持复杂的调试功能,如指令断点、数据观察点、硬件断点等。

• 支持指令级跟踪和数据跟踪功能,能够实时监控程序的执行过程。

• 可以通过JTAG接口对芯片进行全速调试,适合复杂的调试场景。

1.3 其他配置模式

1.3.1 JTAG(4 pins)模式

  JTAG(4 pins)模式比5 pins模式少了1个NRST引脚,如果是在资源确实不足的时候可以弃用。但是一般情况下使用该引脚,防止由于烧录或者调试的时候无法服务程序。
在这里插入图片描述

1.3.1 JTAG with Trace Synchro 模式

  JTAG with Trace Synchro 是一种结合了JTAG调试和指令跟踪功能的调试模式。该模式下,又分为1bit、2bits和4bits。
Trace Synchro:即指令跟踪同步功能,用于捕获和分析处理器执行的指令序列,帮助开发人员了解程序的运行情况,快速定位问题。
结合方式:JTAG with Trace Synchro模式将JTAG的调试功能与指令跟踪功能相结合,通过JTAG接口实现对目标设备的调试控制,同时利用指令跟踪功能捕获程序运行时的指令序列,以便进行更深入的分析。

缺点:
耗费芯片引脚资源,一般单片机开发中其实不是非常需要。
在这里插入图片描述

1.4 优劣

优点

• 功能强大,支持复杂的调试操作。

• 支持指令和数据跟踪,适合对性能要求较高的调试。

缺点

• 需要5个引脚(JTMS、JTCK、JTDI、JTDO、nJTRST),占用较多的GPIO资源。

• 硬件要求较高,需要支持JTAG协议的调试器。

2.SWD调试接口

2.1 配置方法

• 在STM32CubeMX中,选择“Pinout&Configuration”标签页。

• 在左侧的“System Core”中找到“SYS”选项。

• 在“Debug”选项中选择“Serial Wire”。

• 确保相关引脚(如PA13、PA14)被正确配置为SWD功能。

在这里插入图片描述

烧录口原理图:
在这里插入图片描述

2.2 功能

• SWD(Serial Wire Debug)是一种简化的调试接口,仅需两个引脚(SWDIO和SWCLK)。

• 支持基本的调试功能,如指令断点、数据观察点等。

• 可以通过SWD接口对芯片进行调试和程序烧录。

2.3 其他配置模式

2.3.1 Trace Asynchronous Sw模式

  “Trace Asynchronous SW” 是一种基于串行线调试(Serial Wire Debug,SWD)的异步跟踪模式,通常用于嵌入式系统开发中,尤其是在使用 ARM Cortex-M 系列处理器(如 STM32)时。以下是关于它的功能、原理和使用方法的详细介绍:
功能

  1. 指令跟踪:能够捕获处理器执行的指令序列,帮助开发人员分析程序的运行情况,快速定位问题。
  2. 数据跟踪:可以捕获程序中变量的变化情况,实时监控数据的读写操作。
  3. 调试信息输出:支持通过 SWO(Serial Wire Output)引脚输出调试信息,例如使用 printf 打印调试日志。
  4. 性能分析:可以统计函数的执行时间、中断的触发情况等,帮助优化程序性能。
    在这里插入图片描述

2.3.2 Trace Synchro Sw 模式

  同JTAG with Trace Synchro 是一种结合了SW调试和指令跟踪功能的调试模式。该模式下,又分为1bit、2bits和4bits。
Trace Synchro:即指令跟踪同步功能,用于捕获和分析处理器执行的指令序列,帮助开发人员了解程序的运行情况,快速定位问题。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2.4 优劣

优点

• 引脚数量少,仅需两个引脚,节省GPIO资源。

• 硬件要求较低,调试器成本相对较低。

缺点

• 功能相对JTAG较弱,不支持指令跟踪功能。

• 数据传输速度较JTAG略低,适合简单的调试场景。

3. 特殊配置:禁用调试接口

如果需要将调试引脚释放为普通GPIO使用,可以通过以下方式配置:

• 在STM32CubeMX中,选择“Pinout&Configuration”标签页。

• 在左侧的“System Core”中找到“SYS”选项。

• 在“Debug”选项中选择“Disable”。

• 确保相关引脚(如PA13、PA14、PA15、PB3、PB4)被重新配置为GPIO或其他功能。

4. 总结

• JTAG调试接口适合复杂的调试场景,功能强大但占用较多引脚。

• SWD调试接口适合简单的调试场景,节省引脚资源且硬件成本较低。

• 如果引脚资源紧张,可以选择SWD接口或禁用调试接口,将引脚释放为普通GPIO使用。

在实际开发中,根据项目需求和硬件资源情况选择合适的调试接口类型。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词