Ознакомление с одним из приложений процессоров цифровой обработки сигналов - формированием сигналов заданной формы. Освоение приёмов масштабирования; закрепление навыков разработки и отладки программного обеспечения.
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.1. Материалы к лабораторной работе №5 (см. файл ЛР5_материалы.doc и Приложениие, программы к ЛР № 5).
3.2. Учебное пособие “Работа с VisualDSP++”, разделы 8.5, 11, 12, 13.1.
3.3. Материал лекций по вопросам:
Приёмы масштабирования.
Взаимодействие модулей подпрограммы и программы.
Особенности программирования циклов и DAG в ADSP-2101.
Многофункциональные инструкции процессора.
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.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.1. Цель работы.
6.2. Графический алгоритм подпрограммы sine.asm. Выделить в алгоритме операции масштабирования и насыщения.
6.3. Результаты работы программы в виде таблицы «jO, x, AX0, результаты ожидаемый и полученный» для трёх значений аргумента.
7.1. В чём состоят преимущества и недостатки двух методов цифровой генерации сигналов: метода аппроксимации и табличного метода.
7.2. Расскажите о многофункциональных инструкциях процессора ADSP- -21xx, встретившихся в данной работе. В чём смысл их применения?
7.3. Расскажите о структуре цикла DO в языке Ассемблера для микрокомпьютеров семейства ADSP-21xx.
7.4. Изобразите алгоритм и объясните работу фрагментов подпрограммы sine.asm, ответственных за:
· переключение квадрантов;
· вычисление полинома;
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.