数字信号处理系统的设计

数字信号处理系统的设计
数字信号处理系统的设计

《DSP技术与应用---基于TMS320C54X》

实验指导书

湘潭大学信息工程学院

姚志强

2010.09.23

TMS320VC5402 DSK使用注意事项

1) 先用并口电缆和串口线(用到的话)将TMS320VC5402DSK与PC机相连,

而后再将电源接上,打开Code Composer Studio(简称CCS)后有可能报TMS320VC5402DSK和PC机未能连上的错误,可在PC机的CMOS_BIOS重新设置并行口的特性。

2) 将TMS320VC5402DSK上的DIP Switches的5、6置ON,其它置OFF。

3) 要在关闭CCS后及在断电的情况下插拔USB电缆线和串口线。

4) 强烈建议不要带电插拨串口,插拨时至少有一端是断电的,否则串口容

易损坏。

5) TMS320VC5402DSK电路板上大多是CMOS集成电路,为防止静电击毁,

在拿出实验电缆后请立即将玻璃盖复原,任何时候都请不要用手及其它带电物体直接和电路板接触。

实验报告的撰写

1) 每个实验都单独写实验报告。

2) 实验要求和目的;

3) 实验主要内容;

4) 看懂程序代码,并画出程序流程图;

5) 作出硬件描述(如果与DSK板硬件有关);

6)实验结果和心得。

实验注意事项

1) 实验项目所建工程文件统一放在F:\TI\CCS\myprojects下,其余盘在重启后会复原。

2) 实验过程中,不要涉及到中文路径(CCS不支持),包括CCS程序安装路径、文件添加路径、实验源文件名称等。

3) 实验七CODEC语音回放实验用到DSK板,需要自带耳麦,请准备好。

实验一 CCS的安装与CCS操作界面的熟悉

一、实验目的

学会安装与设置Code Composer Studio。

熟悉CCS软件的操作界面。

二、实验设备

CCS安装光盘(本次安装程序在D:\DSP\ccs2.0ForC5000)、装有Windows 98以上操作系统的PC机

三、实验内容及步骤

https://www.360docs.net/doc/0616163331.html,S的安装

安装前需要卸载系统原来的C5000,进入控制面板进行卸载完毕后,再开始下面的步骤。

(1)找到CCS的安装软件,点击安装程序setup.exe,双击启动安装。安装完成后在

桌面上会有“CCS 2 C5000”和“SETUP CCS 2 C5000”两个快捷方式图标,分别对应CCS应用程序和CCS配置程序。

(2)双击运行“SETUP CCS 2 C5000”配置程序,配置驱动程序。本次实验没有用到实验箱,只需配置软件驱动程序。在弹出的“Import Configurantions”对话框中,先点击“Clear”键,清除以前的配置,然后选择“C5402 Simulator”,点击“Import”,最后点击“Save and Quit”按钮,完成配置。

https://www.360docs.net/doc/0616163331.html,S操作界面的熟悉

(1)在桌面上双击“CCS 2 C5000”,弹出一个TI仿真器并行调试管理器窗口。

(2)在管理器窗口的“open”菜单下选择“C54xx(C5402) Simulator”命令,将弹出一个CCS运行主窗口(如果直接弹出CCS运行主窗口,此步可略)。

(3) 点击Help_>Contents打开TMS320C54x Code Composer Stdio Help,在左边Contents列表中点击最后一个TMS320C5402 DSK,浏览了解其下所有子列表的内容,熟悉DSK板的基本硬件、配置及功能。

(4)对照教材介绍CCS的地方,逐一熟悉CCS中的12项菜单的功能,包括File、Edit、View、Project、Debug、Profiler、Option、GEL、Tools等菜单(结合实验二建立项目熟悉更好)。

(5)对照教材,逐一熟悉CCS的五种工具栏:Standard Toolbar、GEL Toolbar、Project Toolbar、Debug Toolbar、Edit Toolbar(结合实验二建立项目熟悉更好)。

实验二、CCS操作

一、实验目的

1. 掌握TMS320C5400系列汇编语言程序的基本格式,

2. 掌握程序编译、连接、运行和调试的基本过程

3. 熟悉Code Composer Studio的使用

二、实验设备

1. 集成开发环境Code Composer Studio(以下简称CCS)

2. 实验代码ccs_basic.s54、ccs_basic.cmd和ccs_basic.gel

三、实验内容结果及提示

1.基本操作:

1). 建立项目,并加入文件

a) 运行CCS setup,选择C5402 Simulator,选择Project→New菜单

项,建立一个新的项目ccs_basic.pjt(注意建立路径),并选择Project→add

files to new project 菜单项,加入文件ccs_basic.s54和ccs_basic.cmd;

b) 在工程视图中选中GEL files文件夹,单击鼠标右键,在弹出的

菜单中选择Load GEL选项,载入ccs_basic.gel;

2). 编译和连接

a) 编译:选择Project-->Build Option,在Compile表单的Category

列表中,选择B asic选项,并设置Generate debug info为full symbolic

debug选项,选择Files选项,并在设置Asm File Ext 中写入“s54”为汇

编语言扩展名;

如图2-1 2-2所示;

b) 连接:选择Project-->Build Option,在linker表单中的Autoinit

mode选项中选择no autointialization模式,Output Filename中输

入.\debug\ ccs_basic.out,Code Entry Point 中输入main,Map Filename

中输入ccs_basic.map,然后保存选项设置,如图2-3所示类似。

图2-1 编译选项的选择

图2-2 自定义文件扩展名

图2-3 连接选项的选择

c) 选择Project→Build构建整个项目,产生可执行文件

ccs_basic.out;

d) 选择File->Load Program,装载可执行文件ccs_basic.out。

2.练习

1) 观察存储器映象文件ccs_basic.Map,理解存储器的配置情况;

2)观察和修改存储器单元的内容

1). 观察存储器映象Map文件

选择File→Open打开ccs_basic.Map文件,可观察

a) 存储器的配置情况:页面0为程序空间,页面1为数据空间;

b) 程序文本段:起始地址0x1000,存储区长度为0x0021;

c) 数据段:其中需初始化数据段.data起始地址0x2005,存储区长

度为4;

d) 不需初始化数据段.bss起始地址0x2000,存储区长度为5;

e) 堆栈段:起始地址0x0100,存储区长度为0x0400;

f) 向量段:起始地址0x0080,存储区长度为0x0080;

g) 全局符号在存储器中的位置:共14个符号,如符号.bss在存储器中的位置为0x2000。

将上述信息与cmd文件中的设置比较,理解cmd文件和连接器的关系。

2). 输出文件ccs_basic.out的运行和调试

a) 运行程序:将可执行文件装载到simulator中,选择Debug→Run

或按F5键运行程序,按shift F5键可中止程序的运行;选择Debug→Step

into或按F8键可实现程序的单步执行。

b) 设置断点:把光标移到某一行,按F9键,这一行将会以红色高

亮显示,表示在该行加了一个断点.

3). 观察和修改存储器单元的内容

a) 点击CCS操作界面左侧调试工具栏图标,出现寄存器窗口,在

该窗口查看存储器的地址

b) 选择Vi ew→memory 或点击CCS操作界面左侧调试工具栏图

标,在弹出的菜单中输入存储器地址,可观察存储器的内容。如存储器

地址为0x2005中内容为0x000A。

c) 修改源汇编程序中数据段内容,可查看存储器单元内容的变化。

在数据表格复制到数组a[]后,如果把a[0]的值由10改为1(修改文件

时注意去掉其只读属性,后面类似),那么求和的结果将变为0x0026。

实验三、CMD文件和Gel文件的编写

一、实验目的

1. 掌握Gel文件的编写,

2. 熟悉Code Composer Studio的使用

二、实验设备

1. 集成开发环境CCS

2. 实验代码ccs_gel.s54、ccs_gel.cmd和ccs_gel.gel

三、实验内容

1. 建立项目并添加相应文件,连接编译(步骤同实验二一样),双击打开CMD文件,对照教材理解CMD文件的编写结构,改变其中的内容,增加自定义段,保存并重新编译,比对前后两次编译得到的Map文件的异同。

2. 了解GEL文件的功能。Gel文件不是DSP开发必须的文件,而是给CCS 使用的文件,它帮助设置CCS的仿真环境,而且可以完成一些常用的调试操作,如硬件设置等。Gel文件的编写是采用类似C语言的编程语言,观察当前的Gel文件的编写。

3. 使用者如果希望修改其功能,可以直接编写gel文件,保存并重新装载。Menuitem是一级子菜单,hotmenu是二级子菜单,其中的处理可以直接填写或调用其他的函数。修改Gel文件,添加menuitem和hotmenu。

menuitem "C54x Experiment";

hotmenu C5402_Textout()

{

GEL_TextOut(“Hello,GEL is a solid tool !\n”);

}

hotmenu C5402_DSK_Test() /*此功能实现需要用到DSK板,可暂不添加,如做测试,需将此中文注释去掉*/

{

*(int *)0x0@io = 0xff07; /* turn on LED */

}

测试其功能。

4. 查询help了解所有Gel的函数功能,并修改文件实现一个其它的Gel函数。

四、实验结果和提示

