【问题标题】:Command line interface for Lauterbach劳特巴赫的命令行界面
【发布时间】:2014-05-27 16:58:58
【问题描述】:

我在 7447 处理器上使用劳特巴赫调试器(TRACE32 接口)。我需要通过在 T32 GUI 中运行命令来将多个文件加载到这个处理器上。想法是让脚本完成这项工作。一种方法是调用startup.cmm 中的单个.cmm 文件。但是每次GUI弹出一个需要手动输入的对话框时都会遇到问题。谁能告诉我如何在 T32 上使用命令行界面来实现相同的功能?

【问题讨论】:

    标签: trace32 lauterbach


    【解决方案1】:

    目标程序通常使用命令加载到 CPU 的内存中

    Data.LOAD.Elf myprog.elf
    

    但是,每次您在加载新目标程序之前使用 Data.LOAD.Elf 时,TRACE32 都会删除符号数据库。禁止使用选项“/NoClear”。

    因此,如果您想将多个 ELF(目标程序)加载到 CPU 的内存中,您应该这样做:

    Data.LOAD.Elf myprog1.elf
    Data.LOAD.Elf myprog2.elf /NoClear
    Data.LOAD.Elf myprog3.elf /NoClear
    

    如果您在一个 *.cmm 脚本文件或多个 *.cmm 脚本文件中使用 Data.LOAD 命令,这取决于您,但我会将其放在一个脚本中。 不应弹出对话框。

    【讨论】:

      【解决方案2】:

      如果有人仍然需要答案。 我的加载精灵文件的脚本:

      flash-elf.cmm:

      local &fileName
      entry &fileName
      
      print "LOAD &fileName"
      
      IF (!FILE.EXIST(&fileName))
      (
          PRINT "No elf file was flashed"
          ENDDO
          // T32 will stay opened
      )
      
      DO ~~/demo/powerpc/flash/mpc574xg.cmm "PREPAREONLY" // you should choose your cpu script
      
      FLASH.ReProgram ALL
      Data.LOAD.Elf &fileName
      FLASH.ReProgram off
      
      SYStem.ResetTarget
      
      GO
      
      QUIT
      

      将它保存在您的主目录(或 bin,或 PATH 指向的任何目录)甚至 t32.config 旁边(安装 T32,这就是我使用的)

      现在我从 CMD 调用

      t32mppc.exe -s ~~/flash-elf.cmm  my.elf
      

      这里有一个关于如何通过 TCP/UDP 控制 T32 的答案 https://stackoverflow.com/a/39400777/4875690

      【讨论】:

        【解决方案3】:

        我也遇到过同样的问题,最后发现弹出对话框是由PRACTICE Script (.cmm)创建的。

        所以只需检查您的 PRACTICE 脚本 (.cmm) 并删除创建弹出对话框的代码。

        以下代码是从 PRACTICE Script (.cmm) 创建是/否对话框的代码示例

        LOCAL &result
        DIALOG.YESNO "Program FLASH memory?"
        ENTRY &result
        IF &result==FALSE()
         ENDDO
        PRINT "User clicked Yes."
        

        上面的例子来自这里(https://www2.lauterbach.com/pdf/ide_ref.pdf)。

        要通过命令行控制trace32,请查看此(controlling trace32 via command line)。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2022-06-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多