Интерфейс командной строки для Лаутербаха

Я использую отладчик Лаутербаха (интерфейс TRACE32) на процессоре 7447. Мне нужно загрузить несколько файлов на этот процессор, что я делаю, выполняя команды в графическом интерфейсе T32. Идея состоит в том, чтобы сценарий выполнял эту работу. Один из способов - вызвать отдельные файлы .cmm в файле startup.cmm. Но при этом возникает проблема каждый раз, когда в графическом интерфейсе пользователя появляется диалоговое окно, которое снова требует ручного ввода. Может ли кто-нибудь сказать мне, как использовать интерфейс командной строки на T32 для достижения того же?


person neon    schedule 27.05.2014    source источник


Ответы (3)


Целевая программа обычно загружается в память вашего процессора с помощью команды

Data.LOAD.Elf myprog.elf

Однако TRACE32 удаляет базу данных символов каждый раз, когда вы используете Data.LOAD.Elf перед загрузкой вашей новой целевой программы. Чтобы подавить это, используйте параметр «/ NoClear».

Поэтому, если вы хотите загрузить более одной ELF (целевой программы) в память вашего процессора, вы должны сделать это следующим образом:

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

Если вы используете команды Data.LOAD в одном файле сценария * .cmm или в нескольких файлах сценария * .cmm, решать вам, но я бы поставил один скрипт. Диалоговое окно не должно выскакивать.

person Holger    schedule 13.04.2015

На случай, если кому-то еще нужен ответ. Мой скрипт для загрузки файла эльфа:

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

Вот ответ о том, как управлять T32 через TCP / UDP https://stackoverflow.com/a/39400777/4875690

person maslovw    schedule 06.02.2018

Я столкнулся с той же проблемой и, наконец, выяснил, что всплывающее диалоговое окно было создано с помощью сценария PRACTICE (.cmm).

Так что просто проверьте свой сценарий PRACTICE (.cmm) и удалите код, который создает всплывающее диалоговое окно.

Приведенный ниже код является примером кода, который создает диалоговое окно Да / Нет из сценария PRACTICE (.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 через командную строку ознакомьтесь с этим (управление trace32 через командную строку ).

person Nora Amer    schedule 21.07.2020