1. 当设备被选用后,与其关联的gel文件将被使用,其中的StartUp函

数将被调用。可修改其中的内容,如PMST寄存器的数值,并测试。

2. 如果当前CCS中装载了gel文件,那么就会出现相应的菜单项,如

图3-1所示。

图3-1 GEL菜单

3. 添加代码后,重新装载Gel文件将出现新的子菜单,如图3-2所示,

并测试新菜单的功能。

图3-2 新的子菜单

实验四、正弦信号发生器

一、 实验目的

1. 掌握利用DSP 产生正弦信号的原理

2. 熟悉子程序调用的程序结构以及堆栈的使用

3. 掌握CCS 的图形输出操作

二、 实验设备

1. 集成开发环境Code Composer Studio (简称CCS )

2. 实验代码Sin.s54、Lab.cmd 和Lab.gel

三、实验内容

1. 阅读理解多项式逼近正弦的文档

2. 阅读和理解Sin.s54

3. 调试正弦波发生器

4. 加入断点,并选取图形观测,利用动画及时更新

5. 试利用迭代的方法来实现正弦信号发生器

四、实验结果和提示

1. 2345sin()= 3.140625 + 0.02026367 - 5.325196 + 0.5446778 + 1.800293x x x x x x ,x

为第一象限内的弧度值。因为sin()sin(),sin()sin()x x x x π-=-=-,所以只需将第二,三,四象限内的弧度值转换到第一象限即可计算出相应的正弦函数值。由于有限精度,规定弧度值从~ππ-,其中π=0x7FFF ,π/2=0x4000,π-=0x8000。利用级数展开产生正弦波,必须在调用计算子程序之前备份好累加器A 中的当前弧度值,以便计算结束后实现x 增量。正弦波的频率可以通过增幅的大小来进行控制,如果假定程序循环一次为一个时间单位,则正弦波的周期为65536/步长,频率为周期倒数。x 自动增长时要注意当x 超过π后必须调整到~ππ-的范围内才能调用计算子程序,即若,2x x x ππ>=-则。

2. 需要使用临时数据时,必须用frame 语句留出所需空间,使用结束后要将堆栈指针还原以防堆栈内存泄漏。要注意的是frame 的下一条指令不能使用直接寻址。

3. 注意事项:利用累加器写乘法寄存器T (stlm )之后的下一条指令不能使用T ;条件转移指令xc 在指令访问阶段判断条件,该条件必须在先于xc 指令的2个指令之前产生;条件转移指令bc 是在指令执行阶段判断条件,不存在这方面的问题。具体细节请参见《数字信号处理系统的应用和设计》3.6节和

4.5节。

4. 图形观测时选择菜单View->Graph->Time/Frequency ,然后设置如下图:

确定并设置好断点后(断点位置要设置对,几个地方都可以,可多尝试几次)使用Debug->Animate 就可以观察到动画输出的结果如图:

从图中可以观察到正弦波的周期。改变x 的增量步长观察不同频率的正弦波输出有何不同。start address 中分别用sin_out 、AR6、0x2000等测试,观察正弦波的不同,记录图形数据并比较,同时比较两种运行方式在断点形式下的区别。 5. {[(1)]}{[(1)]}2[(1)]()sin n T T sin n T T sin n T cos T ωθωωθωωθω-+++-+-=-+?得到正弦信号迭代公式:()2()[(1)][(2)]sin n T cos T sin n T sin n T ωθωωθωθ+=?-+--+,因为T ω为常数,所以2()cos T ω为常数,则利用此公式迭代计算每次只需一次乘法和一次加法。

6. 尝试不用断点,而用探针Probe Point 的方式显示并观察图形。同样需要比较两种运行方式在探针形式下有无区别。

7. 在断点及动画运行方式实现正弦波显示的情况下,查找到存储器中对应存储正弦波数据实时更新的数据单元。

实验五混合编程

一、实验目的

1. 学习使用实时运行库;

2. 熟悉用C和汇编混合编程的方法;

3. 掌握混合编程的调试方法。

二、实验环境

1. 集成开发环境Code Composer Studio

2.0(简称CCS)

2. 实验程序mix.c,mix.h(由程序自动加载,可不加,后同),mix.cmd,addfun.s54,rts.lib(有C的混合编程需要有库文件),c5402.gel(要有,有C的混合编程要用gel 初始设置。选芯片时设置已自带,可不添加;如无则加)

三、实验步骤

1. 改设置:Build option子菜单linker中Basic项Autoinit Model 改为load-time Initialization或Run-time Initialization(不同的设置,SP初始值将不同。No Initialization也可以,但效果不如前两个好)。

2. 为使效果更明显,屏蔽前两条printf( )语句(可与第三条对比,编译后将出现警告,可忽略),编译项目文件得到.out程序。另外装载程序前,在Edit->Memory->Fill 中,对Data Memory从0x0000到0xFFFF用全0x1111或0x2222等填充(注意:填充后必须对Gel文件重新Load一次)。然后装载程序,了解在混合编程环境下变量、函数的定义方法以及项目文件的编译方法。

3. 打开View Memory,用SP值(Debug_>Go main后的值)作为开始察看地址,从主程序main开始用Single Step方式调试程序,观察程序的执行过程。尤其是在C 程序中调用汇编子函数以及返回的过程,注意当前SP和PC的变化。

4. 看懂代码,比较结果,并画出程序流程图;

四、实验结果分析

1. 实时运行库

实时运行库提供了标准C中的大部分函数,帮助建立C语言的环境,同时也提供一些基本的调试手段,如printf( )等。

2. 程序接口

参数传递是混合编程中非常重要的一部分:第一个参数放置在寄存器A中,其他参数按照逆序压入堆栈;返回的数据放置在寄存器A中。

3. 局部数据

局部数据是在堆栈中开设的,程序返回前消除。

4. 关于堆栈保护

在子程序addfun中,由于需要改变ST1中的数值,所以在子程序入口处先用语句pshm ST1 ; ST1的值在堆栈中保护起来;

在子程序返回前,再用语句popm AR1 ;恢复ST1原来的值。

注:例程见目录\\ 71_mix.

mix.cmd中段设置说明:

1. The .cinit section contains tables for initializing variables and constants.

2. The .const section contains string constants and data defined with the C/C++ qualifier const (provided the constant is not also defined as volatile).

3. The .text section contains all the executable code as well as string literals and compiler-generated constants.

4. The .bss section reserves space for global and static variables. When you specify

the -c linker option, at program startup, the C/C++ boot routine copies data out of the .cinit section (which can be in ROM) and stores it in the .bss section.

5. The .data section is normally used to contain tables of data or preinitialized

variables.

实验六数字图象处理实验

一、实验目的

1. 学习使用实时运行库并了解数字图象处理的基本原理;

2. 熟悉用C和汇编混合编程的方法及混合编程的调试方法;

3. 学习灰度图象反色处理技术及其二值化处理技术。

二、实验环境

1. 集成开发环境Code Composer Studio

2.0(简称CCS)

2. 实验程序DSP54X-28-Tuxiangchuli.c,DSP54X-28-Tuxiangchuli.cmd,rts.lib,

c5402.gel(说明同前)。

三、实验步骤

实验操作流程参照前面实验。

1. 建立新项目DSP54X-28-Tuxiangchuli.pjt,添加所需文件。双击打开源程序DSP54X-28-Tuxiangchuli.c,找到打开图片语句,根据源语句及Tupian文件夹所在位置,重新设置好图片的打开路径(保存时注意文件属性。必须修改好,否则会要求手动输入64*64个数据,如出现这种情况,通过任务管理器关闭CCS后重新打开修改)。

2. 改设置:Build option子菜单linker中Basic项Autoinit Model 改为load-time Initialization或Run-time Initialization(用No Initialization得不到正确的图像)。

3. 编译连接Build后, 装载得到的.out程序。主程序中,在三个“i=0”处设置三个断点,如下图所示。选择Debug_>Go main,使程序从main处开始执行。单击“Run”,程序运行到第一个断点处停止;

4. 用View/Graph/Image打开一个图形观察窗口,以观察程序载入的“Lena64.bmp”图像,该图像在“....\Tupian”目录中;按下图设置该观察窗口,以观察变量y为64*64的二维数组(也可在程序执行前就打开图形窗口,设置完确定时对y选择“否”即可):

下图为“Lena64.bmp”在CCS环境下第一个断点处的显示图像;

单击“Run”,程序运行到第二个断点处停止,这时可在图形观察窗口中,观察原图像经反色处理后的结果图像,如下图:

再单击“Run”,程序运行到第三个断点处停止,这时可在图形观察窗口中,观察到原图像二值化处理后的结果图像,本程序中,二值化处理阀值设为128,见下图:

5. 修改程序,对图像做其它处理(如反向显示,上下颠倒等),记录实验数据及结果,写出报告。

实验七、CODEC(模数/数模转换)

一、实验目的

1. 熟悉DSK板的结构和设置(DSK板注意事项在第2页);

2. 掌握利用CODEC进行AD/DA转换;

3. 熟悉McBSP, DMA的使用;

4. 掌握C和汇编混合编程封装具体实现。

二、实验设备

1.集成开发环境CCS

