DSP实验报告.docx

上传人:b****2 文档编号:2247863 上传时间:2022-10-28 格式:DOCX 页数:29 大小:1.34MB
下载 相关 举报
DSP实验报告.docx_第1页
第1页 / 共29页
DSP实验报告.docx_第2页
第2页 / 共29页
DSP实验报告.docx_第3页
第3页 / 共29页
DSP实验报告.docx_第4页
第4页 / 共29页
DSP实验报告.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

DSP实验报告.docx

《DSP实验报告.docx》由会员分享,可在线阅读,更多相关《DSP实验报告.docx(29页珍藏版)》请在冰豆网上搜索。

DSP实验报告.docx

DSP实验报告

[《DSP原理及应用》课程实验报告]

(软、硬件实验)

实验名称:

[《DSP原理及应用》实验]

专业班级:

[]

学生姓名:

[]

学号:

[]

指导教师:

[]

完成时间:

[]

 

目录

第一部分.基于DSP系统的实验1

实验3.1:

指示灯实验1

实验3.2:

DSP的定时器4

实验3.5单路,多路模数转换(AD)6

第二部分.DSP算法实验15

实验5.1:

有限冲击响应滤波器(FIR)算法实验15

实验5.2:

无限冲激响应滤波器(IIR)算法20

实验5.3:

快速傅立叶变换(FFT)算法24

第一部分.基于DSP系统的实验

实验3.1:

指示灯实验

一.实验目的

1.了解ICETEK–F2812-A评估板在TMS320F2812DSP外部扩展存储空间上的扩展。

2.了解ICETEK–F2812-A评估板上指示灯扩展原理。

1.学习在C语言中使用扩展的控制寄存器的方法。

二.实验设备

计算机,ICETEK-F2812-A实验箱(或ICETEK仿真器+ICETEK–F2812-A系统板+相关连线及电源)。

三.实验原理

1.TMS320F2812DSP的存储器扩展接口

存储器扩展接口是DSP扩展片外资源的主要接口,它提供了一组控制信号和地址、数据线,可以扩展各类存储器和存储器、寄存器映射的外设。

-ICETEK–F2812-A评估板在扩展接口上除了扩展了片外SRAM外,还扩展了指示灯、DIP开关和D/A设备。

具体扩展地址如下:

C0002-C0003h:

D/A转换控制寄存器

C0001h:

板上DIP开关控制寄存器

C0000h:

板上指示灯控制寄存器

详细说明见第一部分表1.7。

-与ICETEK–F2812-A评估板连接的ICETEK-CTR显示控制模块也使用扩展空间控制主要设备:

108000-108004h:

读-键盘扫描值,写-液晶控制寄存器

108002-108002h:

液晶辅助控制寄存器

2.指示灯扩展原理

3.实验程序流程图

四.实验步骤

1.实验准备

连接实验设备:

请参看本书第三部分、第一章、二。

关闭实验箱上扩展模块和信号源电源开关。

2.设置CodeComposerStudio3.3在硬件仿真(Emulator)方式下运行

请参看本书第三部分、第一章、四、2。

3.启动CodeComposerStudio3.3

请参看本书第三部分、第一章、五、2。

选择菜单Debug→ResetCPU。

4.打开工程文件

工程文件为:

C:

\ICETEK\F2812\DSP281x_examples\Lab0301-LED\LED.pjt

打开源程序LED.c阅读程序,理解程序内容。

5.编译、下载程序。

6.运行程序,观察结果。

7.退出CCS

请参看本书第三部分、第一章、六。

五.实验结果

六.问题与思考

ICETEK–F2812-A评估板上的指示灯控制寄存器是可读可写的,请问用什么办法可以回读指示灯状态?

实验3.2:

DSP的定时器

一.实验目的

1.通过实验熟悉F2812A的定时器;

2.掌握F2812A定时器的控制方法;

3.掌握F2812A的中断结构和对中断的处理流程;

4.学会C语言中断程序设计,以及运用中断程序控制程序流程。

二.实验设备

