
简介《劳特巴赫TRACE32快速入门》是一份面向嵌入式调试初学者及需要快速上手Trace32调试器的工程师的入门手册围绕劳特巴赫调试工具的基础使用展开帮助读者建立从软件安装到目标板连接的完整认知。资源包内共1个PDF文件体积约6.17MB内容以图文讲解和目录化章节组织便于按主题检索与对照学习。目前已有6425人学习说明其在调试入门场景中具有较高的参考价值。手册不仅覆盖上位机软件安装、硬件环境搭建、连接确认与软件启动等基础环节还通过附录补充PowerView网络连接LA-3505、CPU列表缺少目标芯片时的排查思路以及命令行启动方式适合需要远程调试、自动化配置或遇到环境识别问题的读者查漏补缺。对于希望理解Trace32调试流程、减少初期摸索成本的工程师这份手册可作为案头速查资料。1. TRACE32 调试器入门先搭好“上位机-主模块-调试头-目标板”这条链第一次接触 TRACE32 调试器的人常把问题想成“装个软件、点个快捷方式”。真正翻车的地方往往在软件之外平台组件没勾选、USB 驱动没装好、上下电顺序反了、网络主模块 IP 不在同一网段。这份快速入门手册的价值在于把安装、硬件连接、环境确认、软件启动、网络连接、CPU 列表排查和命令行启动串成一条可复现的调试链。它适合刚接手 Cortex-M、TriCore、PowerPC 平台的嵌入式工程师也适合已经会用调试器、但第一次在真实板子上搭 TRACE32 环境的人。先把链路搭对再谈断点、单步和 Trace后面会省掉很多无效排查。2. 安装包与平台组件完整包、增量包和典型安装怎么选2.1 完整安装包与增量升级包的边界TRACE32 的安装包常见有四类来源随调试头附带的介质、发布渠道的完整安装包、离线完整包、以及增量升级包。第一次在新机器上装优先用完整安装包机器上已经有旧版本、只想补平台组件或修 bug再用增量包。增量包不是完整安装包它只适合覆盖到已有目录解压后把文件复制到原安装目录覆盖旧文件即可不需要重新跑安装程序。这个边界搞错最常见的结果是目录结构缺文件启动时报平台组件找不到。发布渠道注册时通常要填调试头序列号后续有新版本会提醒。离线包适合现场网络不方便的机器但要注意版本和调试头固件是否匹配。我的习惯是新机器只认完整包增量包单独放一个升级目录覆盖前先把原安装目录备份一份。下面这张表把选型说清楚。包类型适用场景操作方式主要风险完整安装包新 PC、新调试头、首次搭建运行安装程序选典型安装平台组件漏勾后续 CPU 列表找不到芯片增量升级包已有旧版只想升级到当前版本解压后覆盖原目录当成完整包用目录缺文件随附介质现场无网络、版本要求固定按介质内安装程序走版本较旧需确认目标芯片支持离线完整包内网机器、不能访问发布渠道拷贝后本地安装包不完整或与调试头不匹配2.2 Windows 典型安装步骤与平台勾选Windows 下先运行安装包里的setup.bat大部分界面保持默认安装类型选 Typical Installation。真正需要停下来确认的是平台勾选页这里决定后面 CPU 列表里能不能看到目标内核。只调试 Cortex-M就勾 Cortex-M调试 Cortex-A9 和 Cortex-A53/A72/A73 要区分入口TriCore 和 TriCoreHSM 是不同调试场景PowerPC 多核平台要选对应系列。R.2021.09 及以后的版本把 ARM32 和 ARM64 入口合并了老版本仍然是两个入口装之前先看自己手里的版本。:: 进入安装包目录后执行启动 Windows 安装程序 setup.bat :: 安装完成后安装目录下常见结构 :: bin\windows64 可执行文件和启动入口 :: files\bin\windows64\drivers USB 驱动目录 :: pdf 平台和命令手册代码里的setup.bat是安装入口不是调试入口bin\windows64是后面命令行启动要用的目录files\bin\windows64\drivers是设备识别异常时单独重装驱动的路径。平台勾选不要图省事全勾装太多会拖慢启动也容易在快捷方式里选错架构。典型安装完成后最后一步会问是否注册现场机器可以先跳过不影响本地调试。2.3 Linux 安装依赖与权限Linux 下装 TRACE32先补 GUI 依赖。以某 Linux 发行版为例常见依赖包括libqt5gui5和libqt5printsupport5但不止这两个具体缺什么要看安装和启动时的报错。进入安装包目录后运行setup_linux.sh按提示走。安装设备驱动时可能需要管理员权限这一步不要用普通用户硬扛否则后面lsusb能看到设备、PowerView 却连不上。# 先补常见 GUI 依赖缺库时根据报错继续补 sudo apt-get install libqt5gui5 sudo apt-get install libqt5printsupport5 # 进入安装包目录执行 Linux 安装脚本 ./setup_linux.sh # 安装驱动时按提示加管理员权限 sudo ./setup_linux.shapt-get install这两行只是常见起点不同发行版的包名会有差异setup_linux.sh是安装入口sudo只用在驱动安装环节不要整个调试过程都用 root 跑。安装完成后先别急着接目标板用后面第 3 章的lsusb和dmesg确认主模块被识别再往下走。2.4 安装后先备份哪些文件TRACE32 根目录下的配置文件一旦被改坏会影响所有从该目录启动的实例。快捷方式启动尤其容易踩这个坑看起来只是改了一个字体或多核配置实际改的是共享根配置。安装完成后我一般先备份config.t32、常用cmm脚本和平台组件目录再复制一份独立工作目录给项目用。多核项目不要共用同一份启动脚本每个核的SYStem.CPU、复位策略和下载地址都可能不同。3. 硬件环境搭建USB/网口连接、上下电顺序与环境自检3.1 主模块连接方式怎么选硬件链路是“PC 上位机 → 调试主模块 → 调试头 → Debug Cable → 目标板调试口”。3500/3503 级别主模块和上位机之间只能走 USB3505 级别主模块可以 USB也可以网络μTRACEMicroTrace一般只走 USB常见于 Cortex-M 和 RISC-V 32 位场景。网络连接的好处是 PC 和主模块可以拉开距离适合多用户协作或目标板在屏蔽箱里的场景但前提是主模块先有可用 IP。主模块类型上位机连接适用场景注意点3500/3503 级别USB2.0/3.0单机调试、首次搭建只能 USB别找网口3505 级别USB 或网络远程调试、多用户协作网络模式要先配 IPμTRACEUSBCortex-M、RISC-V 32 位线缆和调试头型号要匹配USB 连接实物链路里调试主模块的电源、调试头、Debug Cable 和目标板要共地。目标板断电时不要靠调试器供电去猜电平调试口电平不匹配会把问题伪装成“连不上”。网络连接场景下PC 和主模块要在同一网段端口保持默认除非现场网络策略明确要求改。3.2 建议上下电顺序与反例手册给的上电顺序是目标板上电 → 将 Debug Cable 和目标板调试口连接 → 打开 PowerView 出现欢迎界面 → TRACE32 主模块上电 → 用 USB 或网络连接主模块和 PC。下电顺序反过来先关 TRACE32 软件、主模块断电再断开 Debug Cable 和目标板连接最后目标板下电。这个顺序和很多人“先插线再上电”的直觉不一样现场要以目标板手册为准但不要把热插拔调试口当常态。上电 目标板上电 → Debug Cable 连接目标板调试口 → 打开 PowerView出现欢迎界面 → TRACE32 主模块上电 → USB/网络连接主模块和 PC 下电 关闭 TRACE32 软件主模块断电 → 断开 Debug Cable 和目标板连接 → 目标板下电注意不同目标板对调试口上电顺序要求不同目标板手册优先。调试口热插拔有风险尤其是带高压或外部供电的板子不要为了省事反复插拔。3.3 Windows 与 Linux 确认设备识别Windows 下打开设备管理器看TRACE32 Devices状态。Linux 下用dmesg和lsusb确认TRACE32 设备的 USB Vendor ID 是0x897。如果设备管理器里没有条目或者 Linux 下lsusb看不到先别怀疑软件按线缆、USB 口、驱动、虚拟机 USB 直通顺序排查。有些主板或虚拟机的 USB3.0 兼容性会出玄学问题换一根 USB2.0 线往往比继续折腾驱动快。# 查看内核日志里是否出现 TRACE32 设备Vendor ID 为 0x897 dmesg | grep -i 897 # 列出 USB 设备确认主模块是否被系统识别 lsusb | grep -i 897dmesg看的是内核识别过程lsusb看的是当前 USB 设备列表两条命令都为空说明问题在物理连接、线缆或驱动层。驱动单独重装入路径在安装包的files\bin\操作系统\drivers下装的时候用管理员权限。虚拟机场景要确认 USB 设备已经直通给虚拟机不是在宿主机上被占用。3.4 网络连接主模块的参数表3505 级别主模块走网络时先通过 USB 或本地方式给主模块指定 IP再让 PC 改到同一网段。假设主模块 IP 是192.168.1.100PC 可以是192.168.1.50掩码255.255.255.0网关按现场网络填直连场景网关可以不填。配完先pingping 通再开 PowerView 选网络接口输入 IP。ping 不通就不要在 PowerView 里反复试先查网线、交换机、防火墙和 IP 冲突。参数示例说明主模块 IP192.168.1.100示例占位按现场规划填PC IP192.168.1.50与主模块同网段子网掩码255.255.255.0直连和交换机场景常用网关按现场填直连可留空端口保持默认网络策略要求时再改# 示例 IP 仅作占位按现场规划替换 ping 192.168.1.100 # 查看本机网络配置确认和主模块同网段 ipconfigping通只说明网络层可达不代表 PowerView 一定能连上还要确认主模块没有处于 USB 占用状态、防火墙没有拦截、PowerView 选的是网络接口而不是 USB。网络模式第一次配置建议先用 USB 进去把 IP 写死再切网络别在没配 IP 的情况下直接找网口。4. 启动 TRACE32快捷方式、命令行和 cmm 脚本的取舍4.1 快捷方式启动的适用边界快捷方式启动的优点是快适合 Windows 下临时看一眼、单核单项目、不需要自启动脚本的场景。开始菜单里按架构分入口例如 TriCore 平台选TRACE32 ICD TriCore USBPowerPC 平台选TRACE32 ICD PPC USBCortex-R8/Cortex-M/Cortex-A9 选TRACE32 ICD ARM32 USBCortex-A53 选TRACE32 ICD ARM64 USB。R.2021.09 及以后 ARM32 和 ARM64 入口合并老版本还要区分。快捷方式的缺点也明确仅 Windows 可用多核、字体、自启动脚本这些配置不好带根目录配置文件被修改或破坏会影响所有实例。临时调试可以用项目化调试我一般不用快捷方式而是命令行加独立配置。启动方式适用场景优点边界快捷方式单机、单核、临时确认快速简单配置共享多核不灵活命令行项目化、多核、自动化配置和脚本可固定要记可执行文件和参数cmm 脚本复位、下载、断点初始化可复用命令和 CPU 名称要匹配4.2 命令行启动把配置和脚本固定下来命令行启动的核心是把配置文件-c和启动脚本-s固定下来。以 ARM 入口为例常见可执行文件是t32marm.exe具体名称以安装目录bin\windows64下实际文件为准。配置文件中放接口、CPU、时钟等基础项启动脚本里放下载、断点、窗口布局。这样每个项目一份配置不会互相污染。:: 进入安装目录的 Windows 可执行文件目录 cd /d C:\T32\bin\windows64 :: -c 指定独立配置文件-s 指定启动后自动执行的 cmm 脚本 t32marm.exe -c .\config_arm.c32 -s .\init_board.cmm-c后面的配置文件要按项目单独复制不要直接改根目录那份-s后面的脚本在 PowerView 启动后执行适合做SYStem.Up、下载 ELF、设置断点。Linux 下把可执行文件换成对应入口路径用/参数含义相同。命令行启动不适合记不住路径的人但一旦固定下来复现性比快捷方式好很多。4.3 cmm 脚本最小闭环cmm脚本是 TRACE32 的专用脚本适合把“选 CPU、建连接、下载、停到 main”这一串动作固化。下面是一个最小示例CPU 名称、ELF 路径、时钟都要按实际项目改不能直接照抄。; 选择目标 CPU名称以安装目录 pdf 和实际 CPU 列表为准 SYStem.CPU Cortex-M7 ; JTAG/SWD 时钟先保守连稳后再往上提 SYStem.JtagClock 10MHz ; 建立调试连接 SYStem.Up ; 加载 ELF路径按项目构建输出改 Data.LOAD.Elf .\build\demo.elf /NoClear ; 停在 main方便确认下载和符号是否正常 Break.Set main /Program GoSYStem.CPU是选内核名字不匹配会直接报错SYStem.JtagClock先低后高高速时钟在长线缆或干扰环境下容易不稳SYStem.Up是建立连接失败时先看目标板供电、复位和调试口Data.LOAD.Elf加载符号和代码/NoClear表示不清内存Break.Set main /Program在程序空间下断点Go运行到断点。这个闭环跑通再谈 Trace 和覆盖率才有意义。4.4 多核与多实例配置多核项目不要用同一个快捷方式反复切。每个核一份config_*.c32和init_*.cmm文件名带核名启动时用命令行分别拉起。共享根目录配置在多核场景下最容易出“这个核改了字体那个核启动脚本不生效”的问题。我的血泪经验是项目目录下建config、scripts、logs三个子目录配置文件只读备份脚本进版本管理日志按日期留。5. 避坑与排查CPU 列表找不到芯片、设备识别不了、网络连不上5.1 设备管理器没有 TRACE32 Devices现象USB 插上、主模块上电Windows 设备管理器里看不到TRACE32 DevicesLinux 下lsusb也没有0x897。原因常见有四类USB3.0 兼容性问题、线缆只充电不传数据、驱动没装好、虚拟机没有把 USB 设备直通给客户机。解决顺序是先换 USB2.0 线并换一个后置 USB 口再单独重装驱动最后检查虚拟机 USB 直通。驱动路径在安装包的files\bin\操作系统\drivers安装时用管理员权限。5.2 CPU 列表找不到目标芯片现象PowerView 启动后 CPU 列表里没有目标芯片或者手工输入 CPU 名称报错。原因通常是安装时平台组件没勾选、软件版本不支持该芯片、CPU 名称大小写或系列名写错、调试头固件旧。解决方法是重跑安装程序补勾平台组件已有旧版就用增量包升级查安装目录pdf下的平台手册确认 CPU 名称必要时更新调试头固件。不要在一个旧版本上硬套新芯片浪费时间。5.3 网络连接 3505 主模块失败现象PC 能上网PowerView 选网络接口却连不上主模块。原因可能是 PC 和主模块不在同一网段、主模块 IP 没配好、防火墙拦截、USB 仍占用主模块、网线或交换机异常。解决时先ping主模块 IP不通就查 IP 和物理链路通但 PowerView 连不上临时关防火墙测试确认主模块没有处于 USB 连接状态。第一次配置建议先用 USB 进去把 IP 写死再切网络。5.4 上下电顺序与热插拔导致连接不稳现象有时能连上有时SYStem.Up失败换一块板子又好了。原因常见于上下电顺序不一致、调试口热插拔、目标板和调试器不共地、目标板复位释放时序不对。解决是按手册顺序上下电先确认共地调试口连接在目标板断电状态下完成再给目标板上电目标板手册有特殊要求时以目标板为准。反复热插拔调试口不是排查手段容易把接口或电平转换器件打坏。5.5 快捷方式启动配置不生效现象改了字体、多核脚本或启动脚本换一个快捷方式启动又回到旧配置多人共用一台机器时更明显。原因是快捷方式指向根目录共享配置根目录config.t32被改后影响所有实例。解决是复制独立配置目录用命令行-c指定配置、-s指定脚本快捷方式只留临时确认用。改根配置前先备份这是我吃过亏之后养成的习惯。6. 进阶验证把“能连上”推进到“能定位”能连上只说明链路通了能定位才说明调试环境可用。我一般用一张最小验证表逼自己走完闭环连接后先 halt读一次 CPU ID 或内核寄存器下载 ELF 后看符号表是否加载在main下断点并单步两行打开内存窗口看栈指针附近数据最后开 Trace 看有没有记录。任何一步失败就回到对应层排查不跳步。验证项操作通过标准失败先看连接SYStem.Up无报错状态栏显示运行/停止供电、复位、调试口、时钟下载Data.LOAD.Elf符号和代码加载完成ELF 路径、地址映射、CPU 名称断点Break.Set main能停在 main优化等级、符号、程序空间单步StepPC 和寄存器变化正常中断、看门狗、低功耗模式Trace开 Trace 窗口后运行有指令记录Onchip/Offchip 配置、buffer、时钟Trace 不要一上来就开大 buffer。先确认 Onchip Trace 可用再试 Offchip覆盖率统计前清计数跑完马上导出别等下一次复位把数据冲掉。多核场景下每个核单独验证不要用一个核的通过结果推断另一个核。这份快速入门手册适合放在手边先按章节把安装、连接、启动走通再回到自己的板子上复现获取时优先拿与调试头匹配的完整包增量包留给已有旧版的机器。从那以后我每次接手一块新板子都先跑一遍最小闭环再开 Trace 和覆盖率统计这个习惯省掉了很多无效排查。希望帮到你。本文还有配套的精品资源点击获取