2.5402DSK实验板

3. 实验代码:

a). 混合编程:codec_c.h(.h、.h54均由程序自动加载,可不加,后同), dsp_cnst.h54, codec.s54, codec_c.c, rts.lib和codec_c.cmd,c5402_dsk.gel(同上用来做gel初始设置, c5402_dsk.gel与c5402.gel稍有区别,注意比较其中的异同)。

b). 汇编(时间多的同学做):codec_cnst.h54, dsp_cnst.h54, macro.h54, codec_init.s54, dsp_init.s54, main.s54和codec.cmd,c5402_dsk.gel(说明同前)。

三、实验内容及步骤

1. 阅读理解McBSP, CODEC和DMA的相关文档

2. 阅读和理解相关实验代码

3. 本实验由于用到DSK板,环境设置与前不同,要特别注意。打开CCS 前,用并口电缆将TMS320VC5402DSK与PC机相连,出现发现硬件提示,安装驱动(驱动程序在D:\DSP\driver5000。一般会要求装3次,2次装USB,driver5000\USBDevice目录,如无则可跳过;1次装driver,即 driver5000中setup.exe,注意driver驱动的安装路径要求与CCS的安装路径一致,故要先找出CCS的安装目录)。

4. 接通DSK板电源,配置工作环境: 双击打开Code Composer (Studio)

配置程序,如图:点击“Clear”按钮,清除原有配置。然后,在列表框“Available Configurations”中加亮“ICETEK-5100 USB Emulator”选项。如图中圆圈所

示:,点击对话框中的“Import”按钮,然后点击“Save and Quit”按钮,退出并确认同时打开CCS主程序。

5. 建立项目,添加代码,编译并连接,各事项如下:

a) 混合编程中改设置:Build option子菜单linker中Basic项Autoinit Model 改为Load-time Initialization或Run-time Initialization。用No Initialization编译不过,有1 Errors, 1 Warnings。为:

error: symbol referencing errors

undefined first referenced

symbol in file

pinit D:\Program Files\TI\myprojects\..\lab56\51_codec\C\rts.lib

cinit D:\Program Files\TI\myprojects\..\lab56\51_codec\C\rts.lib warning:

"codec_c.c", line 63: warning: statement is unreachable

修改后只有1 Warnings,同上,但是可以做出实验结果。

b) 汇编编程中: Build option子菜单linker中Basic项Autoinit Model 则可用No Initialization,用load-time Initialization或Run-time Initialization将有1 Warnings,为:warning: entry point other than _c_int00 specified,都可做出实验结果。

6. Build得到.out程序,然后加载程序并调试,

7. 输入声音信号或自己的语音并听取DA端输出。

四、实验结果和提示

1. DSK实验板上有两块CODEC芯片,一块与DAA口相联,另一块与音频模块相联。5402有两个McBSP口,在DSK板上的缺省设置为McBSP0的信号源为DAA,McBSP1的信号源为音频模块。如果想更改缺省设置必须写相应的CPLD寄存器,具体情况请参考《数字信号处理器开发实践》4.

2.3节。本实验中使用了音频模块作为输入输出端口,因此实验中使用的是相应的CODEC及McBSP1口。

2. 使用CODEC必须设置相应的控制寄存器,实验使用的TLC320AD50C共有7个寄存器,其中4个为控制寄存器,要写这些控制寄存器必须将CODEC切换到第二串行通信方式,切换方式有两种:硬件方式和软件方式。本实验采用了

硬件方式,这样必须将FC在FS的上跳沿前拉高,然后CODEC会在128个SCLK 后切换到第二串行通信,然后就可以向CODEC发送控制字。具体可参阅《数字信号处理器开发实践》5.1.2及5.1.3节。

3. 要设置CODEC必须通过McBSP1口发送数据,为使McBSP1口正常工作要设置相应的控制寄存器,McBSP1的15个控制寄存器采用同址访问的方式进行访问,将要访问的寄存器的子地址写入子地址寄存器SPSA1后再访问同一个数据寄存器即可。具体控制寄存器的设置请参阅《数字信号处理系统的应用和设计》5.

4.2节。要注意的是由于板上McBSP1口与CODEC相联时FS, CLK信号均由CODEC驱动,所以相应的管脚必须设置为输入脚并置好对应的标志位,可以参考实验代码中的寄存器参数注释。

4. 音频信号经CODEC采集后通过McBSP再由DMA通道送往数据区缓冲区,这样可以在不影响CPU的情况下完成数据的传输。5402的DMA共有6个通道,每个通道有5个独立的控制寄存器,此外还共享10个全局寄存器。由于全局寄存器中有四个重载寄存器,可以对1个通道实现自动初始化,这样可以很方便的对输入(或输出)信号进行连续传输。由于输入输出必须占用两个DMA 通道,这样就必须对另一个通道手动重载,这些在中断中完成。由于5402中断资源有限,DMA中断是与其他外设中断复用的,这个通过DMPREC寄存器中的中断复用位进行设置。对以上这40个寄存器的访问也采用与McBSP相同的同址访问方式。具体设置请参阅《数字信号处理系统的应用和设计》

5.5.2节和实验代码中的寄存器参数注释。

5. 要实现数据连续的数据采集和发送必须在数据缓冲区开辟两块区域交替使用,为了辨别使用哪块区域要设置一个相应标志位,这就是常用的乒乓法。在DMA中断处理程序中要根据此标志位更新缓冲区地址。

6. 数据输入的DMA通道中断后必须对输入数据进行处理,然后送入输出缓冲区,这就要在中断中设置一个中断标志位,然后在主程序中查询此标志位判断是否要进行数据处理。本实验中没有对数据进行任何处理直接送入输出缓冲区,但是可以很方便地加入各种信号处理代码。

7. 将汇编程序分模块封装成C函数后可以使整个流程简洁明了,一目了然。同时留下的接口可以让用户很方便地对CODEC进行设置并加入自己想要采用的信号处理代码。在混合编程中要注意的是函数名和变量在C和汇编中的命名规则;C语言接口的汇编函数可以自由使用的寄存器和使用前必须先保存的寄存器;C语言中的状态标志位缺省值以及C语言和汇编的相互调用通过堆栈来进行参数和返回值的传递,同时通过堆栈可以方便的实现局部数据的使用。具体情况可以参阅《数字信号处理系统的应用和设计》7.1节。

实验八、UART串口通信实验

一、实验目的

1. 了解RS232通信接口的基本原理;

2. 熟悉通信接口芯片(TL16C550C)在DSP I/O空间寄存器的地址映射

及工作原理;

3.了解异步通信中串口模式选择、设置数据传输格式、设置波特率、建立连接、传输数据和断开连接等功能。

二、实验设备

1. 集成开发环境CCS

2. 实验开发板TMS320VC5402DSK、RS232接口电缆线及附件

3.程序“串口调试程序v2.2.exe”

三、实验内容及步骤

实验操作流程参照前面实验。

1 在汇编环境调试Uart:(实现字符或文件的发送和回发功能)

a. 实验代码main.s54、uartasm.cmd和uart_init.s54、dsp_init.s54以及

uartasm.h54,c5402_dsk.gel(说明同前)。

b. 串口调试程序“串口调试程序v2.2.exe” , 汇编调试中Build option设

置情况与CODEC实验中的汇编调试设置及出错情况相同。

c. 程序文件介绍:

1)“uart.h54”定义了一些寄存器的地址以及函数类型。

2)“dsp_init.s54”与dsp工作有关的寄存器ST1、PMST、IMR、IFR 和SWWSR,并且清除INTM位以及设定时钟模式。

3)“uart_init.s54” 先检测UART模块是否工作正常,然后设定UART 模块的寄存器,如CNTL1、CNTL2、LCR、MSB&LSB(设定波特率)、FCR、IER等。

4)“main.s54”主程序查看标志位,检测是否UART存在有效接收数据。若有,则执行一定的处理,包括亮LED以及将接收的数据从UART回发。

d. 执行程序时,只要发送数据时,可在串口调试程序的接收窗口立即看到回发的数据。

e. 程序中UART工作参数设置如下:

1)波特率9600(或更低)、无数据校验、字符长度8比特、停止位1、2 均可;

2) 接收区自动清空不选、十六进制显示可选可不选;发送区不能选十六进制发送,可发送字符和文件两种方式;

3)IER允许数据就绪中断和线路状态中断;

4)FIFO不使能,所以,在用串口程序调试时,只能单个字符发送,如“x”。若采用16进制发送,应2位发送,如“a4”。

f. 用汇编语句编写UART应用程序基本步骤:

1)在UART初始化程序中设置UART寄存器,特别是IER、LCR、FCR和除数寄存器LSB&MSB;并且检测UART工作是否正常。

2)设置寄存器CNTL2,选择UART作为信号源,这也放在UART 初始程序中。

3)在DSP初始程序中设定DSP工作方式,这主要通过设置寄存器ST1、ST0、INTM、IFR、SWWSR、PMST、IMR、CLKMD等。

4)编写主程序和中断程序,通常在中断程序中把数据从UART中读到CPU,然后在主程序中对数据进行处理。

2 用C函数库调试Uart:(通过UART串行口实现对DSK板的控制)