计算机,ICETEK-F2812-A实验箱(或ICETEK仿真器+ICETEK–F2812-A系统板+相关连线及电源)。

三.实验原理

1.通用定时器介绍及其控制方法(详见spru078a.pdf)

TMS320F2812A内部有三个32位通用定时器(TIMER0/1/2),定时器1和2被保留给实时操作系统(DSPBIOS)用,只有定时器0可以提供给用户使用。

2.中断响应过程(详见spru078a.pdf)

a.接受中断请求。

必须由软件中断(从程序代码)或硬件中断(从一个引脚或一个基于芯片的设备)提出请求去暂停当前主程序的执行。

b.响应中断。

必须能够响应中断请求。

如果中断是可屏蔽的,则必须满足一定的条件,按照一定的顺序去执行。

而对于非可屏蔽中断和软件中断,会立即作出响应。

c.准备执行中断服务程序并保存寄存器的值。

d.执行中断服务子程序。

调用相应得中断服务程序ISR,进入预先规定的向量地址,并且执行已写好的ISR。

3.中断类别

可屏蔽中断:

这些中断可以用软件加以屏蔽或解除屏蔽。

不可屏蔽中断:

这些中断不能够被屏蔽,将立即响应该类中断并转入相应的子程序去执

行。

所有软件调用的中断都属于该类中断。

4.中断的优先级

如果多个中断被同时激发,将按照他们的中断优先级来提供服务。

中断优先级是芯片内部已定义好的,不可修改。

4.实验程序流程图

 

5.实验程序分析

本实验设计的程序是在上实验3.1基础上修改得来,由于实验3.1控制指示灯闪烁的延时控制是用循环计算方法得到的,延时不精确也不均匀,采用中断方式可以实现指示灯的定时闪烁,时间更加准确。

四.实验步骤

1.实验准备

连接实验设备:

请参看本书第三部分、第一章、二。

关闭实验箱上扩展模块和信号源电源开关。

2.设置CodeComposerStudio3.3在硬件仿真(Emulator)方式下运行

请参看本书第三部分、第一章、四、2。

3.启动CodeComposerStudio3.3

请参看本书第三部分、第一章、五、2。

选择菜单Debug→ResetCPU。

4.打开工程文件

打开菜单“Project”的“Open”项;选择C:

\ICETEK\F2812\DSP281x_examples\Lab0303-Timer目录中的“Timer.pjt”。

在项目浏览器中,双击time.c,激活time.c文件,浏览该文件的内容,理解各语句作用。

5.编译、下载程序。

6.运行程序,观察结果。

7.改变“CpuTimer0Regs.PRD.all=0xffff;”函数里的值;重复步骤5,6观察实验现象。

8.退出CCS

五.实验结果

-指示灯在定时器的定时中断中按照设计定时闪烁。

-使用定时器和中断服务程序可以完成许多需要定时完成的任务,比如DSP定时启动A/D转换,日常生活中的计时器计数、空调的定时启动和关闭等。

-在调试程序时,有时需要指示程序工作的状态,可以利用指示灯的闪烁来达到,指示灯灵活的闪烁方式可表达多种状态信息。

实验3.5单路,多路模数转换(AD)

一.实验目的

1.通过实验熟悉F2812A的定时器。

2.掌握F2812A片内AD的控制方法。

二.实验设备

计算机,ICETEK-F2812-A实验箱(或ICETEK仿真器+ICETEK–F2812-A系统板+相关连线及电源)。

三.实验原理

1.TMS320F2812A芯片自带模数转换模块特性

-12位模数转换模块ADC,快速转换时间运行在25mhz,ADC时钟或12.5MSPS。

-16个模拟输入通道(AIN0—AIN15)。

-内置双采样-保持器

-采样幅度:

0-3v,切记输入ad的信号不要超过这个范围,否则会烧坏2812芯片的。

2.模数模块介绍

ADC模块有16个通道,可配置为两个独立的8通道模块以方便为事件管理器A和B服务。

两个独立的8通道模块可以级连组成16通道模块。

虽然有多个输入通道和两个序列器,但在ADC内部只有一个转换器,同一时刻只有1路ad进行转换数据。

