《DSP原理及应用》实验内容
考虑到学时分配及内容,本课程共开设5个实验,所有实验内容暂定为10个,从中选择5个实验进行开课。如下:
实验一、实验系统介绍及CCS的使用实验
主做内容是CCS入门实验2-5,CCS的使用预习
实验二、片上外设的GPIO控制实验
主做内容是了解GPIO控制的方式,及相关内部结构体,类、句柄的使用(VC++相关内容)。
实验三、数字I/O的交通灯实验
了解数字I/O的使用方法,提前预习实验内容,看懂交通灯的控制程序,会进行相关配置的修改。
实验四、数字I/O的步进电机控制实验
进一步了解I/O的使用,并要求掌握PWM信号的产生,了解步进电机控制的基本原理及方法
实验五、异步串行口(SCI)通信实验
了解SCI通信的格式及相关技术,掌握SCI相关寄存器的配置并能进行相关修改配置,(内容需要预习)
实验六、A/D采样实验
掌握DSP A/D采样的相关寄存器配置,及其使用方法,进行对外围信号的采样,并能对其采样器进行校准。
实验七、DSP算法实验——有限冲击响应滤波器(FIR)滤波实现
巩固有限冲击响应滤波器(FIR)滤波数字实现的具体方法,熟悉相关理论内容,掌握DSP的C语言实现方法。
实验八、语音信号采集与分析——回声实验
要求必须预习相关实验内容
实验九、SEED-DECxxxx FLASH烧写实验
了解相关DSP的烧写步骤及烧写插件的安装方法,掌握烧写方法
实验十、DSP的相关设计综合实验
要求自己收集材料,整理,写出DSP 的C语言实现方法,并在试验箱上实现相关功能。
以上所有试验内容及相关手册、代码(除实验十之外)均有提供,请同学们自己拷贝,课下预习。
实验0 实验设备安装才CCS调试环境 实验目的: 按照实验讲义操作步骤,打开CCS软件,熟悉软件工作环境,了解整个工作环境内容,有助于提高以后实验的操作性和正确性。 实验步骤: 以演示实验一为例: 1.使用配送的并口电缆线连接好计算机并口与实验箱并口,打开实验箱电源; 2.启动CCS,点击主菜单“Project->Open”在目录“C5000QuickStart\sinewave\”下打开工程文件sinewave.pjt,然后点击主菜单“Project->Build”编译,然后点击主菜单“File->Load Program”装载debug目录下的程序sinewave.out; 3.打开源文件exer3.asm,在注释行“set breakpoint in CCS !!!”语句的NOP处单击右键弹出菜单,选择“Toggle breakpoint”加入红色的断点,如下图所示; 4.点击主菜单“View->Graph->Time/Frequency…”,屏幕会出现图形窗口设置对话框 5.双击Start Address,将其改为y0;双击Acquisition Buffer Size,将其改为1; DSP Data Type设置成16-bit signed integer,如下图所示; 6.点击主菜单“Windows->Tile Horizontally”,排列好窗口,便于观察 7.点击主菜单“Debug->Animate”或按F12键动画运行程序,即可观察到实验结果: 心得体会: 通过对演示实验的练习,让自己更进一步对CCS软件的运行环境、编译过程、装载过程、属性设置、动画演示、实验结果的观察有一个醒目的了解和熟悉的操作方法。熟悉了DSP实验箱基本模块。让我对DSP课程产生了浓厚的学习兴趣,课程学习和实验操作结合为一体的学习体系,使我更好的领悟到DSP课程的实用性和趣味性。
实验报告 实验课程:DSP原理及应用 学生姓名: 学号: 专业班级: 2012年 5月 25日
目录 实验一定点除法运算 实验二FIR滤波器 实验三FFT算法 实验四卷积计算 实验五数码管显示 实验六语音录放
实验一定点除法运算 一、实验目的 1、熟悉C54指令系统,掌握常用汇编指令,学会设计程序和算法的技巧。 2、学习用指令实现除法运算。 二、实验设备 计算机;DSP 硬件仿真器;DSP 实验开发平台。 三、实验原理 由内置的硬件模块支持,数字信号处理器可以高速的完成加法和乘法运算。但TMS320 系列DSP不提供除法指令,为实现除法运算,需要编写除法子程序来实现。二进制除法是乘法的逆运算。乘法包括一系列的移位和加法,而除法可分解为一系列的减法和移位。本实验要求编写一个16 位的定点除法子程序。 1.除法运算的过程设累加器为8 位,且除法运算为10 除以3,除的过程包括与除数有关的除数逐步移位,然后进行减法运算,若所得商为正,则在商中置1,否则该位商为0 例如:4 位除法示例:(1)数的最低有效位对齐被除数的最高有效位00001010 - 00011000 11110010 (2)由于减法结果为负,丢弃减法结果,将被除数左移一位再减00010100 - 00011000 11111000 (3)结果仍为负,丢弃减法结果,将被除数左移一位再减00101000 - 00011000 00010000 (4)结果为正,将减法结果左移一位后把商置1,做最后一次减00100001 - 00011000 00001001 (5)结果为正,将减法结果左移一位加1 得最后结果,高4 位是余数,低4 位商:00010011 2.除法运算的实现为了尽量提高除法运算的效率,’C54x 系列提供了条件减指令SUBC 来完成除法操作。 四、实验步骤 1.用Simulator 方式启动Code Composer。 2 .执行Project New 建立新的项目,输入chuf作为项目的名称,将程序定位在D:\ti\myprojects\chuf目录。 3.执行File New Source File 建立新的程序文件,为创建新的程序文件命名为chuf.asm 并保存;执行Project Add Files to Project,把chuf.asm 加入项目中。4.执行File New Source File 建立新的文件并保存为chuf.cmd;执行Project Add Files to Project,把chuf.cmd 加入项目中。 5.编辑chuf.asm 加入如下内容: ;*** 编制计算除法运算的程序段。其中|被除数|<|除数|,商为小数*** .title "chuf.asm" .mmregs .def start,_c_int00
深圳大学实验报告课程名称:DSP系统设计 实验项目名称:DSP系统设计实验 学院:机电与控制工程学院 专业:自动化 指导教师:杜建铭 报告人1:. 学号:。班级:3 报告人2:. 学号:。班级:3 报告人3:. 学号:。班级:3 实验时间: 实验报告提交时间: 教务处制
实验一、CCS入门试验 一、实验目的 1. 熟悉CCS集成开发环境,掌握工程的生成方法; 2. 熟悉SEED-DEC2812实验环境; 3. 掌握CCS集成开发环境的调试方法。 二、实验仪器 1.TMS320系列SEED-DTK教学试验箱24套 2. 台式PC机24台 三、实验内容 1.仿真器驱动的安装和配置 2. DSP 源文件的建立; 3. DSP程序工程文件的建立; 4. 学习使用CCS集成开发工具的调试工具。 四、实验准备: 1.将DSP仿真器与计算机连接好; 2.将DSP仿真器的JTAG插头与SEED-DEC2812单元的J1相连接; 3.启动计算机,当计算机启动后,打开SEED-DTK2812的电 源。SEED-DTK_MBoard单元的+5V,+3.3V,+15V,-15V的电源指示灯及SEED-DEC2812的电源指示灯D2是否均亮;若有不亮,请断开电源,检查电源。 五、实验步骤 (一)创建源文件 1.进入CCS环境。
2.打开CCS选择File →New →Source File命令 3.编写源代码并保存 4.保存源程序名为math.c,选择File →Save 5.创建其他源程序(如.cmd)可重复上述步骤。 (二)创建工程文件 1.打开CCS,点击Project-->New,创建一个新工程,其中工程名及路径可任意指定弹 出对话框: 2.在Project中填入工程名,Location中输入工程路径;其余按照默认选项,点击完成 即可完成工程创建; 3.点击Project选择add files to project,添加工程所需文件;
实验三FIR滤波器的DSP实验报告 一、实验目的 1. 了解MATLAB的FIR滤波器设计方法与编程; 2. 掌握FIR滤波器算法基本原理和C语言的编程方法; 二、实验内容 FIR滤波器设计流程为,根据给出的滤波器设计(通带带宽、阻带衰减、相位要求)要求,在Matlab环境下仿真得到滤波器系数,得到了滤波器系数后在CCS下编程设计DSP 的FIR滤波器。 1.使用Matlab中的FDAtool设计FIR滤波器 设计实现fir低通滤波器,阶数为20,采样频率fs=8000Hz,截止频率fc=1500Hz,窗口设置为汉明窗Hamming。经过的信号频率是1000HZ和2000HZ的混叠波。 2.参阅FIR基本理论及C语言编程方法,研读、分析实验指导书中的代码; 3. 双击,启动CCS的配置程序选项,选择“C5502 Simulator”; 4. 启动CCS,打开实验工程文件,再编译并装载程序; 5. 仿真波形 A.输入信号波形 B.输入信号频 C输出信号波形
D 输出信号频谱 从输入信号和输出信号的频谱对比中可以看出,输出信号有1KHZ 和2KHZ 的混叠信号。经过FIR 低通录波器后,滤掉了2KHZ 的频谱。只剩下1KHZ 的频谱。 4.修改代码:滤波器设计要求:线性相位低通滤波器,模拟信号通带为0~1kHz ,阻带衰减在5kHz 处为-60dB 。采样率为20kHz 。 采用凯塞窗口设计此低通滤波器,设计过程如下: 通带边界频率为1KHZ ,阻带边界频率是5KHZ 有60dB 的衰减,可得: rad rad s p 22052,102012ππωππ ω==== 过渡带πωωω5 2 = -=?p s ,A=60dB 设计凯塞窗口的长度N 和参数β分别为: 29285.28 =?-≈ ω A N 65326.5)7.8(1102.0=-=a β 使用MA TLAB 设计此滤波器,过程如下: 1)在Matlab 的Start 菜单中选择Toolboxes -> Filter Design -> Filter Design & Analysis Tools(fdatool),或者在命令行中输入fdatool 来启动滤波器设计分析器。
DSP实验报告 软件实验 1无限冲激响应滤波器(IIR) 算法 一.实验目的 1 .掌握设计IIR 数字滤波器的原理和方法。 2 .熟悉IIR 数字滤波器特性。 3 .了解IIR 数字滤波器的设计方法。 二.实验设备 PC 兼容机一台,操作系统为Windows2000( 或Windows98 ,WindowsXP ,以下默认为Windows2000) ,安装Code Composer Studio 2.21 软件。 三.实验原理 1 .无限冲激响应数字滤波器的基础理论。 2 .模拟滤波器原理(巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器、贝塞尔滤波器)。 3 .数字滤波器系数的确定方法。 4 .根据要求设计低通IIR 滤波器: 要求:低通巴特沃斯滤波器在其通带边缘1kHz 处的增益为-3dB ,12kHz 处的阻带衰减为30dB ,采样频率25kHz 。设计: - 确定待求通带边缘频率fp1Hz 、待求阻带边缘频率fs1Hz 和待求阻带衰减-20log δsdB 。 模拟边缘频率为:fp1=1000Hz ,fs1=12000Hz 阻带边缘衰减为:-20log δs=30dB - 用Ω= 2πf/fs 把由Hz 表示的待求边缘频率转换成弧度表示的数字频率,得到Ωp1 和Ωs1 。 Ωp1=2 πfp1/fs=2 π1000/25000=0.08 π弧度 Ωs1=2 πfs1/fs=2 π12000/25000=0.96 π弧度 - 计算预扭曲模拟频率以避免双线性变换带来的失真。 由w=2fs tan( Ω/2) 求得wp1 和ws1 ,单位为弧度/ 秒。 wp1=2fs tan( Ωp1/2)=6316.5 弧度/ 秒 ws1=2fs tan( Ωs1/2)=794727.2 弧度/ 秒 - 由已给定的阻带衰减-20log δs 确定阻带边缘增益δs 。
Matlab仿真实验 实验报告 学院:电子工程学院 专业:电子信息科学与技术 班级: 学号: 姓名:
时间:2015年12月23日 实验一:数字信号的FFT分析 1.实验目的 通过本次试验,应该掌握: (a)用傅里叶变换进行信号分析时基本参数的选择 (b)经过离散时间傅里叶变换和有限长度离散傅里叶变换后信号频谱上的区别,前者DTFT时间域是离散信号,频率域还是连续的,而DFT在两个域中都是离散的。(c)离散傅里叶变化的基本原理、特性,以及经典的快速算法(基2时间抽选法),体会快速算法的效率。 (d)获得一个高密度频谱和高分辨率频谱的概念和方法,建立频率分辨率和时间分辨率的概念,为将来进一步进行时频分析(例如小波)的学习和研究打下基础。(e)建立DFT从整体上可看成是由窄带相邻滤波器组成的滤波器组的概念,此概念的一个典型应用时数字音频压缩中的分析滤波器,例如DVD AC3和MPEG Audio。 2.实验容、要求及结果。 (1)离散信号的频谱分析: 设信号x(n)=0.001*cos(0.45n)+sin(0.3n)-cos(0.302n-) 此信号的0.3谱线相距很近,谱线0.45的幅度很小,请选择合适的序列长度N和窗函数,用DFT分析其频谱,要求得到清楚的三根谱线。 【实验代码】:
k=2000; n=[1:1:k]; x=0.001*cos(0.45*n*pi)+sin(0.3*n*pi)-cos(0.302*n*pi-pi/4); subplot(2,1,1); stem(n,x,'.'); title(‘时域序列'); xlabel('n'); ylabel('x(n)'); xk=fft(x,k); w=2*pi/k*[0:1:k-1]; subplot(2,1,2); stem(w/pi,abs(xk)); axis([0 0.5 0 2]); title('1000点DFT'); xlabel('数字频率'); ylabel('|xk(k)|'); 【实验结果图】:
实验三 快速傅里叶变换 FFT 一、实验目的 1.理解DFT 算法,并能用MATLAB 实现DFT 。 2. 加深对FFT 的理解,体会DFT 和FFT 之间的关系。 3.熟悉应用FFT 实现两个序列的线性卷积的方法。 二、实验原理 N 点序列x(n) 的DFT 和IDFT 定义: 若将DFT 变换的定义写成矩阵形式,则得到 X=A ﹒x ,其中DFT 变换矩阵A 为 ?????????? ????=---2)1(111...1......... ......11...11N N N N N N N W W W W A 可以用函数U=fft(u,N)和u=ifft(U,N)计算N 点序列的DFT 正、反变换。 三、实验内容 (一)离散傅里叶变换(DFT ) 1.用MATLAB 求N=16的有限序列)4/sin()8/sin()(ππn n n x +=的DFT 结果,并画出结果图。 参考程序如下: N=16; n=0:1:N-1; %时域采样 xn=sin(n*pi/8)+sin(n*pi/4); k=0:1:N-1; %频域采样
WN=exp(-j*2*pi/N); nk=n'*k; WNnk=WN.^nk; Xk=xn*WNnk; subplot(2,1,1) stem(n,xn); subplot(2,1,2) stem(k,abs(Xk)); 2.矩形序列x(n)=R (n),求N分别取8,32时的DFT,最后绘出结果图形。 5 参考程序如下: function[Xk]=dft(xn,N) n=[0:1:N-1]; %n的行向量 k=[0:1:N-1]; %k的行向量 WN=exp(-j*2*pi/N); %旋转因子 nk=n'*k; %产生一个含nk值的N乘N维矩阵WNnk=WN.^nk; %DFT矩阵 Xk=xn*WNnk; %DFT系数的行向量 调用上面函数解题。 N=8;x=[ones(1,5),zeros(1,N-5)]; n=0:N-1; X=dft(x,N); %N=8点离散傅立叶变换 magX=abs(X);phaX=angle(X)*180/pi; k=(0:length(magX)'-1)*N/length(magX); subplot(2,2,1);stem(n,x);ylabel('x(n)'); subplot(2,2,2);stem(k,magX);axis([0,10,0,5]);ylabel('|X(k)|'); N=32;x=[ones(1,5),zeros(1,N-5)]; n=0:N-1; X=dft(x,N); %N=32点离散傅立叶变换 magX=abs(X);phaX=angle(X)*180/pi; k=(0:length(magX)'-1)*N/length(magX);
DSP运行实验报告 一、实验目的 熟悉CCS软件仿真下,DSP程序的下载和运行;熟悉借助单片机的DSP程序下载和运行; 熟悉借助仿真器的DSP程序下载和运行;熟悉与DSP程序下载运行相关的CCS编程环境。 二、实验原理 CCS软件仿真下,借用计算机的资源仿真DSP的内部结构,可以模拟DSP程序的下载和运行。 如果要让程序在实验板的DSP中运行、调试和仿真,可以用仿真器进行DSP程序下载和运行。初学者也可以不用仿真器来使用这款实验板,只是不能进行程序调试和仿真。 在本实验板的作用中,单片机既是串口下载程序的载体,又是充当DSP 的片外存储器(相对于FLASH),用于固化程序。 三、实验设备、仪器及材料 安装有WINDOWS XP操作系统和CCS3.3的计算机。 四、实验步骤(按照实际操作过程) 1、CCS软件仿真下,DSP程序的下载和运行。 第一步:安装CCS,如果不使用仿真器,CCS 的运行环境要设置成一个模拟仿真器(软仿真)。
第二步:运行CCS,进入CCS 开发环境。 第三步:打开一个工程。 将实验目录下的EXP01目录拷到D:\shiyan下(目录路径不能有中文),用[Project]\[Open]菜单打开工程,在“Project Open”对话框中选 EXP01\CPUtimer\CpuTimer.pjt,选“打开”, 第四步:编译工程。 在[Project]菜单中选“Rebuild All”,生成CpuTimer.out文件。 第五步:装载程序。 用[File]\[Load Program]菜单装载第四步生成CpuTimer.out文件,在当前工程目录中的Debug 文件夹中找到CpuTimer.out文件,选中,鼠标左键单击“打开”。
实验三离散时间系统及响应 [实验目的] 1、熟悉离散时间系统的时域和频域分析方法。 2、掌握稳定系统性的判别。 3、掌握利用MATLAB求解零极状态、差分方程和频率响应的方法。 [实验仪器] 计算机、Matlab6.5(或更高版本)软件 [实验参考书] :自编实验指导书 与本实验有关的MA TLAB函数: 1. conv.m用来实现两个离散序列的线性卷积。其调用格式是:y=conv(x,h) 2.filter.m求离散系统的输出y(n) 。若系统的h(n) 已知,可用conv.m文件可求出y(n) ;若系统的H(z) 已知,可用filter可求出y(n),调用格式是: y=filter(b, a, x);%其中x, y, a 和b都是向量。 3.impz.m在H(z) 已知情况下, 求系统的单位抽样响应h(n)。调用格式是: h = impz(b, a, N) 或 [h,t]=impz(b,a,N) N是所需的的长度。前者绘图时n从1开始,而后者从0开始。 4.freqz.m在H(z) 已知情况下, 求系统的频率响应。基本的调用格式是: [H,w]=freqz(b,a,N,'whole',Fs) N是频率轴的分点数,建议N为2的整次幂;w是返回频率轴座标向量,绘图用;Fs是抽样频率,若Fs=1,频率轴给出归一化频率;’whole’指定计算的频率范围是从0~FS,缺省时是从0~FS/2. 5.zplane.m文件可用来显示离散系统的极-零图。其调用格式是: zplane(z,p), 或zplane(b,a), 前者是在已知系统零点的列向量z和极点的列向量p的情况下画出极-零图,后者是在仅已知H(Z)的A(z)、B(z) 的情况下画出极-零图。 [实验内容] 1、序列的卷积运算。下例是一个指数函数的卷积,结果如图所示。 clear all; fs=20; n =0:49; x=exp(-n/fs); subplot(211),stem(x) y=conv(x,x); subplot(212);stem(y);grid; 05101520253035404550 仿照上例,现在假设存在两个序列,()[,,,,,,] h n=54321,利用计 x n=9121041215()[,,,,]
DSP 实验课大作业实验报告 题目:在DSP 上实现线性调频信号的脉冲压缩,动目标显示和动目标检测 (一)实验目的: (1)了解线性调频信号的脉冲压缩、动目标显示和动目标检测的原理,及其DSP 实现的整个流程; (2)掌握C 语言与汇编语言混合编程的基本方法。 (3)使用MATLAB 进行性能仿真,并将DSP 的处理结果与MATLAB 的仿真结果进行比较。 (二)实验内容: 1. MATLAB 仿真 设定信号带宽为B= 62*10,脉宽-6=42.0*10τ,采样频率为62*10Fs =,脉冲重复周期为-4T=2.4*10,用MATLAB 产生16个脉冲的线性调频信号,每个脉冲包含三个目标,速度和距离如下表: 对回波信号进行脉冲压缩,MTI ,MTD 。并且将回波数据和频域脉压系数保存供DSP 使用。 2.DSP 实现 在Visual Dsp 中,经MATLAB 保存的回波数据和脉压系数进行脉压,MTI 和MTD 。 (三)实验原理 1.脉冲压缩原理 在雷达系统中,人们一直希望提高雷达的距离分辨力,而距离分辨力定义为:22c c R B τ?==。其中,τ表示脉冲时宽,B 表示脉冲带宽。从上式中我们可以看
出高的雷达分辨率要求时宽τ小,而要求带宽B大。但是时宽τ越小雷达的平均发射功率就会很小,这样就大大降低了雷达的作用距离。因此雷达作用距离和雷达分辨力这两个重要的指标变得矛盾起来。然而通过脉冲压缩技术就可以解决这个矛盾。脉冲压缩技术能够保持雷达拥有较高平均发射功率的同时获得良好的距离分辨力。 在本实验中,雷达发射波形采用线性调频脉冲信号(LFM),其中频率与时延成正比关系,因此我们就可以将信号通过一个滤波器,该滤波器满足频率与时延成反比关系。那么输入信号的低频分量就会得到一个较大的时延,而输入信号的高频分量就会得到一个较小的时延,中频分量就会按比例获得相应的时延,信号就被压缩成脉冲宽度为1/B的窄脉冲。 从以上原理我们可以看出,通过使用一个与输入信号时延频率特性规律相反的滤波器我们可以实现脉冲压缩,即该滤波器的相频特性与发射信号时共轭匹配的。所以说脉冲压缩滤波器就是一个匹配滤波器。从而我们可以在时域和频域两个方向进行脉冲压缩。 滤波器的输出() h n= y n为输入信号() x n与匹配滤波器的系统函数() *(1) y n x n s N n =--。转换到频域就是--卷积的结果:* ()()*(1) s N n =。因此我们可以将输入信号和系统函数分别转化到频域:Y k X k H k ()()( Y k,然后将结果再转化到时域, h n H k →,进行频域相乘得() ()() x t X k →,()() 就可以得到滤波器输出:()() →。我们可用FFT和IFFT来实现作用域的 Y k y n 转换。原理图如下: 图1.脉冲压缩原理框图 2.MTI原理 动目标显示(MTI)技术是用来抑制各种杂波,来实现检测或者显示运动目标的技术。利用它可以抑制固定目标的信号,显示运动目标的信号。以线性调频
DSP实验报告
软件实验 1无限冲激响应滤波器(IIR) 算法 一.实验目的 1 .掌握设计IIR 数字滤波器的原理和方法。 2 .熟悉IIR 数字滤波器特性。 3 .了解IIR 数字滤波器的设计方法。 二.实验设备 PC 兼容机一台,操作系统为Windows2000( 或Windows98 ,WindowsXP ,以下默认为Windows2000) ,安装Code Composer Studio 2.21 软件。 三.实验原理 1 .无限冲激响应数字滤波器的基础理论。 2 .模拟滤波器原理(巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器、贝塞尔滤波器)。 3 .数字滤波器系数的确定方法。 4 .根据要求设计低通IIR 滤波器: 要求:低通巴特沃斯滤波器在其通带边缘1kHz 处的增益为-3dB ,12kHz 处的阻带衰减为30dB ,采样频率25kHz 。设计: - 确定待求通带边缘频率fp1Hz 、待求阻带边缘频率fs1Hz 和待求阻带衰减-20log δsdB 。 模拟边缘频率为:fp1=1000Hz ,fs1=12000Hz 阻带边缘衰减为:-20log δs=30dB - 用Ω= 2πf/fs 把由Hz 表示的待求边缘频率转换成弧度表示的数字频率,得到Ωp1 和Ωs1 。 Ωp1=2 πfp1/fs=2 π1000/25000=0.08 π弧度 Ωs1=2 πfs1/fs=2 π12000/25000=0.96 π弧度 - 计算预扭曲模拟频率以避免双线性变换带来的失真。 由w=2fs tan( Ω/2) 求得wp1 和ws1 ,单位为弧度/ 秒。 wp1=2fs tan( Ωp1/2)=6316.5 弧度/ 秒 ws1=2fs tan( Ωs1/2)=794727.2 弧度/ 秒 - 由已给定的阻带衰减-20log δs 确定阻带边缘增益δs 。 因为-20log δs=30 ,所以log δs=-30/20 ,δs=0.03162
实验三 IIR 滤波器设计 一、实验目的: 1.认真复习滤波器幅度平方函数的特性,模拟低通滤波器的巴特沃思逼近、切比雪夫型逼近方法;复习从模拟低通到模拟高通、带通、带阻的频率变换法;从模拟滤波器到数字滤波器的脉冲响应不变法、双线性变换法的基本概念、基本理论和基本方法。 2掌握巴特沃思、切比雪夫模拟低通滤波器的设计方法;利用模拟域频率变换设计模拟高通、带通、带阻滤波器的方法.。 3.掌握利用脉冲响应不变法、双线性变换法设计数字滤波器的基本方法;能熟练设计巴特沃思、切比雪夫低通、带通、高通、带阻数字滤波器。 4.熟悉利用MATLAB 直接进行各类数字滤波器的设计方法。 二、实验内容 a. 设计模拟低通滤波器,通带截止频率为10KHz,阻带截止频率为16KHz,通带最大衰减1dB,阻带最小衰减20dB。 (1) 分别用巴特沃思、切比雪夫I、切比雪夫II 型、椭圆型滤波器分别进行设计,并绘制所设计滤波器的幅频和相频特性图。 (2) 在通带截止频率不变的情况下,分别用n=3,4,5,6 阶贝塞尔滤波器设计所需的低通滤波器,并绘制其相应的幅频响应和相频响应图。 %%%%%%%%%----巴特沃思-----%%%%%%% clc;clear all; omegap=10000*2*pi;omegas=16*10^3*2*pi; Rp=1;As=20; [N,omegac]=buttord(omegap,omegas,Rp,As,'s');%低通的节次 [b,a]=butter(N,omegac,'s'); [H,w]=freqs(b,a); %设计滤波器的幅频和相频特性图 subplot(211) plot(w/2*pi/1000,20*log10(abs(H)))
一、实验原理: 1、无限冲击响数字滤波器的基础理论; 2、模拟滤波器原理(巴特沃斯滤波器、切比雪夫滤波器、贝塞尔滤波器); 3、双线性变换的设计原理。 二、实验内容: 1、复习有关巴特沃斯滤波器设计和用双线性变换法设计IIR数字滤波器的知识; 2、阅读本实验所提供的样例子程序; 3、运行CCS软件,对样例程序进行跟踪,分析结果; 4、填写实验报告。 5、样例程序实验操作说明 1)正确完成计算机、DSP仿真器和实验箱连接后,开关K9拨到右边,即仿真器选择连接右边的CPU:CPU2; 2)“A/D转换单元”的拨码开关设置: JP3 3)检查:计算机、DSP仿真器、实验箱是否正确连接,系统上电; 4)置拨码开关S23的1、2拨到OFF,用示波器分别观测模拟信号源单元的2号孔“信号源1”和“信号源2”输出的模拟信号,分别调节信号波形选择、信号频率、信号输出幅值等旋钮,直至满意,置拨码开关S23的1到ON,两信号混频输出; 三、程序分析: cpu_init(); //CPU初始化 fs = 25000; //设置采样频率为2500HZ nlpass = 0.18; //设置通带上限频率归一化参数为0.18 nlstop = 0.29; //设置阻带下限截止频率归一化参数为0.29 biir2lpdes(fs,nlpass,nlstop,a,b); 根据双线性变换法求滤波器的系数a和b set_int(); //调用低通滤波器子程序对信号进行滤波 中断程序注释: interrupt void int1()
{ in_x[m] = port8002; //读取port8002端口的数值 in_x[m] &= 0x00FF; //取后八位送入X[m] m++; //每取一个数字m加1 intnum = m; if (intnum == Len) //当取到128个字节时,重新读取port8002端口的数值 { intnum = 0; xmean = 0.0; for (i=0; i 实验二 CCS使用操作:报告: 1.实验目的 (1) 熟悉CCS集成开发环境,掌握工程的生成方法。 (2) 掌握CCS集成开发环境的调试方法。 2.实验容及步骤 (1)查阅CCS发展历史,给出CCS发展的版本和适用的芯片。 Code Composer Studio 包含一整套用于开发和调试嵌入式应用的工具。它包含适用于每个TI 器件系列的编译器、源码编辑器、项目构建环境、调试器、描述器、仿真器以及多种其它功能。CCS IDE 提供了单个用户界面,可帮助您完成应用开发流程的每个步骤。借助于精密的高效工具,用户能够利用熟悉的工具和界面快速上手并将功能添加至他们的应用。 版本 4 之前的 CCS 均基于 Eclipse 开放源码软件框架。Eclipse 软件框架可用于多种不同的应用,但是它最初被开发为开放框架以用于创建开发工具。我们之所以选择让 CCS 基于Eclipse ,是因为它为构建软件开发环境提供了出色的软件框架,并且正成为众多嵌入式软件供应商采用的标准框架。CCS 将 Eclipse 软件框架的优点和仪器 (TI) 先进的嵌入式调试功能相结合,为嵌入式开发人员提供了一个引人注目、功能丰富的开发环境。 CCS 有 2 个版本:白金版和微处理器版。各版本支持的处理器不同。支持的核白金版:TMS320C6000、TMS320C5000、TMS320C2800、TMS470、TMS570、ARM 7、ARM9、ARM 11、ARM Cortex M3(不包含 Stellaris Cortex M3)、ARM Cortex R4、ARM Cortex A8 和 MSP430 处理器版:TMS320C2800 和MSP430 CCS 白金版和微处理器版都使用以下各项:主机:PC 操作系统:Microsoft Windows Vista 和 XP (2) 使用CCS时,经常遇到下述扩展名文件,说明分别是什么文件。 ①project. mak :即MAKE文件,VC4及以前版本使用的工程文件,用来指定如何建立一个工程, VC6把MAK文件转换成DSP文件来处理。 ②program. c :定义的变量、数组、函数的声明 ③program. asm :Oracle管理文件(OMF) ④filename. h :H C程序头文件 ⑤filename. lib :LIB 库文件 ⑥project. cmd :CMD Windows NT,OS/2的命令文件;DOS CD/M命令文件;dBASEⅡ程序文件 ⑦program. obj :OBJ 对象文件 ⑧program. Out: C语言输出文件 ⑨project. Wks :WKS Lotus 1-2-3电子表格;Microsoft Works文档 保存配置文件时产生的文件: ①programcfg.cmd 连接器命令文件 ②programcfg.h54 头文件 ③programcfg.s54 汇编源文件 DSP源文件的建立; 实验一:DSP软件集成开发环境CCS 一. 实验目的 1.了解DSP 软件开发集成环境Code Composer Studio (CCS) 的安装和配置过程; 2.熟悉并掌握CCS 的操作环境和基本功能,了解DSP软件开发的一般流程: (1) 学习创建工程和管理工程的方法; (2) 了解工程文件和映像文件的基本内容; (3) 了解基本的编译和调试功能; (4) 学习使用观察窗口。 二. 实验设备 计算机、Code Composer Studio 2.2 或以上版本 三. 背景知识 1.DSP 应用系统开发一般需要借助以下调试工具: ―软件集成开发环境(CCS):完成系统的软件开发,进行软件和硬件仿真调试; ―硬件开发及测试平台:实现系统的硬件仿真与调试,包括仿真器和评估模块。 https://www.wendangku.net/doc/1b13420593.html,S 集成了适用于所有TI 器件的源码编辑、编译链接、代码性能评估、调试仿真等功能,为 设计人员提供了一个完整的嵌入式系统软件开发环境。 3.系统软件部分可以通过CCS 建立的工程文件进行管理,工程文件一般包含以下几种文件: ―源程序文件:C 语言或汇编语言文件(*.ASM 或*.C) ―头文件(*.H) ―命令文件(*.CMD) ―库文件(*.LIB, *.OBJ) 四. 实验步骤 1. 创建工程文件 双击 CCStudio 图标,启动 CCS ,CCS 的初始界面包括工程管理区和工作区两部分。 在菜单中选择“Project —>New…”,弹出“Project Create ”窗口: 在“Project ”编辑框内填入项目名称,例如“hello1”;有必要的话,可以更改项目文件夹位置 (Location);“Project ”下拉框用以确定输出文件类型;目标硬件类型在“Target ”下拉框中指定。 点击“完成”后,CCS 自动在指定目录下生成“hello1.pjt ”工程文件。工程文件中保存了对应工程的设置信息和内部文件的引用情况。展开工程管理窗口“Projects ”下的“hello1.pjt ”,可以看到所有项目均为空。 任务 1:在 notepad 中打开“hello1.pjt ”,了解并记录工程文件提供的设置信息 若标题栏显示xxxx Emulator, 则需要先运行 Setup CCS, 选择合适的软件仿真环境 北京邮电大学DSP硬件实验报告 学院: 电子工程学院 专业: 姓名: 学号: 班级: 实验一常用指令实验 一、实验目的 熟悉DSP开发系统的连接 了解DSP开发系统的组成和结构和应用系统构成 熟悉常用C54X系列指令的用法(程序寻址,寄存器,I/O口,定时器,中断控制)。 二、实验步骤与内容 (一)简单指令程序运行实验 源程序: ;File Name:exp01.asm ;the program is compiled at no autoinitialization mode --程序在非自动初始化模式下编译 .mmregs --(enter memory-mapped registers into the symbol table) --进入记忆映射注册进入符号表 .global _main --(identify one or more global(external)symbols)--定义一个或多个全局变量 _main: stm(累加器的低端存放到存储器映射寄存器中) #3000h,sp(堆栈指针寄存器);堆栈指针的首地址设为#3000h ssbx(状态寄存器位置位)xf ;状态寄存器位置位,灯亮 call (非条件调用,可选择延迟)delay(存储器延时) ;调用delay函数延时 rsbx(状态寄存器复位)xf ;状态寄存器位复位,灯灭 call delay ;调用delay函数延时 b (累加器)_main ;可选择延迟的无条件转移,循环执行 nop(无操作) nop ;delay .5 second delay: ;延迟0.5秒 stm 270fh,ar3 (辅助寄存器3) ;把地址存放到存储器映射寄存器中 loop1: stm 0f9h,ar4 (辅助寄存器4);把地址存放到存储器映射寄存器中 loop2: banz loop2,*ar4- ;AR4不为0时转移,指针地址减一 实验一 离散系统的时域分析 一、实验目的 1、掌握离散时间信号的MATLAB 表示; 2、信号运算; 3、差分方程的求解; 4、离散时间信号的卷积运算。 二、实验原理 1、离散时间信号 离散时间信号只在某些离散的瞬时给出函数值,而在其他时刻无定义。它是时间上不连续按一定先后次序排列的一组数的集合,称为时间序列,用x(n)表示,n 取整数代表时间的离散时刻。 在matlab 中用向量来表示一个有限长度的序列。 2、序列的类型 为了分析的方便,在数字信号处理中规定了一些基本的序列。 a) 单位采样序列 function [x,n]=impseq(n1,n2,n0) n=[n1:n2]; x=[(n-n0)==0]; 调用该函数 [x,n]=impseq(-2,8,2); stem(n,x) 0010()001()0n n n n n n n n n δδ =?=? ≠? =?-? ≠? 单位采样序列的另一种生成方法 n0=-2; n=[-10:10]; nc=length(n); x=zeros(1,nc); for i=1:nc if n(i)==n0 x(i)=1 end end stem(n,x) b) 单位阶跃序列 function [x,n]=stepseq(n1,n2,n0) n=[n1:n2]; x=[(n-n0)>=0]; 调用该函数 [x,n]=stepseq(-2,8,2); stem(n,x) 000 10()001()0n n n n n n n n n εε >=?=? >=?-? c) 实数指数序列 x(n)=an (运算符“.^”) n=[0:10]; x=0.9.^n; stem(n,x) d) 复数指数序列 n=[-10:10]; alpha=-0.1+0.3*j; x=exp(alpha*n); real_x=real(x); image_x=imag(x); mag_x=abs(x); phase_x=angle(x); subplot(2,2,1); stem(n,real_x) subplot(2,2,2); stem(n,image_x) subplot(2,2,3); stem(n,mag_x) subplot(2,2,4); stem(n,phase_x) ()()j n x n e αω+=(0.1j0.3)n x(n)e (10n 10) -+= -<< 东南大学自动化学院 实验报告 课程名称: D SP 原理及C 程序开发 第二次实验 实验名称:基于DSP 系统的实验——指示灯、拨码开关和定时器院(系):自动化专业:自动化 姓名:学号: 实验室:实验组别: 同组人员:实验时间:2012 年 4 月 18日 评定成绩:审阅教师: 第一部分实验:基于DSP 系统的实验——指示灯和拨码开关 一.实验目的 1. 了解ICETEK –F28335-A 评估板在TMS320F28335DSP 外部扩展存储空间上的扩展。 2. 了解ICETEK –F28335-A 评估板上指示灯和拨码开关扩展原理。 3. 学习在C 语言中使用扩展的控制寄存器的方法。 二.实验设备 计算机,ICETEK –F28335-A 实验箱(或ICETEK 仿真器+ICETEK–F28335-A 评估板+相关连线及电源)。 三.实验原理 1.TMS320F28335DSP 的存储器扩展接口 存储器扩展接口是DSP 扩展片外资源的主要接口,它提供了一组控制信号和地址、数据线,可以扩展各类存储器和存储器、寄存器映射的外设。 -ICETEK –F28335-A 评估板在扩展接口上除了扩展了片外SRAM 外,还扩展了指示灯、DIP 开关和D/A 设备。具体扩展地址如下: 0x180004- 0x180005:D/A 转换控制寄存器 0x180001:板上DIP 开关控制寄存器 0x180000:板上指示灯控制寄存器 -与ICETEK –F28335-A 评估板连接的ICETEK-CTR 显示控制模块也使用扩展空间控制主要设备: 208000-208004h :读-键盘扫描值,写-液晶控制寄存器 208002-208002h :液晶辅助控制寄存器 208003-208004h :液晶显示数据寄存器 2.指示灯与拨码开关扩展原理 北京邮电大学 实 学班姓学 日 验报告 MATLAB 实现线性卷积运算院:信息与通信工程学院级:名: ______ 号: 期: 实验名称:用 索引 一、实验原 理 ..................................................................................................................... 3 1、算法产生背景 (3) 2、算法基本思 想 ...........................................................................................................................3 1)重叠相加法 (3) 2)重叠保留 法 ...........................................................................................................................4 二、流程图设计 . ................................................................................................................. 5 1、重叠相加 法 . .............................................................................................................................. 5 2、重叠保留 法 . (6) 三、MATLAB 源代 码 . ........................................................................................................... 7 1、重叠相加源码 ...........................................................................................................................7 2、重叠保留源 码 ...........................................................................................................................8 四、实验结果与分析 ........................................................................................................... 9 ①调用CONV (计 算 . ......................................................................................................................... 9 ②测试重叠相加算法 (9) ③测试重叠保留算 法 .....................................................................................................................9 五、讨论与总结 . ............................................................................................................... 10 1、算法效率分 析: .....................................................................................................................10 A. 重叠相加法 . (10)DSP实验报告二CCS的使用
DSP实验指导书(DSP处理器原理与应用)
DSP硬件实验报告北邮
DSP实验报告
DSP技术及课程设计实验报告二(精)
DSP实验报告重叠保留法和重叠相加法(精)