a. 实验代码uartc.c、5402.cmd和c5402_dsk.gel,另外还有库函数drv5402.lib、dsk5402.lib、rts.lib以及头文件board.h、mcbsp54.h、regs54xx.h、regs.h、type.h、uart.h。

b. 串口调试程序“串口调试程序v2.2.exe” ,混合编程下Build option中Autoinit Model用Load-time Initialization或Run-time Initialization及No Initializationc均为0 Errors, 0 Warnings。但用No Initializationc与C的编译环境不符,将做不出实验结果。

c. 程序中UART工作参数与汇编调试设置相同。运行程序后,串口程序窗口会出现提示“Select a leed to light? 0/1/2,Or,press 5 to end the program ”,这是通过函数“uart_fputs()”输出的。在键入指定的数字时,相应的LED将亮大约一秒钟。

d. 本程序中用到了如下驱动函数,分别为:

1)brd_init(int):dsk板初始化,输入参数是工作主频;

2)uart_init(void):uart模块初始化,不带参数,不过在调用前需设定好一些全局变量,如波特率、字长、停止位、校验方式、fifo控制方式、数字环使能等;

3)uart_fputs(string):向uart输出字符串;

4)uart_fgetc():从uart中读取一个字符;

5)brd_led_enable(BRD_LED):打开指定的led;

6)brd_led_disable(BRD_LED):关闭指定的led。

e. 程序中还自定义了一些函数:

1)void delay(int):实现延时功能;

数字信号处理期末试卷(含答案)

