Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Правила использования Code Composer Studio 3.1...doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

Литература

  1. http://fort.stup.ac.ru/UMM/Index.html#ds2

  2. http://www.compel.ru/catalog/dsp/dsp_tms320/tms320c55x/tms320vc55010_10a?layout=print

  3. http://sub.chipdoc.ru/html.cgi/txt/ic/Texas_Instruments/micros/dsp/c5000/320c55x/TMS320VC5510_5510A.htm

  4. http://sub.chipdoc.ru/pdf/TI/micros/tms320/TMS320VC5510_5510A.pdf?fid=26

  5. цифровой обработчик сигналов TMS320VC5509/5510 Прямой Доступ Памяти (DMA) - справочник по ссылке диспетчера (литературное число SPRU587).

  6. Интерфейс Порта Хозяина цифрового обработчика сигналов TMS320VC5510 (HPI) Справочник по ссылке (литературное число SPRU588)

  7. Справочник ссылки краткого обзора периферии цифрового обработчика сигналов TMS320C55x(литературное число SPRU317).

  8. TMS320C55x DSP Library Programmer's Reference (литературное число SPRU422)

  9. The Scientist and Engineer’s Guide to Digital Signal Processing: Second Edition. Steven W. Smith. 1997-1999.

  10. Digital Signal Processing. A Practical Approach. Second edition: Emmanual C. Ifeachor; Barrie W. Jervis

  11. Справочник TMS320C55x Chip Support Library API User's Guide (литературное число SPRU433).

Аппаратная реализация

В данном пункте курсового проекта описана последовательность действий по аппаратной реализации программы, написанной в симуляторе.

Для начала работы с процессором необходимо обеспечить совместимость платы процессора с компьютером. Для этого в плате разработчиками предусмотрен порт USB. Первым делом необходимо подключить плату процессора к компьютеру с помощью шнура и не забыть подключить питание. При обнаружении компьютером платы, вернее устройства USB операционная оболочка (в моём случае WindowsXP SP2) потребует установки драйверов. Для корректной установки необходимо выбрать ручной режим установки и показать путь по которому находиться драйвер.

Драйвер находится по пути : ….\CCStudio_v3.1\specdig\xds510usb\.

После установки драйвера операционная оболочка сможет работать с платой процессора. Теперь необходимо научиться контрольно обмениваться данными с процессорным блоком.

В программе CCStudio_v3.1 для совмещения работы симулятора и реального процессорного блока предусмотрен достаточно гибкий переход. Он заключается в подключении необходимых модулей для работы с тем или иным процессором. Подключение обеспечивается в программе Setup CCStudio_v3.1.

Примечание: Если при установке программ с лицензионного диска были установлены все предлагаемые установщиком программы.

Окно подключения модуля и сам модуль представлены на рисунке 21.

Рисунок 21 –Модуль процессорного блока

Подсвечиваем его мышью и нажимаем кнопку Add теперь применяем установки кнопкой Save & Quit и запускаем CCStudio_v3.1.

На экране монитора появиться меню менеджера параллельной загрузки, представленного на рисунке 22.

Рисунок 22 –Менеджер параллельной загрузки

На рисунке видно, что плата процессора не подключена. Не обращая на это внимание запускаем окно редактора кода двойным щелчком по иконке процессора DSP_C55xx и на экране появляется окно редактора с предупреждением о том, сто плата процессора не подключена, изображённого на рисунке 23.

Рисунок 23 – Окно редактора

На рисунке 23 стрелкой показано место предупреждения.

Для подключения процессора необходимо выбрать в главной панели меню Debug далее Connect или нажать сочетание клавиш Alt + C. Окно редактора измениться. Изменение окна представлено на рисунке 24.

Рисунок 24 – Изменение окна редактора

Такой способ подключения не единственный – можно просто в окне менеджера параллельной загрузки правой клавишей мыши нажать на иконке DSP_C55xx и выбрать в меню пункт Connect Device.

Теперь плата готова к использованию.

Для реализации темы моего курсового задания необходимо было подключить линейный вход и линейный выход процессорной платы. Для этого я воспользовался уже написанной разработчиками программой tone расположенной по пути: …\CCStudio_v3.1\examples\dsk5510\bsl\tone\.

Вид окна редактора CCStudio_v3.1 представлен на рисунке 25.

Этот пример использует AIC23 кодек модуля библиотеки 5510 поддерживаемый платой процессора, чтобы генерировать синус с частотой в 1 кГц и выполняется в течение 5 секунд.

Отсчёты сигнала синуса уже записаны в теле программы под именем sinetable. Кодек работает с частотой дискретизации 48 кГц по умолчанию. Каждый отсчёт берётся с частотой 48 кГц, всего 48 отсчётов, отсюда получаем частоту сигнала 1 кГц.

Полезность этой программы в том, что не надо прописывать множество настроек процессора вручную. Самые главные настройки заключаются в файле dsk5510_aic.h. Там содержится описание самого кодека.

