跟踪是一项实时监测软件的技术,可帮助开发人员调试和诊断应用的问题、异常和运行时行为。跟踪也可用于性能基准标记或记录。实时跟踪是解决复杂问题的理想选择。
Lauterbach® 是全球公认的嵌入式系统开发工具提供商,专注于高性能调试和跟踪设计。Lauterbach 提供的 TRACE32® 工具套件集成了硬件和软件,能够为高速跟踪和调试、代码分析及实时跟踪提供全面的支持。工具套件广泛用于各个行业,可优化和验证嵌入式软件。对于 AM26x 器件,Lauterbach 工具有助于无缝调试并支持详细查看系统行为,使开发人员能够高效地解决嵌入式软件开发中的难题。通过使用 Lauterbach 的 TRACE32 工具进行跟踪,开发人员可以详细了解 AM26x 器件上的软件执行。通过记录执行指令、存储器访问和外设交互的序列,跟踪功能有助于识别性能问题、调试复杂场景以及验证软件正确性。对于时序和执行流程非常关键的实时嵌入式系统,此功能至关重要。Lauterbach 的非侵入式跟踪方法与事件时间戳等功能相结合,可在保持系统完整性的同时支持深入分析,最终提高开发效率和系统可靠性。
ARM R5F 内核以及 ARM M4 内核支持 Lauterbach 跟踪。本文档提供了为德州仪器 (TI) 高性能 AM26x 微控制器启用 Lauterbach ETM 跟踪的分步指南。
Code Composer Studio™is a TM ofTI corporate name.
FreeRTOS™is a TM ofAmazon Web Services, Inc.
Lauterbach® and TRACE32®are reg TMs ofLauterbach GmbH.
Windows®is a reg TM ofMicrosoft Corporation.
Linux®is a reg TM ofLinus Torvalds.
Other TMs
若要在 AM26x 器件上运行 MCU_PLUS_SDK 应用,需要安装以下软件和工具:
如果用户需要进一步帮助,请参阅官方文档的下载、安装和设置 SDK 和工具页面。
Lauterbach 软件 - 可从以下位置下载 Trace32 软件包:Lauterbach 支持与培训。对于 Windows®,请将该软件包安装在 C:\T32 中,对于 Linux®,请将该软件包安装在默认位置。
下面列出了启用 Lauterbach® 跟踪所需的硬件:
开关 |
状态 |
SW-5 |
低 |
AM263Px 原理图与 AM263x 不同。因此,对于 AM263Px,某些步骤可能会不同。
开关 |
状态 |
SW-1 |
低 |
SW-14 |
低 |
SW-15 |
低 |
SW-16 |
高 |
现在,用户可以打开 Lauterbach 电源。
调试防火墙由 hsmRtImg 打开。此图形显示在 <mcu_plus_sdk>/source/security/security_common/drivers/hsmclient/soc/<device_name>/hsmRtImg.h 上
如果用户使用的是较早的 MCU_PLUS_SDK 版本(在 v10.01 之前),请将 hsmRtImg.h 替换为更新后的文件:
AM263x - Github
AM263Px - Github
在本应用手册中,用户使用 MCU_PLUS_SDK 示例,在 AM26x MCU 上运行这些示例并获取跟踪。如果用户希望使用不同的应用,请跳过本节。确保已构建 .debug 配置以获得一致的跟踪结果。
#TO CLEAN
gmake -sj -C examples/drivers/gpio/gpio_led_blink/am263px-cc/r5fss0-0_nortos/ti-arm-clang/ PROFILE=debug clean
#TO SCRUB
gmake -sj -C examples/drivers/gpio/gpio_led_blink/am263px-cc/r5fss0-0_nortos/ti-arm-clang/ PROFILE=debug scrub
#TO BUILD
gmake -sj -C examples/drivers/gpio/gpio_led_blink/am263px-cc/r5fss0-0_nortos/ti-arm-clang/ PROFILE=debug all
有关更多详细信息,请参阅使用 makefile 构建 SDK。若要对 AM263x 运行上述命令,请替换器件名称以使用 am263x 而不是 am263px。
CMM 是调试器使用的批处理类型脚本语言。下面的 CMM 脚本处理内核的复位和连接、配置 I2C 时钟、跟踪引脚、IO 扩展器配置、生成片外跟踪结果并将它们显示在窗口中。默认情况下,这适用于 R5F 内核 0,并可修改为针对其他 ARM R5F 和 ARM M4 内核运行。