一、 填空题(每题2分,共10题) 1、 1、 对模拟信号(一维信号,是时间的函数)进行采样后,就是 信号,再 进行幅度量化后就是 信号。 2、 2、 )()]([ω j e X n x FT =,用)(n x 求出)](Re[ω j e X 对应的序列 为 。 3、序列)(n x 的N 点DFT 是)(n x 的Z 变换在 的N 点等间隔采样。 4、)()(5241n R x n R x ==,只有当循环卷积长度L 时,二者的循环卷积等于线性卷积。 5、用来计算N =16点DFT ,直接计算需要_________ 次复乘法,采用基2FFT 算法,需要________ 次复乘法,运算效率为__ _ 。 6、FFT 利用 来减少运算量。 7、数字信号处理的三种基本运算是: 。 8、FIR 滤波器的单位取样响应)(n h 是圆周偶对称的,N=6, 3)3()2(2 )4()1(5.1)5()0(======h h h h h h ,其幅度特性有什么特性? ,相位有何特性? 。 9、数字滤波网络系统函数为 ∑=--= N K k k z a z H 111)(,该网络中共有 条反馈支路。 10、用脉冲响应不变法将)(s H a 转换为)(Z H ,若)(s H a 只有单极点k s ,则系统)(Z H 稳定的条件是 (取s T 1.0=)。 二、 选择题(每题3分,共6题) 1、 1、 )6 3()(π-=n j e n x ,该序列是 。 A.非周期序列 B.周期 6π = N C.周期π6=N D. 周期π2=N 2、 2、 序列 )1()(---=n u a n x n ,则)(Z X 的收敛域为 。 A. a Z < B. a Z ≤ C. a Z > D. a Z ≥ 3、 3、 对)70()(≤≤n n x 和)190()(≤≤n n y 分别作20点DFT ,得)(k X 和)(k Y , 19,1,0),()()(Λ=?=k k Y k X k F ,19,1,0)],([)(Λ==n k F IDFT n f , n 在 范围内时,)(n f 是)(n x 和)(n y 的线性卷积。 A.70≤≤n B.197≤≤n C.1912≤≤n D.190≤≤n 4、 4、 )()(101n R n x =,) ()(72n R n x =,用DFT 计算二者的线性卷积,为使计算量尽可 能的少,应使DFT 的长度N 满足 。 A.16>N B.16=N C.16

数字信号处理滤波器的设计

《数字信号处理》课程设计报告 设计课题滤波器设计与实现 专业班级电信1101班 姓名 学号 201105 报告日期2013年12月

《数字信号处理》 课程设计任务书 题目滤波器设计与实现 学生姓名甘源滢学号201105020103 专业班级电信1101班 设计内容与要求一、设计内容: 设计一个模拟低通巴特沃斯滤波器,技术指标:通带截止频率1000rad,通带最大衰减1dB;阻带起始频率5000rad,阻带最小衰减30dB,画出其幅度谱和相位谱。 二、设计要求 1 设计报告一律按照规定的格式,使用A4纸,格式、封面统一给出模版。 2 报告内容 (1)设计题目及要求 (2)设计原理(包括工作原理、涉及到的matlab函数的说明) (3)设计内容(设计思路,设计流程、仿真结果) (4)设计总结(收获和体会) (5)参考文献 (6)程序清单 起止时间2013年12 月16日至2013年12月23 日指导教师签名2013年12月10日系(教研室)主任签名2013年12 月12 日学生签名2013年12月13日

目录 1课题描述 (1) 1.1报告介绍 (1) 2设计原理 (2) 2.1巴特沃斯低通模拟滤波器的设计原理 (2) 2.2低通巴特沃斯滤波器的设计步骤如下 (3) 2.3函数说明 (3) 2.3.1buttord函数 (3) 2.3.2butter函数 (4) 2.4模拟低通滤波器的性能指标 (4) 3设计内容 (5) 3.1MATLAB简介 (5) 3.2巴特沃斯滤波器的设计步骤 (6) 3.3对巴特沃斯低通模拟滤波器的仿真 (6) 4实验结果分析 (7) 5实验心得体会 (7) 6程序清单 (8) 7参考文献 (9) 1.课题描述 1.1报告介绍 模拟滤波器的理论和设计方法已经发展的相当成熟,且有多种典型的滤波器供我们选择,如巴特沃斯(butterworth)滤波器,切比雪夫(chebyshev)滤波器,椭圆(ellipse)滤波器,贝塞尔(bessel)滤波器等。这些滤波器都有着严格的设计公式,现成的曲线和图表供设计人员使用,而且所设计的系统函数都满足电路实现条件。这些典型的滤波器各有特点:巴特沃斯滤波器具有单调下降到幅频特性;切比雪夫滤波器的幅频特性在带通或者阻带有等波纹特性,可以提高选择性;贝塞尔滤波器通带内有较好的线性相位特性;椭圆滤波器的选择性相对前三种是

数字信号处理完整试题库

1. 有一个线性移不变的系统,其系统函数为: 2z 2 1 )21)(2 11(2 3)(11 1<<-- - = ---z z z z H 1)用直接型结构实现该系统 2)讨论系统稳定性,并求出相应的单位脉冲响应)(n h 4.试用冲激响应不变法与双线性变换法将以下模拟滤波器系统函数变换为数字滤波器系统函数: H(s)= 3) 1)(s (s 2 ++其中抽样周期T=1s 。 三、有一个线性移不变的因果系统,其系统函数为: ) 21)(2 1 1(2 3)(111------= z z z z H 1用直接型结构实现该系统 2)讨论系统稳定性,并求出相应的单位脉冲响应)(n h 七、用双线性变换设计一个三阶巴特沃思数字低通虑波器,采样频率为kHz f s 4=(即采样周期为s T μ250=),其3dB 截止频率为kHz f c 1=。三阶模拟巴特沃思滤波器为: 3 2 ) ()(2)(211)(c c c a s s s s H Ω+Ω+Ω+= 解1)2 111112 5 12 3) 21)(2 1 1(2 3)(------+-- = --- = z z z z z z z H …………………………….. 2分 当2 1 2> >z 时: 收敛域包括单位圆……………………………6分 系统稳定系统。……………………………….10分 1111 1211 2 111)21)(2 11(2 3)(------- -= -- - = z z z z z z H ………………………………..12分 )1(2)()2 1 ()(--+=n u n u n h n n ………………………………….15分 4.(10分)解: 3 1 11)3)(1(1)(+- +=++= s s s s s H ………………1分 1 311)(------ -= Z e s T Z e T z H T T ……………………3分

MULTLAB DSPbuilder硬件模块设计

第六章Matlab/Dsp builder硬件模块设计 Matlab是国内强大的数学分析工具,广泛用于科学计算和工程计算,还可以进行复杂的数字信号处理系统的建模、参数估计及性能分析。Simulink是Matlab的一个组成部分,用于图形化建模仿真。DSP Builder是Altera公司推出的一个面向DSP开发的系统级工具,它构架在多个软件工具之上,并把系统级(算法级建模)和RTL级(硬件实现)两个设计领域的设计工具连接起来放在Matlab/Simulink平台上,而将QuartrsⅡ作为底层设计工具置于后台,从而最大程度地发挥了这三种工具的优势。DSP Builder作为Simulink中的一个工具箱,使得用FPGA设计DSP系统完全可以通过Simulink的图形化界面进行,只要简单地进行DSP Builder工具箱中的模块调用即可。Matlab/DSP Builder尤其适用于一些在Quartus Ⅱ上不方便完成或不能完成的设计项目(如涉及算法类及模拟信号处理与生产方面的系统处理)。DSP Builder还可以自动完成大部分的设计过程和仿真,直到把设计文件下载到FPGA 中。 DSP Builder提供了Quartus? II软件和MATLAB/Simulink工具之间的接口。其具有如下特性: 1.用于连接Mathwork的MATLAB(信号处理工具箱和滤波器设计工具箱),Simulink环境和Altera? 的Quartus II设计软件环境。 2.支持Altera 的DSP核,这些核均可以从Altera的网站上下载(例如:FIR Compiler、Reed-Solomon Compiler等等)。 3.可以利用Altera的DSP开发板来快速的实现设计的原型。 4.支持SignalTap? II逻辑分析仪(一种嵌入式的信号分析仪,它可以探测到DSP开发板上Altera器件内部的信号,并把数据引入到MATLAB的工作区以便于进行可视化的分析)。 5.包括了用户可以创建的定制的逻辑,用于配合SOPC Builder和Nios? II嵌入式处理器设计。 6.包括了PLL块,用于多时钟设计。 7.包括了状态机块。 8.针对DSP系统的算法和实现,支持统一的表示方法。 9.根据MATLAB和Simulink的测试矢量,可以自动生成VHDL测试激励或Quartus II 矢量文件(.vec)。 10.自动调用VHDL综合器和Quartus II编译器。 11.仿真可以设定为比特或周期精度。 12.提供多种的定点运算和逻辑操作,用于配合使用Simulink 软件。 13.支持多种Altera 的器件: Stratix、Stratix II 和 Stratix GX 器件; Cyclone 和 Cyclone II 器件; APEXII、APEX 20KC 和 APEX 20KE 器件; Mercury器件; ACEX? 1K 器件; FLEX? 10K 和 FLEX 6000 器件。 利用Matlab和DSP Builder进行模块设计也是SOPC技术的一个组成部分。这是由于利用Matlab/DSP Builder/QuartrsⅡ可完成纯硬件的DSP算法模型及实现,从而构成嵌入式系统外围接口的协处理模块,再进一步构成软件程序中的精简指令,DSP模块或其他功能模块可以成为单片FPGA电路系统中的一个组成部分,而且通过Matlab/DSP Builder,可以直接为Nios嵌入式处理器设计各类加速器,并以指令的形式加入到Nios的指令系统,从而成为

数字信号处理课程设计

数字信号处理实验报告 设计题目:数字信号处理设计与仿真分析 学院:电子工程学院 专业: 班级: 学号: 姓名: 电子邮件: 日期: 成绩: 指导教师:

题目:数字信号处理设计与仿真分析 1. 引言 实验要求 (1) 建立两个模拟信号的数学模型s a1(t)和s a2(t),其中s a1(t)是有用信号,s a2(t) 是干扰信号。两个信号的中心频率、信号带宽等参数由学生自己选定,要求两个信号的频谱不重叠,s a2(t)的幅度比s a1(t)的幅度高20dB ,两个信号时域叠加得到合成信号x a (t),即 x a (t)= s a1(t)+ s a2(t) 设计计算机程序仿真产生s a1(t)、s a2(t)、x a (t)信号,分别画出三个模拟信号的时域波形和频谱图; (2) 根据x a (t)的中心频率和带宽,按照奈奎斯特采样定理选择采样频率f s ,分 别对信号s a1(t)、s a2(t)、x a (t)进行时域采样,得到离散信号s 1(n)、s 2(n)、x(n)。利用FFT 算法分析离散信号的频谱,分别画出三个离散信号的时域波形和频谱图; (3) 设计数字滤波器H(z),要求该滤波器对干扰信号s 2(n)的衰减大于40dB 。提 出滤波器的设计指标,并设计滤波器,给出滤波器的设计结果,绘制滤波器的幅频特性和相频特性曲线,验证滤波器的设计结果是否达到设计指标要求; (4) 选择实现数字滤波器H(z)的结构,画出结构信号流图; (5) 将合成信号x(n)输入数字滤波器H(z),按照所选择的滤波器结构,设计计 算机程序计算滤波器的输出响应y(n),画出y(n)的时域波形和频谱图; (6) 分析、总结设计结果,提交课程设计报告。 实验目的 (1) 深入理解信号的采样过程、模拟信号与离散信号的特点、时域采样定理。 (2) 熟悉数字滤波的基本概念、数字滤波器的主要技术指标及其物理意义。 (3) 了解模拟和数字滤波器的频率变换、IIR 数字滤波器的直接(优化)设计方 法。

数字信号处理》试题库答案

1、一线性时不变系统,输入为x (n)时,输出为y (n);则输入为2x (n)时,输出为2y(n) ;输入为x (n-3)时,输出为y(n-3) ________________________________ 。 2、从奈奎斯特采样定理得出,要使实信号采样后能够不失真还原,采样频率fs与信号最咼频率f max关系为:fS> = 2f max 。 3、已知一个长度为N的序列x(n),它的离散时间傅立叶变换为X(e jw),它的N点 离散傅立叶变换X ( K是关于X (e jw)的_N ________ 点等间隔采样。 4、有限长序列x(n)的8点DFT为X ( K),则X (K) = _________ 。 5、用脉冲响应不变法进行IIR数字滤波器的设计,它的主要缺点是频谱的交叠 所产生的混叠_________ 现象。 6、若数字滤波器的单位脉冲响应h(n)是奇对称的,长度为N,贝陀的对称中心是(N-1)/2_______ 。 7、用窗函数法设计FIR数字滤波器时,加矩形窗比加三角窗时,所设计出的滤波 器的过渡带比较窄,阻带衰减比较小。 8、无限长单位冲激响应(IIR )滤波器的结构上有反馈环路,因此是递归型结构。 9、若正弦序列x(n)=sin(30n n /120)是周期的,则周期是N二8 。 10、用窗函数法设计FIR数字滤波器时,过渡带的宽度不但与窗的类型有关,还与窗的采样点数有关 11、DFT与DFS有密切关系,因为有限长序列可以看成周期序列的主值区间截断,而周期序列可以看成有限长序列的周期延拓。 12、对长度为N的序列x(n)圆周移位m位得到的序列用Xn(n)表示,其数学表达式为x m(n)= x((n-m)) N R(n)。 13、对按时间抽取的基2-FFT流图进行转置,并将输入变输出,输出变输入即可得到按频率抽取的基 2-FFT流图。 14、线性移不变系统的性质有交换率、结合率和分配律。

数字信号处理教案

数字信号处理教案

数字信号处理教案

课程特点: 本课程是为电子、通信专业三年级学生开设 的一门课程,它是在学生学完了信号与系统的课程后,进一步为学习专业知识打基础的课程。本课程将通过讲课、练习使学生掌握数字信号处理的基本理论和方法。课程内容包括:离散时间信号与系统;离散变换及其快速算法;数字滤波器结构;数字滤波器设计;数字信号处理系统的实现等。 本课程逻辑性很强, 很细致, 很深刻;先难后易, 前三章有一定的难度, 倘能努力学懂前三章(或前三章的0 080), 后面的学习就会容易一些;只要在课堂上专心听讲, 一般是可以听得懂的, 但即便能听懂, 习题还是难以顺利完成。这是因为数字信号分析技巧性很强, 只了解基本的理论和方法, 不辅以相应的技巧, 是很难顺利应用理论和方法的。论证训练是信号分析课基本的,也是重要的内容之一, 也是最难的内容之一。 因此, 理解证明的思维方式, 学习基本的证明方法, 掌握叙述和书写证明的一般语言和格式, 是信号分析教学贯穿始终的一项任务。 鉴于此, 建议的学习方法是: 预习, 课堂上认

真听讲, 必须记笔记, 但要注意以听为主, 力争在课堂上能听懂七、八成。课后不要急于完成作业, 先认真整理笔记, 补充课堂讲授中太简或跳过的推导, 阅读教科书, 学习证明或推导的叙述和书写。基本掌握了课堂教学内容后, 再去做作业。在学习中, 要养成多想问题的习惯。 课堂讲授方法: 1. 关于教材: 《数字信号处理》作者丁玉美高西全西安电子科技大学出版社 2. 内容多, 课时紧: 大学课堂教学与中学不同的是每次课介绍的内容很多, 因此, 内容重复的次数少, 讲课只注重思想性与基本思路, 具体内容或推导特别是同类型或较简的推理论证及推导计算, 可能讲得很简, 留给课后的学习任务一般很重。. 3. 讲解的重点: 概念的意义与理解, 理论的体系, 定理的意义、条件、结论、定理证明的分析与思路, 具有代表性的证明方法, 解题的方法与技巧,某些精细概念之间的本质差别. 在教学中, 可能会写出某些定理证明, 以后一般不会做特别具体的证明叙述.

基于DSP2812 定时器产生方波信号的硬件设计

学号1049721203024 成绩 课程作业 DSP技术 题目:基于DSP2812定时器产生方波 学院(系):信息工程学院 专业班级:电子与通信工程124班 学生姓名:毛大龙 指导教师:孟哲 硬件□软件□ ppt□ 2012年 1 月 8 日

基于DSP2812定时器产生方波硬件设计 1.系统硬件设计内容 本次设计所设计的定时器(信号发生器)是采用TI公司生产的DSP芯片TMS320VC2812和D/A转换芯片TLC7528组成,产生稳定的方波。 我们主要是利用了数字信号处理器以及数模转换器两个部分,其中DSP芯片 TMS320VC2812是系统的核心处理器(控制器),TLC7528芯片是一个模数转换器,主要通过c2812芯片产生的时钟信号作为模数转换器的使能信号,TLC7528被驱动后,将系统产生的数字信号进行转化(数模转换),输出连续的模拟信号,即产生一定占空比的方波(初次我们设定的PWM波占空比为10%,产生的波形频率为1KHZ)最后通过示波器把模拟波形输出到示波器上,整个系统设计简单,清晰易懂。 2.系统设计思想 本系统是以TMS320VC2812这个DSP芯片为核心,通过DSP芯片进行控制和处理,从而产生稳定的方波(PWM)波形,通过D/A转换芯片实现把数字信号转换为模拟信号。整个硬件系统所要做的就是正确连接DSP芯片和D/A转换芯片,确保芯片正常工作,得到稳定的输出波形结果。 系统整体设计方案框图如下: 图1—1 系统整体硬件设计方案 3.系统硬件电路设计原理及框图 3.1系统硬件电路设计原理 整个硬件电路设计主要由中心处理器和模数转换器构成,其核心部分就是

数字信号处理系统的设计

《DSP技术与应用---基于TMS320C54X》 实验指导书 湘潭大学信息工程学院 姚志强 2010.09.23

TMS320VC5402 DSK使用注意事项 1) 先用并口电缆和串口线(用到的话)将TMS320VC5402DSK与PC机相连, 而后再将电源接上,打开Code Composer Studio(简称CCS)后有可能报TMS320VC5402DSK和PC机未能连上的错误,可在PC机的CMOS_BIOS重新设置并行口的特性。 2) 将TMS320VC5402DSK上的DIP Switches的5、6置ON,其它置OFF。 3) 要在关闭CCS后及在断电的情况下插拔USB电缆线和串口线。 4) 强烈建议不要带电插拨串口,插拨时至少有一端是断电的,否则串口容 易损坏。 5) TMS320VC5402DSK电路板上大多是CMOS集成电路,为防止静电击毁, 在拿出实验电缆后请立即将玻璃盖复原,任何时候都请不要用手及其它带电物体直接和电路板接触。 实验报告的撰写 1) 每个实验都单独写实验报告。 2) 实验要求和目的; 3) 实验主要内容; 4) 看懂程序代码,并画出程序流程图; 5) 作出硬件描述(如果与DSK板硬件有关); 6)实验结果和心得。 实验注意事项 1) 实验项目所建工程文件统一放在F:\TI\CCS\myprojects下,其余盘在重启后会复原。 2) 实验过程中,不要涉及到中文路径(CCS不支持),包括CCS程序安装路径、文件添加路径、实验源文件名称等。 3) 实验七CODEC语音回放实验用到DSK板,需要自带耳麦,请准备好。

