Выбрать главу

Рис. 24.5

Нажмите в этом окне кнопку создания нового каталога и задайте ему новое имя. Теперь откройте вновь созданный каталог и задайте имя нового проекта. После чего нажмите кнопку «Save» (сохранить). При этом откроется окно свойств проекта «Project Options» (рис. 24.6). Выберите в этом окне в списке «Processor» тип ADSP-2181 и закройте окно с помощью кнопки «OK».

Рис. 24.6

Далее создайте новый файл программы с помощью команды «File→New» и введите в него текст программы, подобный тому, что приведен ниже:

.section/pm interrupts;

__reset: JUMP start; NOP; NOP; NOP; /*reset vector*/

RTI; NOP; NOP; NOP; /*IRQ2*/

RTI; NOP; NOP; NOP; /*IRQL1*/

RTI; NOP; NOP; NOP; /*IRQL2*/

RTI; NOP; NOP; NOP; /*SPORT0 transmit*/

RTI; NOP; NOP; NOP; /*SPORT0 receive*/

RTI; NOP; NOP; NOP; /*IRQE*/

RTI; NOP; NOP; NOP; /*BDMA*/

RTI; NOP; NOP; NOP; /*SPORT1 transmit*/

RTI; NOP; NOP; NOP; /*SPORT1 receive*/

RTI; NOP; NOP; NOP; /*Timer*/

RTI; NOP; NOP; NOP; /*Power down*/

.section/pm program;

start: nop;

jump start;

Этот текст в дальнейшем можно использовать в качестве шаблона (заготовки) новой программы для сигнального процессора. Сохраните созданный файл с каким-либо допустимым именем и расширением «asm» и выполните команду Project→Add to Project→File(s). Выберите сохраненный файл с программой и нажмите кнопку «Add». Теперь необходимо добавить в каталог с проектом файл Adsp-2189.ldf, который можно взять из рассмотренных ранее каталогов с примерами проектов. Данный файл необходим для определения типа процессора и трансляции программы. После этого программу можно транслировать и запускать на выполнение. При успешной компиляции проекта, в подкаталоге «Debug» проекта должен появиться исполняемый файл с расширением «dxe», который автоматически загружается в отладчик-симулятор при запуске программы.

Для получения файла в рассмотренном нами ранее формате «lda» можно воспользоваться специальной утилитой elf2aexe.exe, входящей в состав Visual DSP++. С целью автоматизации этого процесса предлагаю использовать командный файл, имеющий следующее содержание:

cls

elf2aexe.exe %1.dxe %1

del %1.lda

del %1.sym

ren %1.exe %1.lda

Здесь вначале производится очистка дисплея, затем вызывается утилита elf2aexe.exe с именем преобразовываемого файла в качестве входного параметра. После чего выполняются операции удаления вспомогательных файлов и переименования полученного файла. Данный командный файл можно назвать именем dxe_lda.bat и использовать для его вызова команду: dxe_lda.bat имя_файла.

Полученный таким образом файл с расширением «lda» можно использовать для загрузки в аппаратный эмулятор или тестовую плату через интерфейс IDMA.

Глава 25. Спектральный анализ сигнала в среде Visual DSP++

В этой главе рассматривается программный метод спектрального анализа цифрового сигнала на примере программы, выполняемой в среде разработки Visual DSP++.

Наиболее распространенной и актуальной задачей цифровой обработки сигналов является спектральный анализ сигнала. Полученный в результате анализа спектр сигнала позволяет получить такие важные характеристики сигнала как частоту и амплитуду гармоник, из которых состоит сигнал. Имея эти данные, можно проводить анализ сигнала, на содержание в нем той или иной частоты с определенной амплитудой и длительностью.

Одним из наиболее распространенных и известных методов получения спектра является метод дискретного преобразования Фурье (ДПФ). Этот метод активно применяется в анализаторах спектра, устройствах обработки звука и изображений, распознавания образов и т.п.

ДПФ позволяет преобразовать N комплексных отсчетов сигнала во временной области в N комплексных отсчетов спектра в частотной области. Из многих теоретических источников известно, что во временной области входному сигналу с частотой, равной f, в частотной области соответствует спектр сигнала, отображаемый в диапазоне от -f/2 до f/2, где отрицательные значения составляют мнимую, а положительные значения — действительную часть спектра сигнала. Причем действительная часть спектра обладает четной симметрией, а мнимая часть нечетной. С целью сокращения количества операций и ускорения тем самым расчетов спектра сигнала, обычно ограничиваются вычислением модуля спектра сигнала в области частот от 0 до f/2.

Вычисление N отсчетов спектра сигнала с помощью ДПФ производится с помощью уравнения, приведенного на рис. 25.1. Здесь X(k) являются искомыми отсчетами спектра сигнала, а x(n) — исходными отсчетами сигнала во временной области. N представляет собой количество отсчетов при вычислении ДПФ.