3.模数转换的程序控制

模数转换相对于计算机来说是一个较为缓慢的过程。

一般采用中断方式启动转换或保存结果,这样在CPU忙于其他工作时可以少占用处理时间。

设计转换程序应首先考虑处理过程如何与模数转换的时间相匹配,根据实际需要选择适当的触发转换的手段,也要能及时地保存结果。

关于TMS320F2812ADSP芯片内的A/D转换器的详细结构和控制方法,请参见文档spru060a.pdf。

4.实验程序流程图

四.实验步骤

1.实验准备

(1)连接实验设备:

请参看本书第三部分、第一章、二。

(2)准备信号源进行AD输入。

①取出2根实验箱附带的信号线(如右图,两端均为双声道语音插头)。

②用1根信号线连接实验箱左侧信号源的波形输出A端口和“A/D输入”模块的“ADCIN0”插座注意插头要插牢、到底。

这样,信号源波形输出A的输出波形即可送到ICETEK–F2812-A板的AD输入通道0。

③用1根信号线连接实验箱左侧信号源的波形输出B端口和“A/D输入”模块的“ADCIN1”插座注意插头要插牢、到底。

这样,信号源波形输出B的输出波形即可送到ICETEK–F2812-A板的AD输入通道1。

图3.2.3.3

④设置波形输出A:

-向内侧按波形频率选择旋钮,直到标有正弦波的指示灯点亮。

-上下调节波形频率选择旋钮,直到标有1KHz-10KHz的指示灯点亮。

-调节幅值调整旋钮,将波形输出A的幅值调到最大。

⑤设置波形输出B:

-向内侧按波形频率选择旋钮,直到标有三角波的指示灯点亮。

-上下调节波形频率选择旋钮,直到标有1KHz-10KHz的指示灯点亮。

-调节幅值调整旋钮,将波形输出B的幅值调到最大。

2.设置CodeComposerStudio3.3在硬件仿真(Emulator)方式下运行

请参看本书第三部分、第一章、四、2。

3.启动CodeComposerStudio3.3

请参看本书第三部分、第一章、五、2。

选择菜单Debug→ResetCPU。

4.打开工程文件

-工程目录:

C:

\ICETEK\F2812\DSP281x_examples\Lab0305-AD\ADC.pjt。

-在项目浏览器中,双击adc.c,打开adc.c文件,浏览该文件内容,理解各语句作用。

5.编译、下载程序。

6.打开观察窗口

-选择菜单“View”、“Graph”、“Time/Frequency…”做如下设置,然后单击“OK”按钮;

图3.2.3.4观察窗口设置1

-选择菜单“View”、“Graph”、“Time/Frequency…”做如下设置,然后单击“OK”按钮;

图3.2.3.4观察窗口设置2

-在弹出的图形窗口中单击鼠标右键,选择“ClearDisplay”。

通过设置,我们打开了两个图形窗口观察两个通道模数转换的结果。

7.设置信号源

由于模数输入信号未经任何转换就进入DSP,所以必须保证输入的模拟信号的幅度在0-3V之间。

必须用示波器检测信号范围,保证最小值0V最大值3V,否则容易损坏DSP芯片的模数采集模块。

8.运行程序观察结果

-单击“Debug”菜单,选择“Real–timeMode”,然后选择ContinuousRefresh再单击“Run”项,运行程序;

-停止运行,观察“ADCIN0”、“ADCIN1”窗口中的图形显示;

-适当改变信号源,按F5健再次运行,停止后观察图形窗口中的显示。

注意:

输入信号的频率不能大于10KHz,否则会引起混叠失真,而无法观察到波形,如果有兴趣,可以试着做一下,观察采样失真后的图形。

9.选择菜单File→workspace→saveworkspacsAs…,输入文件名SY.wks。

10.退出CCS

请参看本书第三部分、第一章、六。

五.实验结果

10-100Hz

 

 

 

100-1KHz

 

 

 

 

六.问题与思考

编写一个程序,实现下面的内容:

要求:

在触发1(定时器下溢)来到时开始1个自动转换,触发

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1