实验一 CCS的安装与CCS操作界面的熟悉 一、实验目的 学会安装与设置Code Composer Studio。 熟悉CCS软件的操作界面。 二、实验设备 CCS安装光盘(本次安装程序在D:\DSP\ccs2.0ForC5000)、装有Windows 98以上操作系统的PC机 三、实验内容及步骤 https://www.360docs.net/doc/0616163331.html,S的安装 安装前需要卸载系统原来的C5000,进入控制面板进行卸载完毕后,再开始下面的步骤。 (1)找到CCS的安装软件,点击安装程序setup.exe,双击启动安装。安装完成后在 桌面上会有“CCS 2 C5000”和“SETUP CCS 2 C5000”两个快捷方式图标,分别对应CCS应用程序和CCS配置程序。 (2)双击运行“SETUP CCS 2 C5000”配置程序,配置驱动程序。本次实验没有用到实验箱,只需配置软件驱动程序。在弹出的“Import Configurantions”对话框中,先点击“Clear”键,清除以前的配置,然后选择“C5402 Simulator”,点击“Import”,最后点击“Save and Quit”按钮,完成配置。 https://www.360docs.net/doc/0616163331.html,S操作界面的熟悉 (1)在桌面上双击“CCS 2 C5000”,弹出一个TI仿真器并行调试管理器窗口。 (2)在管理器窗口的“open”菜单下选择“C54xx(C5402) Simulator”命令,将弹出一个CCS运行主窗口(如果直接弹出CCS运行主窗口,此步可略)。 (3) 点击Help_>Contents打开TMS320C54x Code Composer Stdio Help,在左边Contents列表中点击最后一个TMS320C5402 DSK,浏览了解其下所有子列表的内容,熟悉DSK板的基本硬件、配置及功能。 (4)对照教材介绍CCS的地方,逐一熟悉CCS中的12项菜单的功能,包括File、Edit、View、Project、Debug、Profiler、Option、GEL、Tools等菜单(结合实验二建立项目熟悉更好)。 (5)对照教材,逐一熟悉CCS的五种工具栏:Standard Toolbar、GEL Toolbar、Project Toolbar、Debug Toolbar、Edit Toolbar(结合实验二建立项目熟悉更好)。

数字信号处理复习题及参考答案

数字信号处理期末复习题 一、单项选择题(在每个小题的四个备选答案中选出一个正确答案,并将正确答案的号码写在题干后面的括号内,每小题1分,共20分) 1.要从抽样信号不失真恢复原连续信号,应满足下列条件的哪几条( ① )。 (Ⅰ)原信号为带限 (Ⅱ)抽样频率大于两倍信号谱的最高频率 (Ⅲ)抽样信号通过理想低通滤波器 ①.Ⅰ、Ⅱ②.Ⅱ、Ⅲ ③.Ⅰ、Ⅲ④.Ⅰ、Ⅱ、Ⅲ 2.在对连续信号均匀采样时,若采样角频率为Ωs,信号最高截止频率为Ωc,则折叠频率为( ④ )。 ①Ωs ②.Ωc ③.Ωc/2 ④.Ωs/2 3.若一线性移不变系统当输入为x(n)=δ(n)时输出为y(n)=R3(n),则当输入为u(n)-u(n-2)时输出为( ② )。 ①.R3(n) ②.R2(n) ③.R3(n)+R3(n-1) ④.R2(n)-R2(n-1) 4.已知序列Z变换的收敛域为|z|>1,则该序列为( ② )。 ①.有限长序列②.右边序列 ③.左边序列④.双边序列 5.离散系统的差分方程为y(n)=x(n)+ay(n-1),则系统的频率响应( ③ )。 ①当|a|<1时,系统呈低通特性 ②.当|a|>1时,系统呈低通特性 ③.当0

6.序列x(n)=R5(n),其8点DFT记为X(k),k=0,1,…,7,则X(0)为( ④ )。 ①.2 ②.3 ③.4 ④.5 7.下列关于FFT的说法中错误的是( ① )。 ①.FFT是一种新的变换 ②.FFT是DFT的快速算法 ③.FFT基本上可以分成时间抽取法和频率抽取法两类 ④.基2 FFT要求序列的点数为2L(其中L为整数) 8.下列结构中不属于FIR滤波器基本结构的是( ③ )。 ①.横截型②.级联型 ③.并联型④.频率抽样型 9.已知某FIR滤波器单位抽样响应h(n)的长度为(M+1),则在下列不同特性的单位抽样响应中可以用来设计线性相位滤波器的是( ① )。 ①.h[n]=-h[M-n] ②.h[n]=h[M+n] ③.h[n]=-h[M-n+1] ④.h[n]=h[M-n+1] 10.下列关于用冲激响应不变法设计IIR滤波器的说法中错误的是( ④ )。 ①.数字频率与模拟频率之间呈线性关系 ②.能将线性相位的模拟滤波器映射为一个线性相位的数字滤波器 ③.容易出现频率混叠效应 ④.可以用于设计高通和带阻滤波器 11.利用矩形窗函数法设计FIR滤波器时,在理想特性的不连续点附近形成的过滤带的宽度近似等于( ① )。 ①.窗函数幅度函数的主瓣宽度 ②.窗函数幅度函数的主瓣宽度的一半

数字信号处理教案

数字信号处理教案 余月华

