Работа с VisualDSP++. Краткое описание возможностей и приёмов использования программы VisualDSP++, страница 17

14.8. Создание Tcl сценария

VisualDSP++ содержит интерпретатор для Tool Command Language (Tcl) - языка создания сценария. Этот хорошо документированный C-подобный язык является превосходным средством для создания сценария повторяемых последовательностей  операций отладки. Используйте этот мощный язык, чтобы разработать полноценные испытательные прикладные программы для систем ЦОС.

14.8.1. Tcl пример

Следующий пример показывает, как создать и выполнить Tcl сценарий, который печатает в окне Вывода на вкладке Console. Эта Tcl процедура с именем step_and_print выполняет определенное число одиночных шагов по ассемблерной программе. При выполнении сценария, нужно вести счёт шагов.

Чтобы создать Tcl сценарий:

1. Используйте текстовый редактор, чтобы набрать следующий код:

proc step_and_print { count } {

for { set i 0 } { $i < $count } { incr i } {

dspstepasm -wait

puts [ format "PC is at address 0x%x\n" [dspeval \$pc]]

}

}

Замечание: Печатайте puts [ format "PC is at address 0x%x\n" [dspeval \$pc]]  как одну строку,  иначе возникнет сообщение об ошибке.

2. Сохраните в C:\Temp\test.tcl.

Чтобы выполнять новый Tcl сценарий

1. В окне Вывода на вкладке Console  напечатайте  Tcl  команду source с указанием пути и имени файла нового Tcl сценария.

>source C:\\Temp\\test.tcl

Замечание: Используйте двойные знаки наклонной черты влево.

2. Нажмите Enter.

Загружается Tcl  сценарий.

3. На вкладке Console вызовите функцию и укажите число шагов, например:

step_and_print 10

4. Нажмите Enter.

Функция выполняется. Счетчик команд делает одиночные  шаги десять раз (число шагов в этом примере) и останавливается.

Замечание: Информация, получаемая на вкладке Console от введенных Tcl команд, сохраняется в файле  VisualDSP_log.txt, который по умолчанию размещается в каталоге:

C:\Program Files\Analog Devices\VisualDSP\Data

Рассмотрите этот файл.

14.8.2.Выполнение обширного сценария

Для выполнения обширного сценария, используйте следующие методы:

 Запуск из командной строки

Загрузите сценарий из командной строки DOS, набирая:

>idde -f имя файла

Факультативно, добавьте -s и имя сеанса, чтобы определить ранее созданный сеанс. Когда  имя сеанса не определено,  последний сеанс используется.

Замечание: Если в течение выполнения сценарий сталкивается с ошибкой, VisualDSP++ автоматически закрывается.

Запуск из окна Вывода

Загрузите сценарий в окне Вывода на вкладке Console,  печатая директиву:

source filename

Замечание: Подобно языку C, Tcl использует наклонную черту влево (\) как символ Esc. При определении пути в среде Windowsнеобходимо выйти без символа Esc, например:

source c:\\my_dir\\my_subdir\\my_file.tcl

Замечание: Можно также использовать наклонную черту вправо, чтобы разграничить каталоги, например:

source c:/my_dir/my_subdir/my_file.tcl

Выполнение команды отсрочено, пока строка печатается без конечной наклонной черты влево. Это позволяет ввести весь блок кода (или всю Tcl процедуру) для Tcl интерпретатора, чтобы оценить всё сразу.

Запуск из меню      

Можно быстро получать Tcl сценарии частого использования.

В меню File выберите Recent Tcl Scripts и затем выберите Tcl сценарий.

Запуск из окна Редактора                  

В открытом окне Редактора, которое содержит Tcl сценарий, щелкните правой кнопкой мыши и выберите Source Tcl Script.

Запуск из инструмента Пользователя – см. п. 14.9.

Синтаксис Tcl инструкций. В Help приведено более сорока инструкций. Факультативные параметры Tcl команды окружены скобками  “[” и “]”. К сожалению, в списке Tcl инструкций отсутствуют инструкции, обеспечивающие операции fill и dump.

Несколько примеров Tcl команд: 

Команда                Описание

dspprojectaddfile   Добавляет файл к текущему проекту.

dspsetbreak           Устанавливает контрольную точку.