Олег Вальпа - Разработка устройств на основе цифровых сигнальных процессоров фирмы Analog Devices с использованием Visual DSP++ стр 14.

Шрифт
Фон

if not exist %1.lda goto next1

del %1.lda

:next1

en %1.exe %1.lda

Эти строки предназначены для переименования нежелательного расширения загрузочного файла с расширением exe в файл с нейтральным расширением lda. Это делается в последней командной строке. Первые три строки предназначены для проверки наличия файла с расширением Ida от предыдущей трансляции и его удаления, в случае обнаружения, для генерации нового файла.

При успешной генерации загрузочного файла будет выведено соответствующее сообщение и осуществлен переход к группе команд для формирования файла прошивки для ПЗУ, из которого может производиться автоматическая загрузка процессора через интерфейс BDMA. Данный процесс называется "сплиттингом" (распределением) и осуществляется командой: spl21 %1.lda %1 - loader-2181 > %1.msg.

Здесь после команды вызова сплиттера sp21.exe с именем файла из командной строки с расширением Ida, следует несколько ключей и команда перенаправления вывода сообщений, с помощью символа >, в файл с расширением msg. Ключ -loader предназначен для добавления в выходной файл кода загрузчика, а ключ -2181 позволяет формировать код загрузки для процессора ADSP-2181. О коде загрузки я расскажу чуть позже.

В результате работы сплиттера будет создан файл прошивки для ПЗУ, с расширением bnm HEX формата Motorola. На практике, для программирования микросхем памяти чаще пользуются бинарным форматом файлов. Поэтому в командном файле добавлено еще несколько строк, осуществляющих преобразование файла bnm в бинарный файл с расширением bin. Для этого используется распространенная программа hexbin2.exe. Эту программу также можно найти на компакт-диске.

Теперь, когда мы познакомились со всеми процедурами трансляции, выполняемыми с помощью командного файла asmdsp.bat, можно начать транслировать нашу программу. Не забудьте, что вместе с программой в каталоге проекта должен находиться файл описания def2181.h, файл архитектуры adsp2181.ach и созданный и описанный выше командный файл asmdsp.bat.

Выполните трансляцию программы mem_clr.dsp с помощью командной строки asmdsp.bat mem_clr. Обратите внимание на то, что в качестве параметра для командного файла используется имя нашей программы без расширения. Оно будет автоматически подставляться вместо символов %1 командного файла. В результате работы командного файла на экране должны последовательно появиться сообщения:

Компиляция...

...завершена успешно

Нажмите любую клавишу...

Компоновка...

...завершена успешно

Нажмите любую клавишу...

Сплиттинг...

...завершен успешно

Нажмите любую клавишу...

Преобразование в бинарный файл...

...завершено успешно

Нажмите любую клавишу...

По завершении работы командного файла в каталоге с программой должны появиться файлы с именем программы и расширениями int, lst, obj, lda, map, sym, msg, cde, bnl, bnm, bnu и bin. Описание назначения данных файлов проекта в краткой форме приведено в табл. 6.5.

Таблица 6.5 Описание расширений файлов проекта

РасширениеОписание
batКомандный файл
sysИсходный файл системной архитектуры
achФайл описания архитектуры
dspФайл ассемблерного модуля (текст программы)
lstФайл листинга
intФайл инициализации
objОбъектный файл
cdeФайл кода
datФайл инициализации данных кода
exe (lda)Файл загрузки образа памяти
mapФайл распределения памяти
symФайл символов
bnuВыходной файл разделителя программ. Содержит старшие байты
bnmВыходной файл разделителя программ. Содержит средние байты
bnlВыходной файл разделителя программ. Содержит младшие байты
binФайл для программирования ПЗУ в двоичном формате
msgФайл сообщений

Итак, с помощью приведенного выше командного файла мы получили необходимые нам файлы с расширениями lda и bin для непосредственной загрузки в память процессора и для прошивки ПЗУ соответственно. Файл с расширением sym понадобится нам для отладки программы с помощью программы симулятора sim2181.exe.

Остальные перечисленные выше файлы в каталоге с программой являются вспомогательными, которые после их просмотра и изучения можно смело удалить для очистки каталога. Например, файл с расширением lst содержит листинг программы с нумерацией всех строк программы и машинными кодами процессора, соответствующими ассемблерным командам программы. С его помощью можно увидеть соответствие ассемблерных команд машинным кодам сигнального процессора.

Для автоматического удаления этих файлов я рекомендую создать и использовать еще один командный файл asmclr.bat, состоящий из строк:

del *.map

del *.lst

del *.hex

del *.msg

del *.cde

del *.int

del *.obj

del *.bnl

del *.bnm

del *.bnu

Создав и запустив такой файл в каталоге с программой, все ненужные файлы будут удалены автоматически, и в каталоге останутся только необходимые для дальнейшей работы файлы.

Теперь можно приступить к отладке программы. Проследить за ходом выполнения программы и изменением состояния внутренних регистров и ячеек памяти процессора нам поможет программа симулятора sim2181.exe, входящая в состав средств разработки программ.

Данная программа работает только в операционной системе DOS и даже не допускает работу в режиме эмуляции DOS из Windows. Поэтому для запуска данного симулятора необходимо перегрузить компьютер в режим работы DOS, после чего необходимо запустить программу симулятора в командной строке sim2181.exe. После загрузки программы на экране монитора должно появиться окно с изображением названия и версии программы (рис. 6.1).

Разработка устройств на основе цифровых...

Рис. 6.1. Окно с изображением названия и версии программы

Несколько секунд спустя должно появиться окно с главным меню и приглашением к вводу команд в центре экрана (рис. 6.2).

Ваша оценка очень важна

0
Шрифт
Фон

Помогите Вашим друзьям узнать о библиотеке