课程特点: 本课程是为电子、通信专业三年级学生开设的一门课程,它是在学生学完了信号与系统的课程后,进一步为学习专业知识打基础的课程。本课程将通过讲课、练习使学生掌握数字信号处理的基本理论和方法。课程内容包括:离散时间信号与系统;离散变换及其快速算法;数字滤波器结构;数字滤波器设计;数字信号处理系统的实现等。 本课程逻辑性很强, 很细致, 很深刻;先难后易, 前三章有一定的难度, 倘能努力学懂前三章(或前三章的0080), 后面的学习就会容易一些;只要在课堂上专心听讲, 一般是可以听得懂的, 但即便能听懂, 习题还是难以顺利完成。这是因为数字信号分析技巧性很强, 只了解基本的理论和方法, 不辅以相应的技巧, 是很难顺利应用理论和方法的。论证训练是信号分析课基本的,也是重要的内容之一, 也是最难的内容之一。 因此, 理解证明的思维方式, 学习基本的证明方法, 掌握叙述和书写证明的一般语言和格式, 是信号分析教学贯穿始终的一项任务。 鉴于此, 建议的学习方法是: 预习, 课堂上认真听讲, 必须记笔记, 但要注意以听为主, 力争在课堂上能听懂七、八成。 课后不要急于完成作业, 先认真整理笔记, 补充课堂讲授中太简或跳过的推导, 阅读教科书, 学习证明或推导的叙述和书写。基本掌握了课堂教学内容后, 再去做作业。在学习中, 要养成多想问题的习惯。 课堂讲授方法: 1. 关于教材: 《数字信号处理》 作者 丁玉美 高西全 西安电子科技大学出版社 2. 内容多, 课时紧: 大学课堂教学与中学不同的是每次课介绍的内容很多, 因此, 内容重复的次数少, 讲课只注重思想性与基本思路, 具体内容或推导特别是同类型或较简的推理论证及推导计算, 可能讲得很简, 留给课后的学习任务一般很重。. 3. 讲解的重点: 概念的意义与理解, 理论的体系, 定理的意义、条件、结论、定理证明的分析与思路, 具有代表性的证明方法, 解题的方法与技巧,某些精细概念之间的本质差别. 在教学中, 可能会写出某些定理证明, 以后一般不会做特别具体的证明叙述. 4. 要求、辅导及考试: a. 学习方法: 适应大学的学习方法, 尽快进入角色。 课堂上以听为主, 但要做课堂笔记,课后一定要认真复习消化, 补充笔记,一般课堂教学与课外复习的时间比例应为1 : 3 。 b. 作业: 大体上每两周收一次作业, 一次收清。每次重点检查作业总数的三分之一。 作业的收交和完成情况有一个较详细的登记, 缺交作业将直接影响学期总评成绩。 c. 辅导: 大体两周一次。 d. 考试: 只以最基本的内容进行考试, 大体上考课堂教学和所布置作业的内容。 课程的基本内容与要求 第一章. 时域离散信号与时域离散系统 1. 熟悉6种常用序列及序列运算规则; 2. 掌握序列周期性的定义及判断序列周期性的方法; 3. 掌握离散系统的定义及描述方法(时域描述和频域描述); 4. 掌握LSI 系统的线性移不变和时域因果稳定性的判定; 第二章 时域离散信号与系统的傅立叶变换分析方法

dsp 硬件电路的设计

5 DSP控制及硬件电路的设计 5.1 DSP控制 目前市面上流行的主控制器包括:51单片机系列、DSP系列和FPGA。在这中间:虽然51单片机有着成本低廉,体积小的优势;但因其计算能力弱,和外设较少的缺陷,无法满足本系统的需要。FPGA又称现场可编程门阵列,其时序脉冲准确,运算速度快,在需要进行大量重复运算的工程项目中得到了广泛应用。但FPGA以并行运算为主,并需要使用硬件描述语言(verilog 或VHDL)来实现电路设计,相比较单片机有很大不同,这造成开发难度较大,门槛较高。DSP是近几年得到快速发展的控制器,其外设丰富,运算速度快,能满足实时性要求较高的工业现场;尤其适用于控制算法复杂,计算量大的工程项目。 综合以上分析,本文矿用光伏供电系统选择DSP芯片 TMS320LF2407作为最终的控制芯片。TMS320LF2407芯片集成度高,运算速度快,外设丰富,价格适中,作为本设计的控制器,拥有其他芯片所不具备的优势。 5.1.1 TMS320LF2407的技术参数 (1)TMS320LF2407供电电压为3.3V,供电电压低,通态损耗小。最高工作频率40MHZ,指令周期短,指令周期为25ns,能够满足较大载波频率时的计算需求,具备实时控制能力。 (2)TMS320LF2407拥有丰富的存储器资源:包括32K字

程序闪存空间, 1.5K字的数据/程序随机存储器,544字的双口随 机存储器和2k字的单口RAM。除此之外,TMS320LF2407片内还集成有64K数据存储器空间以及64K程序存储器空间; 其I/O 寻址空间达64K,能有效满足使用需要; TMS320LF2407可用于扩展的外部存储器达到192K字。 (3)TMS320LF2407拥有两个事件管理器模块EV A和EVB。每个事件管理器模块上均集成有以下资源:两个16位通用定时器(通过倍频器可以达到很高的工作频率)和8个16位PWM 波生成通道; 为检测上升下降脉冲,片上集成有3个捕获单元。每个模块还可实现以下功能: 可编程的PWM死区控制功能,防止上下桥臂同接收触发信号,同时导通; 输出A、B、C三相对称和非对称触发信号;当接受低电平外部中断信号时,关闭PWM 通道片内光电编码器接口电路,停止发出触发信号; A/D转换功能。 (4)拥有10位模数转换器,最小转换时间为375ns,A/D转换器拥有独立和级连两种工作方式,使用事件管理器EV A、EVB 来实现触发。 (5)拥有16位串行外设接口模块(SPI),和串行通讯接口模块(SCI) (6)拥有5个外部中断资源,除复位中断外,还拥有两个电机驱动保护中断,和两个可屏蔽中断。 (7)除高性能模式外,电源管理还包括低功耗模式,在运算

数字信号处理课程规划报告

数字信号处理课程设计报告《应用Matlab对信号进行频谱分析及滤波》 专业: 班级: 姓名: 指导老师: 二0 0五年一月一日

目录 设计过程步骤() 2.1 语音信号的采集() 2.2 语音信号的频谱分析() 2.3 设计数字滤波器和画出其频谱响应() 2.4 用滤波器对信号进行滤波() 2.5滤波器分析后的语音信号的波形及频谱() ●心得和经验()

设计过程步骤 2.1 语音信号的采集 我们利用Windows下的录音机,录制了一段开枪发出的声音,时间在1 s内。接着在C盘保存为WAV格式,然后在Matlab软件平台下.利用函数wavread对语音信号进行采样,并记录下了采样频率和采样点数,在这里我们还通过函数sound引入听到采样后自己所录的一段声音。通过wavread函数和sound的使用,我们完成了本次课程设计的第一步。其程序如下: [x,fs,bite]=wavread('c:\alsndmgr.wav',[1000 20000]); sound(x,fs,bite); 2.2 语音信号的频谱分析 首先我们画出语音信号的时域波形;然后对语音信号进行频谱分析,在Matlab中,我们利用函数fft对信号进行快速傅里叶变换,得到信号的频谱特性性。到此,我们完成了课程实际的第二部。 其程序如下: n=1024; subplot(2,1,1); y=plot(x(50:n/4)); grid on ; title('时域信号') X=fft(x,256); subplot(2,1,2); plot(abs(fft(X))); grid on ; title('频域信号'); 运行程序得到的图形:

数字信号处理考试试题(A卷)(正式答案)