Листинг файла dsk5510_aic.h представлен ниже.

Процедуры настроек описаны с помощью макросов – это достаточно сильно облегчает задачу программиста. Поэтому стоит описать процедуры поддерживаемые кодеком.

Рисунок 25 –Окна редактора с проектом tone

  1. DSK5510_AIC23_rset(DSK5510_AIC23_CodecHandle hCodec, Uint16 regnum, Uint16 regval) - процедура при помощи которой можно установить значение необходимого регистра, задав его название и значение целым шестнадцати битным числом;

  1. Функция - Uint16 DSK5510_AIC23_rget(DSK5510_AIC23_CodecHandle hCodec, Uint16 regnum) возвращает значение регистра по его названию;

  1. Функция - DSK5510_AIC23_openCodec(int id, DSK5510_AIC23_Config *Config)типа DSK5510_AIC23_CodecHandle обозначает открытие кодека с номером и возвращает указатель открытия;

  1. void DSK5510_AIC23_closeCodec(DSK5510_AIC23_CodecHandle hCodec)- процедура закрытия кодека по указателю;

  1. void DSK5510_AIC23_config(DSK5510_AIC23_CodecHandle hCodec, DSK5510_AIC23_Config *Config) – процедура применения настроек регистров обязательных для корректной работы кодека;

  1. CSLBool DSK5510_AIC23_write16(DSK5510_AIC23_CodecHandle hCodec, Int16 val) – функция записи в регистр вывода шестнадцати битной величины, возвращает булевское значение (true - false );

  1. CSLBool DSK5510_AIC23_write32(DSK5510_AIC23_CodecHandle hCodec, Int32 val)- функция записи в регистр вывода тридцати двух битной величины, возвращает булевское значение (true - false);

  1. CSLBool DSK5510_AIC23_read16(DSK5510_AIC23_CodecHandle hCodec, Int16 *val)- читает из регистра ввода информацию в шестнадцати разрядную величину , возвращает булевское значение (true - false);

  1. CSLBool DSK5510_AIC23_read32(DSK5510_AIC23_CodecHandle hCodec, Int32 *val)- читает из регистра ввода информацию в тридцати двух разрядную величину , возвращает булевское значение (true - false);

  1. void DSK5510_AIC23_outGain(DSK5510_AIC23_CodecHandle hCodec, Uint16 outGain) – процедура устанавливающая увеличение значение выходных величин (усиление);

  1. void DSK5510_AIC23_loopback(DSK5510_AIC23_CodecHandle hCodec, CSLBool mode) – устанавливает состояние перемычки;

  1. void DSK5510_AIC23_mute(DSK5510_AIC23_CodecHandle hCodec, CSLBool mode)- отключает или включает звук;

  1. void DSK5510_AIC23_powerDown(DSK5510_AIC23_CodecHandle hCodec, Uint16 sect) – включает или отключает аттенюатор аналого-цифрового и цифро-аналогового преобразователя;

  1. void DSK5510_AIC23_setFreq(DSK5510_AIC23_CodecHandle hCodec, Uint32 freq)- устанавливает величину частоты дискретизации.

Для выполнения курсового проекта необходимо установить значение частоты дискретизации 44.1 кГц, а также записать обработанные отсчёта в регистр вывода.

Файл тела программы, исправленный под требования курсового проекта, (tone.c) описан ниже. Также в программу был добавлен файл коэффициентов Fil_h.h.

Были введены следующие процедуры и функции:

DSK5510_AIC23_setFreq(hCodec, 5)- установка частоты дискретизации. В файле dsk5510_aic.h под цифрой 5 подразумевается 44.1 кГц.

while(!DSK5510_AIC23_read16(hCodec, adr))- цикл пока значение функции true – выполняется чтение в указатель адреса переменной х (смотри листинг tone.c).

Важно. При разработке программы были использованы коэффициенты фильтра типа float. Это не приемлемо для данного типа процессора: т.к. выполнение операции умножения целого числа на дробное с большим числом знаков после запятой занимает много процессорного времени. Поэтому при демонстрации могут быть слышны щелчки или небольшой треск. При использовании целых чисел такого эффекта не возникает.

Примечание. Программа корректно выполняется только в папке My projects в CCStudio_v3.1.

При демонстрации линейный вход платы процессора был подключен к линейному выходу аудио карты компьютера, а линейный выход платы - к колонкам с усилителем.

Во избежание выхода из строя порта линейного входа, не в коем случае нельзя подавать на него сигнал, предназначенный для воспроизведения на колонках без усилителей, ОБЯЗАТЕЛЬНО ТОЛЬКО С ЛИНЕЙНОГО ВЫХОДА АУДИО УСТРОЙСТВ.

Все материалы в виде программных приложений находятся на электронном носителе прилагаемом к курсовому проекту.