当前位置: 首页 > news >正文

(劳特巴赫调试器学习笔记)四、Practice脚本.cmm文件编写

Lauterbach调试器


在这里插入图片描述

文章目录

  • Lauterbach调试器
  • 一、什么是Practice脚本文件
  • 二、cmm脚本使用示例
  • 总结


一、什么是Practice脚本文件

官方文档解释:

在这里插入图片描述

因为Practice脚本以cmm为后缀,所以大多数人叫它cmm脚本。
以tricore为例,在安装目录下,有非常多的cmm脚本例程可以使用。

F:\Trace32\demo\tricore

比如tc38x.cmm,运行它就可以选择elf进行刷写操作。

F:\Trace32\demo\tricore\flash\tc38x.cmm

一般都是在这点击运行:

在这里插入图片描述


二、cmm脚本使用示例

cmm脚本也可以放在trace32应用程序启动的时候运行,如下图所示:

在这里插入图片描述

使用(1)TRACE32 Start方式启动,为某个型号的开发板单独创建一个文件(2),然后在File中选择自己使用的cmm脚本(3),点击Start(4)即可打开TRACE32,然后运行该cmm脚本。

cmm脚本内容如下,仅供参考:

RESet
system.cpu TC387QPcore.assign 1. 2. 3. 4. system.option dualport on
system.up; Flash programming
LOCAL &elfFile &progFlash &bmhResult&elfFile = "E:\02HightecWorkspace474\FocControl_TC387\iROM\FocControl_TC387.elf"; prepare flash programming (declarations)
DO F:\Trace32\demo\tricore\flash\tc38x.cmm CPU=TC387QP PREPAREONLY; check if application is already in flash and load symbols
Data.LOAD.Elf "&elfFile" /DIFF /SingleLineAdjacentIF FOUND()
(; ==== Step 1: Program TriCore code ====DIALOG.YESNO "Program Lauterbach demo into flash memory?"ENTRY &progFlashIF (&progFlash)(; enable flash programmingFLASH.ReProgram ALL; load demo applicationData.LOAD.Elf "&elfFile"FLASH.ReProgram OFF)
)symbol.list.sourcetree
var.watch
var.addwatch Core0_100usTaskCnt
var.addwatch Core0_mainCnt
list /core 0
runtime
mode.hll

解释一下该cmm文件大概功能:

  1. 打开Trace32后,烧写下面这个目录下的elf文件(需要替换成自己想烧写的elf文件)。
    E:\02HightecWorkspace474\FocControl_TC387\iROM\FocControl_TC387.elf
  2. 烧写完成后,打开sourcetree文件树、var.watch添加两个cnt、打开core0的list
  3. 打开runtime界面记录运行时间,修改代码显示方式为HLL模式(隐藏汇编语句)

目前还存在一点问题:

  1. 点击Start后,窗口叠放,没有布置位置

在这里插入图片描述

  1. 希望能实现检测elf更新的功能,实现编译器编译新版程序后,自动刷写进单片机(像ude一样)。

总结

可以看到,cmm其实就是劳特巴赫正常调试程序的操作方法,几乎所有的指令全都可以用cmm脚本实现。
后面学到了新tips,还会修改本文。


http://www.mrgr.cn/news/98503.html

相关文章:

  • C++第三方库【JSON】nlohman/json
  • Cribl 数据脱敏 -02 (附 测试数据)
  • 如何评估cpu的理论FLOPS能力
  • Windows 下 MongoDB ZIP 版本安装指南
  • libaom 码率控制实验:从理论到实践的深度探索
  • ReportLab 导出 PDF(文档创建)
  • C++函数
  • 深入解析分类模型评估指标:ROC曲线、AUC值、F1分数与分类报告
  • VLLM V1 serve在线推理基本流程
  • gitdiagram源码架构分析
  • 协享云图分析--3用户模块
  • Cribl 数据脱敏 -02
  • 15.家庭影院,我选Jellyfin
  • 广汽滴滴Robotaxi首次亮相,中国自动驾驶加速领跑新赛道
  • Webflux声明式http客户端:Spring6原生HttpExchange实现,彻底摒弃feign
  • leetcode 121. Best Time to Buy and Sell Stock
  • Redis入门(Java中操作Redis)
  • IMX6ULL2025年最新部署方案2在Ubuntu24.04上编译通过Qt5.12.9且部署到IMX6ULL正点原子开发板上
  • Java使用ANTLR4解析IDL文件
  • 【厦门大学】大模型概念、技术与应用实践