一、 填空题(30分,每空1分) 1、对模拟信号(一维信号,是时间的函数)进行采样后,就是 离散时间 信号,再进行幅度量化后就是 数字 信号。 2、已知线性时不变系统的单位脉冲响应为 )(n h ,则系统具有因果性要求)0(0)(<=n n h ,系统稳定要求 ∞ <∑∞ -∞ =n n h )(。 3、若有限长序列x(n)的长度为N ,h(n)的长度为M ,则其卷积和的长度L 为 N+M-1。 4、傅里叶变换的几种形式:连续时间、连续频率—傅里叶变换;连续时间离散频率—傅里叶级数;离散时间、连续频率—序列的 傅里叶变换;散时间、离散频率—离散傅里叶变换 5、 序列 )(n x 的N 点DFT 是)(n x 的Z 变换在 单位圆上 的N 点等间隔采样。 6、若序列的Fourier 变换存在且连续,且是其z 变换在单位圆上的值,则序列x(n)一定绝对可和。 7、 用来计算N =16点DFT ,直接计算需要__256___次复乘法,采用基2FFT 算法,需要__32__ 次复乘法 。 8、线性相位FIR 数字滤波器的单位脉冲响应 ()h n 应满足条件()()1--±=n N h n h 。 9. IIR 数字滤波器的基本结构中, 直接 型运算累积误差较大; 级联型 运算累积误差较小; 并联型 运算误差最小且运算速度最高。 10. 数字滤波器按功能分包括 低通 、 高通 、 带通 、 带阻 滤波器。 11. 若滤波器通带内 群延迟响应 = 常数,则为线性相位滤波器。 12. ()?? ? ??=n A n x 7 3cos π 错误!未找到引用源。的周期为 14 13. 求z 反变换通常有 围线积分法(留数法)、部分分式法、长除法等。 14. 用模拟滤波器设计IIR 数字滤波器的方法包括:冲激响应不变法、阶跃响应不变法、双线性变换法。 15. 任一因果稳定系统都可以表示成全通系统和 最小相位系统 的级联。 二、选择题(20分,每空2分) 1. 对于x(n)= n ? ? ? ??21u(n)的Z 变换,( B )。 A. 零点为z= 21,极点为z=0 B. 零点为z=0,极点为z=2 1

设计数字信号处理课程设计

语音信号滤波去噪报告书 课程:数字信号处理 指导老师: 完成组员: 完成日期:2013.01.05

摘要本课程设计主要是下载一段语音信号,绘制其波形并观察其频谱。然后在该语言信号中加一个噪音,利用布莱克曼和矩形窗窗设计一个FIR滤波器,对该语音信号进行虑噪处理,然后比较滤波前后的波形与频谱。在本课程设计中,是用MATLAB的集成环境完成一系列的设计。首先对加噪的语音信号进行虑波去噪处理,再比较滤波前后的频率响应曲线,若一样则满足所设计指标,否则不满足。也可以调用函数sound听滤波前后其语音信号是否带有噪声。若无噪声也说明该滤波器的设置也是成功的。 关键词语音信号;MATLAB;FIR滤波器;滤波去噪; 1 引言 人们在语音通信的过程中将不可避免的会受到来自周围环境的干扰,例如传输媒介引入的噪声,通信设备内部的电噪声,乃至其他讲话者的话音等。正因为有这些干扰噪声的存在,接受者接受到的语音已不是原始的纯净语音信号,而是受噪声干扰污染的带噪声语音信号。而本课程设计就是利用MATLAB集成环境用布莱克曼窗的方法设计一个FIR滤波器,对语音信号进行滤波去噪处理,并将虑噪前后的频谱图进行对比。 1.1 课程设计目的

数字信号处理课程设计是数字信号处理课程的重要实践性环节,是学生在校期间一次较全面的工程师能力训练,在实现学生总体培养目标中占有重要地位。综合运用本课程的理论知识进行频谱分析以及滤波器设计,通过理论推导得出相应结论,并利用MATLAB 作为编程工具进行计算机实现,从而复习巩固了课堂所学的理论知识,提高了对所学知识的综合应用能力,并从实践上初步实现了对数字信号的处理。本课程设计能使学生对通信工程领域各种技术的DSP实现的设计有较熟练的掌握。且通过自身的实践,对DSP的设计程序、内容和方法有更深入的掌握,提高实际运用的能力。并可综合运用这些知识解决一定的实际问题,使学生在所学知识的综合运用能力上以及分析问题、解决问题能力上得到一定的提高。 1.2课程设计的要求 (1)、录制一段个人自己的语音信号,并对录制的信号进行采样,画出采样后语音信号的时域波形和频谱图。 (2)、给定滤波器的性能指标,采用窗函数法和双线性变换设计滤波器,并画出滤波器的频率响应。 (3)、用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化并回放语音信号; (4)、通过利用各种不同的开发工具实现语音信号的滤波去噪,掌握数字信号的分析方法和处理方法。而且通过课程设计能够培养学生严谨的科学态度,认真的工作作风和团队协作精神。 (5)、在老师的指导下,要求独立完成课程设计的全部内容,并按要求编写课程设计学年论文,能正确阐述和分析设计和实验结果。

DSP最小系统电路设计

目录 摘要...................................................... I 第1章绪论 ..................................................................... 错误!未定义书签。第2章总体设计 (1) 2.1系统要实现的功能 (1) 2.2系统的设计流程 (2) 1.2原理框图 (2) 第3章DSP最小系统电路设计.................................... 错误!未定义书签。 3.1电源电路设计 (2) 3.2复位电路设计 (3) 3.3时钟电路设计 (3) 3.4JTAG接口电路设计..................... 错误!未定义书签。 3.5DSP的串行接口电路设计 (4) 3.6存储器FLASH扩展设计 (4) 第4章软件设计 (5) 4.1仿真工作原理及测试步骤 (9) 4.2测试程序 (9) 4.3测试的注意事项 (10) 总结 ................................................................................... 错误!未定义书签。致谢 . (8) 参考文献 (8) 第1章绪论 DSP 有两种涵义,一种是Digital Signal Processing,指的是数字信号处理技术;一种是Digital Signal Processor,指的是数字信号处理器。两者是不可分割的,前者是理论上的技术,要通过后者变成实际产品,两者结合起来才成为解决某一实际问题和实现某一方案的手段。数字信号处理器是目前IT 领域中发展极为迅速的一类微处理器,其功能强大,应用范围相当广泛,能够完成实时的数字信号处理任务。DSP 的性能几乎决定了电子产品的性能。在人们生活当中,DSP可谓无处不在,例如手机,电视机,数码相机,MP3等等都有DSP的存在。DSP 已经成为通信、计算机和消费类电子产品等领域的基础器件。因此,只有理论的学习是不够的,设计一个DSP

数字信号处理课程设计

数字信号处理 课 程 设 计 院系:电子信息与电气工程学院 专业:电子信息工程专业 班级:电信班 姓名: 学号: 组员:

摘要 滤波器设计在数字信号处理中占有极其重要的地位,FIR数字滤波器和IIR 滤波器是滤波器设计的重要组成部分。利用MATLAB信号处理工具箱可以快速有效地设计各种数字滤波器。课题基于MATLAB有噪音语音信号处理的设计与实现,综合运用数字信号处理的理论知识对加噪声语音信号进行时域、频域分析和滤波。通过理论推导得出相应结论,再利用 MATLAB 作为编程工具进行计算机实现。在设计实现的过程中,使用窗函数法来设计FIR数字滤波器,用巴特沃斯、切比雪夫和双线性变法设计IIR数字滤波器,并利用MATLAB 作为辅助工具完成设计中的计算与图形的绘制。通过对对所设计滤波器的仿真和频率特性分析,可知利用MATLAB信号处理工具箱可以有效快捷地设计FIR和IIR数字滤波器,过程简单方便,结果的各项性能指标均达到指定要求。 关键词数字滤波器 MATLAB 窗函数法巴特沃斯

目录 摘要 (1) 1 引言 (1) 1.1课程设计目的 (1) 1.2 课程设计内容及要求 (1) 1.3课程设计设备及平台 (1) 1.3.1 数字滤波器的简介及发展 (1) 1.3.2 MATLAB软件简介 (2) 2 课程设计原理及流程 (4) 3.课程设计原理过程 (4) 3.1 语音信号的采集 (4) 3.2 语音信号的时频分析 (5) 3.3合成后语音加噪声处理 (7) 3.3.1 噪声信号的时频分析 (7) 3.3.2 混合信号的时频分析 (8) 3.4滤波器设计及消噪处理 (10) 3.4.1 设计IIR和FIR数字滤波器 (10) 3.4.2 合成后语音信号的消噪处理 (13) 3.4.3 比较滤波前后语音信号的波形及频谱 (13) 3.4.4回放语音信号 (15) 3.5结果分析 (15) 4 结束语 (15) 5 参考文献 (16)

数字信号处理复习题带答案

数字信号处理复习题带答案

1.若一模拟信号为带限信号,且对其抽样满足奈奎斯特条件,则只要将抽样信号通过_____A____即可完全不失真恢复原信号。 A、理想低通滤波器 B、理想高通滤波器 C、理想带通滤波器 D、理想带阻滤波器 2.下列哪一个单位抽样响应所表示的系统不是因果系统___D__? A、.h(n)=δ(n)+δ(n-10) B、h(n)=u(n) C、h(n)=u(n)-u(n-1) D、h(n)=u(n)-u(n+1) 3.若序列的长度为M,要能够由频域抽样信号X(k)恢复原序列,而不发生时域混叠现象,则频域抽样点数N需满足的条件是_____A_____。 A.N≥M B.N≤M C.N≤2M D.N≥2M 4.以下对双线性变换的描述中不正确的是__D_________。 A.双线性变换是一种非线性变换 B.双线性变换可以用来进行数字频率与模拟频率间的变换 C.双线性变换把s平面的左半平面单值映射到z平面的单位圆内 D.以上说法都不对 5、信号 3 (n)Acos(n) 78 x ππ =-是否为周期信号,若是周期信号,周期为多少? A、周期N=3 7 π B、无法判断 C、非周期信号 D、周期N=14 6、用窗函数设计FIR滤波器时,下列说法正确的是___a____。

A 、加大窗函数的长度不能改变主瓣与旁瓣的相对比例。 B 、加大窗函数的长度可以增加主瓣与旁瓣的比例。 C 、加大窗函数的长度可以减少主瓣与旁瓣的比例 。 D 、以上说法都不对。 7.令||()n x n a =,01,a n <<-∞≤≤∞,()[()]X Z Z x n =,则()X Z 的收敛域 为 __________。 A 、1||a z a -<< B 、1||a z a -<< C 、||a z < D 、1||z a -< 。 8.N 点FFT 所需乘法(复数乘法)次数为 ____D___。 A 、2N log N B 、N C 、2N D 、 2 log 2 N N 9、δ(n)的z 变换是 A A. 1 B.δ(w) C. 2πδ(w) D. 2π 10、下列系统(其中y(n)是输出序列,x(n)是输入序列)中__ C___属于线性 系统。 A.y(n)=x 2(n) B.y(n)=4x(n)+6 C.y(n)=x(n-n 0) D.y(n)=e x(n) 11、在应用截止频率为Ωc 的归一化模拟滤波器的表格时,当实际Ωc ≠1时,代替表中的复变量s 的应为___B________。 A 、Ωc /s B 、s/Ωc C 、-Ωc /s D 、s/c Ω 12、用窗函数法设计FIR 数字滤波器时,在阶数相同的情况下,加矩形窗时所

相关文档
最新文档