Формирование сигналов специальной формы. Применение подпрограмм. Директивы ассемблера, обеспечивающие связь программы и подпрограмм

Страницы работы

5 страниц (Word-файл)

Содержание работы

Лабораторная работа № 5             

ФОРМИРОВАНИЕ СИГНАЛОВ СПЕЦИАЛЬНОЙ ФОРМЫ

1. Цель работы

Ознакомление с одним из приложений процессоров цифровой обработки сигналов - формированием сигналов заданной формы. Освоение приёмов масштабирования; закрепление навыков разработки и отладки программного обеспечения.

2. Подготовка к работе

2.1. Изучить следующие вопросы:

Цифровые методы генерации периодических сигналов заданной формы.

Приёмы вычисления трансцендентных функций.

Приёмы масштабирования.

Применение подпрограмм. Директивы ассемблера, обеспечивающие связь программы и подпрограмм.

Материалы для освоения указаны в п. 3.

          Контрольные вопросы см. в п.7

2.2. Домашнее задание:

Проанализировать подпрограмму формирования (генерации) синусоидального сигнала sine.asm. Составить графический алгоритм. В дополнение к уже имеющемуся в программе значению AX0=0x4000 для j1=90О  подготовить значения аргумента AX0 = x  и генерируемой функции sin(j)   ещё для двух значений j. Сделать это удобно, рассматривая числовую ось на интервале периода –1..+1 , оцифрованную как в градусах, так и в 16-ричных кодах.   Исходные данные для бригады см. в таблице 5.1. 

Таблица 5.1 – Исходные данные для бригад

№ бригады

1

2

3

4

5

6

j 2 (град.)

30

67.5

112.5

135

150

157.5

j 3 (град.)

-112.5

-30

-90

-67.5

-157.5

-150

3. Материалы  к работе

3.1. Материалы к лабораторной работе №5 (см. файл ЛР5_материалы.doc и  Приложениие,  программы к ЛР № 5). 

3.2. Учебное пособие “Работа с VisualDSP++”, разделы  8.5, 11, 12, 13.1.

3.3. Материал лекций по вопросам:

Приёмы масштабирования.

Взаимодействие  модулей подпрограммы и программы.

Особенности программирования циклов и DAG  в ADSP-2101.

Многофункциональные инструкции процессора.

4. Задание к работе в лаборатории

4.1. Cоздать исполняемый файл main.dxe, используя файлы main.asm и  sine.asm

4.2. Провести проверку и отладку программы .dxe в пошаговом режиме для  значения  аргумента j 1 = 90°,  что соответствует AX0 = 0х4000.

4.3. Получить  отсчёты синусоидального сигнала для двух заданных  значений  аргумента j 2  и  j 3, используя режим прогона.  Сопоставить результаты с ожидаемыми.

5. Указания к работе в лаборатории

5.1.  Программа состоит из двух модулей:  программы main.dsp и подпрограммы sine.dsp.

Скопируйте из папки Лр5 в Ваш рабочий каталог папку Sine c файлами .asm и .ldf

5.2. Запустите программу VisualDSP++. Проделайте все этапы создания нового проекта с именем Sine и исполняемого файла .dxe для программы, состоящей из двух модулей. Загрузите исполняемый файл main.dxe.  

5.3. Проведите проверку и отладку работы программы в пошаговом режиме для AX0 = 0x4000,  обратив внимание на:

·  взаимодействие программы и подпрограммы,

·  результат вычисления полинома;

·  выполнение масштабирования (дважды);

·  защиту от переполнения (знак результата до и после насыщения).

Запишите в отчёт jO, x, AX0, y ожидаемый и y полученный.

5.4. Выполните программу для двух других подготовленных значений аргумента j 2  и j 3, используя повторное выполнение и режим прогона. Запишите jO, x, AX0. Сравните полученные результаты с ожидаемыми.

Замечания:

·  Изменять значение аргумента можно в процессе выполнения программы, предусмотрев контрольную точку после инструкции AX0=0x4000 и изменяя  в момент останова содержимое регистра AX0.

·  После остановки программы на инструкции IDLE для остановки программного счётчика нужно нажать клавишу Halt.

5.5. После демонстрации преподавателю таблицы с результатами работы следует закрыть проект командой Project/Close и закрыть программу VisualDSP++.

6. Содержание отчёта

6.1. Цель работы.

6.2. Графический алгоритм подпрограммы sine.asm. Выделить в алгоритме операции масштабирования и насыщения.

6.3. Результаты работы программы в виде таблицы  «jO, x, AX0, результаты ожидаемый и полученный»  для трёх значений аргумента.

7. Контрольные  вопросы

7.1. В чём состоят преимущества и недостатки двух методов цифровой генерации  сигналов:  метода аппроксимации и табличного метода.

7.2. Расскажите о многофункциональных инструкциях процессора ADSP- -21xx,  встретившихся в данной работе. В чём смысл их применения?

7.3. Расскажите о структуре цикла DO в языке Ассемблера для микрокомпьютеров семейства  ADSP-21xx.

7.4. Изобразите алгоритм и объясните работу фрагментов подпрограммы sine.asm, ответственных  за:

·  переключение квадрантов;

·  вычисление полинома;

Похожие материалы

Информация о работе