DSP实验二
dsp原理与应用实验报告总结
dsp原理与应用实验报告总结DSP(Digital Signal Processing)数字信号处理是利用数字技术对信号进行处理和分析的一种方法。
在本次实验中,我们探索了DSP的原理和应用,并进行了一系列实验以验证其在实际应用中的效果。
以下是对实验结果的总结与分析。
实验一:数字滤波器设计与性能测试在本实验中,我们设计了数字滤波器,并通过性能测试来评估其滤波效果。
通过对不同类型的滤波器进行设计和实现,我们了解到数字滤波器在信号处理中的重要性和应用。
实验二:数字信号调制与解调本实验旨在通过数字信号调制与解调的过程,了解数字信号的传输原理与方法。
通过模拟调制与解调过程,我们成功实现了数字信号的传输与还原,验证了调制与解调的可行性。
实验三:数字信号的傅里叶变换与频谱分析傅里叶变换是一种重要的信号分析方法,可以将信号从时域转换到频域,揭示信号的频谱特性。
本实验中,我们学习了傅里叶变换的原理,并通过实验掌握了频谱分析的方法与技巧。
实验四:数字信号的陷波滤波与去噪处理陷波滤波是一种常用的去除特定频率噪声的方法,本实验中我们学习了数字信号的陷波滤波原理,并通过实验验证了其在去噪处理中的有效性。
实验五:DSP在音频处理中的应用音频处理是DSP的一个重要应用领域,本实验中我们探索了DSP在音频处理中的应用。
通过实验,我们成功实现了音频信号的降噪、均衡和混响处理,并对其效果进行了评估。
实验六:DSP在图像处理中的应用图像处理是另一个重要的DSP应用领域,本实验中我们了解了DSP在图像处理中的一些基本原理和方法。
通过实验,我们实现了图像的滤波、边缘检测和图像增强等处理,并观察到了不同算法对图像质量的影响。
通过以上一系列实验,我们深入了解了DSP的原理与应用,并对不同领域下的信号处理方法有了更深刻的认识。
本次实验不仅加深了我们对数字信号处理的理解,也为日后在相关领域的研究与实践提供了基础。
通过实验的结果和总结,我们可以得出结论:DSP作为一种数字信号处理的方法,具有广泛的应用前景和重要的实际意义。
dsp实验2:Code Composer Studio 入门
苏州职业大学实训报告
图2.2创建工程文件
选择菜单“Project”的“Rebuild All”项,或单击工具条中的按钮;注意编
图 2.4修改工程文件
通过以上设置操作,重新编译后,程序中的用户堆栈的尺寸被设置成 1024 个字。
6.基本调试功能
(1)下载程序:执行File Load Program ,在随后打开的对话框中选择刚刚建立的
C:\ICETEK\F2812\DSP281x_examples\Lab0101-UseCCS\Debug\volume.out 文件。
设置软件调试断点:在项目浏览窗口中,双击volume.c 激活这个文件,移动光标到
图 2.6设置图形显示功能
-在弹出的图形窗口中单击鼠标右键,选择“Clear Display”。
-按Alt+F5 运行程序.观察input 窗口的内容。
10.选择菜单File→workspace→save workspacs As…,输入文件名11.退出CCS 。
五.实验结果:
通过对工程文件“volume”的编译、执行后得到结果的图形显示如下:。
DSP实验二 拨码开关实验
《DSP技术》课程实验报告学生姓名:所在班级:指导教师:记分及评价:项目满分5分得分一、实验名称拨码开关实验二、实验目的1.了解DSP开发系统的组成和结构2.了解IO的基本编程方法三、实验内容1. 2812CPU板的JUMP1的1和2脚短接,拨码开关SW1的第二位置ON。
2.E300板上的开关SW4的第二位置ON,其余OFF;SW5开关全部置ON;其余开关全部置OFF。
3.运行Code Composer Studio (CCS)(CCS3.3需要“DEBUG→Connect”)4. 用“Project\open”打开系统项目文件路径为“c:\DSP_examep\DSP281X_examples\e300_02_switch\Example_281x_switch.pjt”双击该文件5、输入主要程序。
6、编译程序并装载。
7.单击“Debug-GoMain”跳到主程序的开始;8. 单击“Debug\RUN”运行程序。
需要判断是高电平亮,还是低电平亮,可以使用中断调试。
在运行状态,在需要设置断点的位置的右边,双击,就可以产生红点。
表明设置了断点。
在view目录下,(如右边图所示:)打开watch window,(此项是用来检查和编辑变量或C表达式可以不同格式显示变量值,还可以显示数值、结构或指针等包含多个元素的变量),在本实验中观察temp变量的变化。
步骤:在debug目录下点run,在断点处,程序会停下来,可以观察temp变量的值。
(也可按“F10”单步运行程序,观察temp变量的值。
)9. 任意拨动E300底板上的拨动开关,观察LED和拨动开关的对应情况。
(LED1-LED7分别对应DSP数据总线的D0-D7)10.单击“Debug \ Halt”暂停持续运行,开关将对灯失去控制.11.关闭所有窗口,本实验完毕.四、实验程序与结果分析实验程序:#include "DSP281x_Device.h" // DSP281x Headerfile Include File#include "DSP281x_Examples.h" // DSP281x Examples Include Filevoid main(void){unsigned int temp;temp = 0;DINT;InitSysCtrl();InitPieCtrl();IER = 0x0000;IFR = 0x0000;InitPieVectTable();for(;;){asm(" nop ");temp = *(int *)0x2200&0x00ff;if(temp!=0x80){temp=(temp<<1)&0x00ff;asm(" nop ");* (int *)0x2200 = temp;}else * (int *)0x2200 =0x01;asm(" nop ");}}结果分析:多次拨动E300底板上的拨码开关,观察LED亮灭后,我们发现拨动开关的对LED1-LED7分别对应DSP数据总线的D0-D7,并且LED低电平时导通。
DSP实验报告_6
实验一: 闪灯实验熟悉DSP 软硬件测试系统实验目的1.了解SHARC 系列高性能数字信号处理器的程序开发过程和编程语言;2.熟悉集成开发工具VisualDSP++, 学会使用VisualDSP++进行SHARC 系列ADSP 的程序开发、编译与调试;3.掌握SHARC 系列ADSP 的程序加载设计和加载过程。
实验内容利用波形产生信号板, 结合FPGA 编程技术和程序编程器, 编写测试ADSP21065L 和FPGA 之间硬件连接的应用程序, 同时完成应用程序的加载和脱机操作, 在信号指示灯“HL2”上产生可调周期的脉冲信号, “点亮”与“熄灭”指示灯HL2。
实验要求通过DSP 编程, 在其FLAG11引脚上模拟如下波形的周期信号:要求:(1) 500H T ms >,500L T ms >. (2) 并用示波器查看波形, 测量信号周期。
实验步骤1. 熟悉电路图, 清楚波形产生电路板ADSP21065L 与可编程FPGA 器件之间的连接关系;2. 编写FPGA 程序。
在FPGA 内部将ADSP21065L 的标志引脚FLAG11(引脚号26)设置为输出, 作为FPGA 的输入信号, 在FPGA 内部编程将该信号直接输出在发FPGA 的37引脚号上, 设置37引脚为输出信号, 驱动板上的HL2 LED 指示灯;3. 启动VisualDsp++4.5,选择project 工程选项菜单, 创建一个名称为Test.dpj 的工程文件, 选择处理器的型号为ADSP-21065L ;4.弹出一个对话框, 选择是否需要加入VDSP kernel ,选择“NO ”;5. 在工程中加入以下参考源文件:\exp1\test(boot)\ boot1.asm 和boot1.ldf 6.编译, 链接调试, 生成可执行文件。
7.运行程序, 可以看到波形发生电路板上的指示灯“HL2”不断闪动。
8. 利用示波器观测系统时钟,并测量产生信号的波形和周期。
DSP实验报告最终版
SDRAM_init();
InitCTR();
PLL_Init(20);
SDRAM_init();
InitCTR();
//直流电机
//unsigned char dbScanCode,dbOld;
//unsigned char dbOld;
dbScanCode=dbOld=0;
在PWM调速时,占空比a是一个重要参数。以下三种方法都可以改变占空比的值:
(1)定宽调频法:这种方法是保持t1不变,只改变t2,这样使周期T(或频率)也随之改变。
(2)调宽调频法:这种方法是保持t2不变,只改变t1,这样使周期T(或频率)也随之改变。
(3)定频调宽法:这种方法是使周期T(或频率)保持不变。而改变t1和变t2。
2)设置CCS软件,点击debug—connect将试验箱和CCS软件连接。
3)右键单击project添加本实验程序,编译,将对应文件夹的*.out文件下载,点击debug-run运行程序。
·按键盘“1”键,进入直流电机程序,按键盘“3-6”键可以改变直流电机转速,按“7”或“8”键改变电机旋转方向。
键盘的扫描码由DSP得CTRKEY给出,当有键盘输入时,读此端口得到扫描码,当无键按下时,读此端口的结果为0。CTRCLKEY。读取的方法如下:
nScanCode=CTRKEY;nnn=CTRCLKEY;//nScanCode中为扫描码
对于高速运行的DSP,在两次读键盘之间可能需要增加延时语句。键盘连接原理如下:
ioport unsigned int *prsc0;
int nCursorCount;
void InitInterrupt();
void InitMcBSP();
DSP实验指导书输入输出
7).程序单步执行
按F8,就可观察到程序单步运行的状态,并可观察D2的发光情况。
8).程序全速运行
按F5,就可观察到程序在全速运行状态下,D2的发光情况。并用示波器观察I/O管脚的波形。如果D2的闪烁不明显,可修改延时子程序。
GEL_MapAdd(0x1000,1,0xF000,1,1);/* External SRAM */
}
menuitem "F2407 DEBUGGER";
hotmenu flash_disable()
{
*(int *)SCSR2 = MP;
}
hotmenu flash_enable()
{
*(int *)SCSR2 = MC;
delay(1000);/* 延时子程序 */
delay(1000);/* 延时子程序 */
asm(" clrcxf");
*PADATDIR=*PADATDIR&0x0FF00;// IOPA端口设置为输出方式
*PBDATDIR=*PBDATDIR&0x0FF00;
*PCDATDIR=*PCDATDIR&0x0FF00;
}
SECTIONS
{
.vectors:>VECS PAGE 0
.text:>FLASH PAGE 0
.cinit :>FLASH PAGE 0
.data :>FLASH PAGE 0
.stack :>B0 PAGE 1
DSP原理及应用实验二---堆栈的使用方法
• 1、实验要求: 用软件仿真的方法编译并调试幻灯 片第3页的实验参考程序,在存储器 中观察正确结果。
• 2、实验步骤
请认真倾听教师讲解的要点,也可参阅附 件1及附件2,结合思考题完成实验。写实验 报告时自行写出实验步骤。 操作步骤要点: (1)新建项目/新建文件/添加文件到项目/编 辑文件; (2)点“rebuild all”工具进行编译、汇编和 链接; (3)装载上一步生成的out文件; (4)运行后点“view/memory”观察运行结果。
• 3、实验程序——堆栈的使用方法
(1)汇编主程序文件
(3)链接命令文件
(2)中断向量表文件
• 4、实验思考题:
(1)修改主程序,实现堆栈区100个单元全 部数据变为“DEAD”。 (2)通过单步调试,观察SP和寄存器内容的 变化,简述堆栈的特点? (3) 重新编写主程序,用其它指令。
DSP实验报告
装订线实验报告课程名称:微机原理及其应用指导老师:徐习东成绩:实验名称:实验一二三综合实验报告实验类型:同组学生姓名:一、实验目的和要求(必填)二、实验内容和原理(必填)三、主要仪器设备(必填)四、操作方法和实验步骤五、实验数据记录和处理六、实验结果与分析(必填)七、讨论、心得一、实验目的和要求1、了解DSP的基本原理和实验过程。
完成实验一、二、三。
完成4段程序的运行过程。
2、了解DSP的编程方法,学习TI资源文件的使用方法,3、认识中断、GPIO、定时器等的编程使用方法。
二、实验内容和原理实验一LED绿灯的控制:共阳极发光二极管原理图如下图1 发光二极管原理图通过GPIO控制发光二极管DS20~DS25的亮灭。
当GPIOFx=0时,对应的发光二极管被点亮。
GPIO端口:GPIOF13~GPIOF8实验二实验名称:DSP实验综合报告姓名:学号:装订线利用CPU定时器和中断实现点亮了4盏规定的绿灯,同时控制灯分别以1s,100ms,10ms,1ms为周期交替亮灭。
通过设置CPU定时器,使1ms产生1个中断输出,再通过循环计数控制当分别产生1ms、10ms、100ms、1s的时间间隔进入中断,控制相应LED亮灭。
实验三分别用两种TI资源的方法编程,实现控制绿灯和红灯的要求。
方法一是仅仅使用TI规定的变量编程,方法二是使用TI资源的内置文件,初始化文件和.c文件等中的自带函数。
把6盏绿灯及16盏红灯有规律地控制点亮。
红灯的控制:LED接口如图:1、一端接电源高电平红灯的控制:2、一端接锁存器的输出;3、由两个锁存器控制16盏灯;两个锁存器:1、输入数据为实验名称:DSP实验综合报告姓名:学号:装订线GPIOB8 ~GPIOB15;2、锁存信号由GPIOE0 ~GPIOE2 控制;点灯控制:1、先确定第几组,第几盏;2、GPIOE输出组号,GPIOB输出位号;3、延时,GPIOE输出锁存信号三、主要仪器设备TMS实验板、PC机、程序烧写器四、操作方法和实验步骤1、实验一(1)学习DSP的相关内部元件的使用方法。
dsp实验报告
dsp实验报告实验一:CCS入门实验实验目的:1. 熟悉CCS集成开发环境,掌握工程的生成方法;熟悉SEED-DEC643实验环境; 掌握CCS集成开发环境的调试方法。
2.学习用标准C 语言编写程序;了解TI CCS开发平台下的C 语言程序设计方法和步骤; 熟悉使用软件仿真方式调试程序。
3. 学习用汇编语言编写程序; 了解汇编语言与 C 语言程序的区别和在设置上的不同;了解TMS320C6000 汇编语言程序结果和一些简单的汇编语句用法学习在CCS 环境中调试汇编代码。
4. 在了解纯C 语言程序工程和汇编语言程序工程结构的基础上,学习在C 工程中加入汇编编程的混合编程方法; 了解混合编程的注意事项;理解混合编程的必要性和在什么情况下要采用混合编程5. 熟悉CCS集成开发环境,掌握工程的生成方法; 熟悉SEED-DEC643实验环境;掌握CCS集成开发环境的调试方法。
实验原理:CCS 提供了配置、建立、调试、跟踪和分析程序的工具,它便于实时、嵌入式信号处理程序的编制和测试,它能够加速开发进程,提高工作效率。
CCS 提供了基本的代码生成工具,它们具有一系列的调试、分析能力序。
使用此命令后,要重新装载.out 文件后,再执行程序。
使用 CCS常遇见文件简介1. program.c: C 程序源文件;2. program.asm: 汇编程序源文件;3. filename.h: C 程序的头文件,包含DSP/BIOS API模块的头文件;4. filename.lib: 库文件;5. project.cmd: 连接命令文件;6. program.obj: 由源文件编译或汇编而得的目标文件;7. program.out: 经完整的编译、汇编以及连接后生成可执行文件; 8. program.map: 经完整的编译、汇编以及连接后生成空间分配文件; 9.project.wks: 存储环境设置信息的工作区文件。
P.S(CMD文件中常用的程序段名与含义1. .cinit 存放C程序中的变量初值和常量;2. .const 存放C程序中的字符常量、浮点常量和用const声明的常量;3. .text 存放C程序的代码;4. .bss 为C 程序中的全局和静态变量保留存储空间;5. .far 为C 程序中用far声明的全局和静态变量保留空间;6. .stack 为 C 程序系统堆栈保留存储空间,用于保存返回地址、函数间的参数传递、存储局部变量和保存中间结果;7. .sysmem 用于 C 程序中malloc、calloc 和 realloc 函数动态分配存储空间。
dsp实验报告
dsp实验报告DSP实验报告一、引言数字信号处理(Digital Signal Processing,DSP)是一种对数字信号进行处理和分析的技术。
它在许多领域中被广泛应用,如通信、音频处理、图像处理等。
本实验旨在通过实际操作,探索和理解DSP的基本原理和应用。
二、实验目的1. 理解数字信号处理的基本概念和原理;2. 掌握DSP实验平台的使用方法;3. 进行一系列DSP实验,加深对DSP技术的理解。
三、实验器材和软件1. DSP开发板;2. 电脑;3. DSP开发软件。
四、实验内容1. 实验一:信号采集与重构在此实验中,我们将通过DSP开发板采集模拟信号,并将其转换为数字信号进行处理。
首先,我们需要连接信号源和开发板,然后设置采样频率和采样时间。
接下来,我们将对采集到的信号进行重构,还原出原始模拟信号,并进行观察和分析。
2. 实验二:滤波器设计与实现滤波器是DSP中常用的模块,用于去除或增强信号中的特定频率成分。
在此实验中,我们将学习滤波器的设计和实现方法。
首先,我们将选择合适的滤波器类型和参数,然后使用DSP开发软件进行滤波器设计。
最后,我们将将设计好的滤波器加载到DSP开发板上,并进行实时滤波处理。
3. 实验三:频谱分析与频域处理频谱分析是DSP中常用的方法,用于分析信号的频率成分和能量分布。
在此实验中,我们将学习频谱分析的基本原理和方法,并进行实际操作。
我们将采集一个包含多个频率成分的信号,并使用FFT算法进行频谱分析。
然后,我们将对频谱进行处理,如频率选择、频率域滤波等,并观察处理后的效果。
4. 实验四:音频处理与效果实现音频处理是DSP中的重要应用之一。
在此实验中,我们将学习音频信号的处理方法,并实现一些常见的音频效果。
例如,均衡器、混响、合唱等。
我们将使用DSP开发软件进行算法设计,并将设计好的算法加载到DSP开发板上进行实时处理。
五、实验结果与分析通过以上实验,我们成功完成了信号采集与重构、滤波器设计与实现、频谱分析与频域处理以及音频处理与效果实现等一系列实验。
DSP实验二拨码开关实验
实验二拨码开关实验—、实验目的二、实验设备运算机,版本软件,DSP仿真器,E300实验箱,2812CPU板。
三、实验原理8位的数字量输入(由拨码开关产生),当拨码打到靠近LED时为低。
相反为高。
通过74LS244(可读)缓冲连接到DSP的数据总线的低8位。
CPU通过读指令读取到拨码开关产生的8位输出的数字量,然后CPU通过写指令把读出的8位数字量写入(0x2200)单元内,使连接到DSP的数据总线的低8位的74LS273的输出端产生高低信号,现在LED灯产生亮灭。
当对应LED灯点亮时说明输出为低,熄灭时为高。
(器件74LS244和74LS273详细的介绍请参看数据手册)数字量输入输出单元的资源分派如下:基地址:2000h(当CS1为0时分派有效)数字量分派空间为数据空间地址:基地址+0x2200(低8位,只读)拨码开关扩展工作原理说明:74LS244片选号、74LS273片选信号和74LS273复位信号由E300上CPLD译码产生。
本实验利用DSP数据总线的低8位。
实验任务一:一、编写程序完成将拨码开关的信息读入DSP,然后再将该信息回写,操纵led灯。
调整"数字输入输出单元"的开关K1~K8,观看LED1~LED8灯亮灭的转变。
2、本实验的程序流程框图如下:3、输入要紧程序#include "" 2812CPU板的JUMP1的1和2脚短接,拨码开关SW1的第二位置ON。
2.E300板上的开关SW4的第二位置ON,其余OFF;SW5开关全数置ON;其余开关全数置OFF。
3.运行Code Composer Studio (CCS)(需要“DEBUG→Connect”)4. 用“Project\open”打开系统项目文件途径为“c:\DSP_examep\DSP281X_examples\e300_02_switch\”双击该文件5、输入要紧程序。
六、编译程序并装载。
DSP实验报告2-数字信号处理
23 系 2012 级 丛松宇 PB12210075
3. clear; n=1:8; for i=1:4 x(i)=i; end for i=5:8 x(i)=9-i; end close all; subplot(2,4,1); stem(x);grid on; title('8 点三角波序列'); subplot(2,4,2); stem(abs(fft(x,8)));grid on; n=1:16; for i=9:16 x(i)=0; end subplot(2,4,3); stem(x);grid on; title('16 点三角波序列'); subplot(2,4,4); stem(abs(fft(x,16)));grid on; n=1:8; for i=1:4 x(i)=5-i; end
23 系 2012 级 丛松宇 PB12210075
1.② n=0:15; q=8;p=8; x=exp(-1*(n-p).^2/q); close all; subplot(3,2,1); stem(x),grid on title('q=8,p=8 的时域特性'); subplot(3,2,2); stem(abs(fft(x))),grid on;title('频域特性'); q=8;p=13; x=exp(-1*(n-p).^2/q); subplot(3,2,3); stem(x),grid on title('q=8,p=13 的时域特性'); subplot(3,2,4); stem(abs(fft(x))),grid on;title('频域特性'); q=8;p=14; x=exp(-1*(n-p).^2/q); subplot(3,2,5); stem(x),grid on title('q=8,p=14 的时域特性'); subplot(3,2,6); stem(abs(fft(x))),grid on;title('频域特性');
硕士信号处理实验报告(3篇)
第1篇一、实验背景随着信息技术的飞速发展,数字信号处理(DSP)技术已成为通信、图像处理、语音识别等领域的重要工具。
本实验旨在通过一系列实验,加深对数字信号处理基本原理和方法的理解,提高实际应用能力。
二、实验目的1. 理解数字信号处理的基本概念和原理。
2. 掌握常用信号处理算法的MATLAB实现。
3. 培养分析和解决实际问题的能力。
三、实验内容本实验共分为五个部分,具体如下:1. 离散时间信号的基本操作(1)实验目的:熟悉离散时间信号的基本操作,如加法、减法、乘法、除法、延时、翻转等。
(2)实验步骤:- 使用MATLAB生成两个离散时间信号。
- 对信号进行基本操作,如加法、减法、乘法、除法、延时、翻转等。
- 观察并分析操作结果。
2. 离散时间系统的时域分析(1)实验目的:掌握离散时间系统的时域分析方法,如单位脉冲响应、零状态响应、零输入响应等。
(2)实验步骤:- 使用MATLAB设计一个离散时间系统。
- 计算系统的单位脉冲响应、零状态响应和零输入响应。
- 分析系统特性。
(1)实验目的:掌握离散时间信号的频域分析方法,如快速傅里叶变换(FFT)、离散傅里叶变换(DFT)等。
(2)实验步骤:- 使用MATLAB生成一个离散时间信号。
- 对信号进行FFT和DFT变换。
- 分析信号频谱。
4. 数字滤波器的设计与实现(1)实验目的:掌握数字滤波器的设计与实现方法,如巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器等。
(2)实验步骤:- 使用MATLAB设计一个低通滤波器。
- 使用窗函数法实现滤波器。
- 对滤波器进行性能分析。
5. 信号处理在实际应用中的案例分析(1)实验目的:了解信号处理在实际应用中的案例分析,如语音信号处理、图像处理等。
(2)实验步骤:- 选择一个信号处理应用案例。
- 分析案例中使用的信号处理方法。
- 总结案例中的经验和教训。
四、实验结果与分析1. 离散时间信号的基本操作实验结果表明,离散时间信号的基本操作简单易懂,通过MATLAB可以实现各种操作,方便快捷。
DSP实验
脉宽调制(PWM)基本原理:控制方式就是对逆变电路开关器件 的通断进行控制,使输出端得到一系列幅值相等的脉冲,用这些 脉冲来代替所需要的方波。 DSP开发板的晶振是30MHz,系统会先进行5倍的倍频,产生 150MHz的系统时钟。由于后面需要进行A/D采样,所以在这 里我们首先要降低系统时钟频率。
Ap=1; As=40; [n,wc]=buttord(wp,ws,ap,as); [b,a]=butter(N,WC); 计算出的N为滤波器阶数 在CCS工程中 #define IIRNUMBER N+1 与 fAn[IIRNUMBER]
计算出的b,a为滤波器分子分母 代入CCS工程的 数组fBn[IIRNU、确定基波和高次谐波 对周期信号进行傅立叶分析,第一项是直流,第二项就是基波了。以 后那些称为谐波。 AD采样可得到,输入信号为1KHz方波,基波为1KHz,高次谐波为 2KHz
2、设计一个4阶Butterworth低通滤波器 使用MATLAB软件,
Wp=0.125;
Ws=0.25;
第一次实验结果(实验条件:N=4) AD采样后得到时域波形
滤波后的时域图
频域
滤波后
第二次实验(实验条件N=10) 时域
频域
第三次实验 (实验条件N=11) 时域
频域
PWM—脉冲宽度调制(Pulse Width Modulation),是一种周期 一定而高低电平可调的方波信号。当输出脉冲的频率一定时,输 出脉冲的占空比越大,相对应的输出有效电压越大。
实验3:AD采样
A/D转换器是用来通过一定的电路将模拟量转变为数字量。 采用逐次逼近法的A/D转换器是由一个比较器、D/A转换器、缓冲寄存器及控 制逻辑电路组成,如图所示。基本原理是从高位到低位逐位试探比较。逐次逼 近法转换过程是:初始化时将逐次逼近寄寄存器各位清零;转换开始时,先将 逐次逼近寄存器最高位置1,送入D/A转换器,经D/A转换后生成的模拟量送入 比较器,称为 Vo,与送入比较器的待转换的模拟量Vi进行比较,若Vo<Vi,该 位1被保留,否则被清除。然后再 置逐次逼近寄存器次高位为1,将 寄存器中新的数字量送D/A转换器, 输出的 Vo再与Vi比较,若Vo<Vi, 该位1被保留,否则被清除。重复 此过程,直至逼近寄存器最低位。 转换结束后,将逐次逼近寄存器中 的数字量送入缓冲寄存器,得到数 字量的输出。逐次逼近的操作过程 是在一个控制电路的控制下进行的。
DSP实验报告_百度文库(精)
实验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课程的实用性和趣味性。
实验二基本算数运算2.1 实验目的和要求加、减、乘、除是数字信号处理中最基本的算术运算。
DSP原理与应用实验2DSP 数据存取实验
课程名称DSP原理与应用
实验序号实验2
实验项目DSP 数据存取实验实验地点
实验学时实验类型
指导教师实验员
专业班级
学号姓名
年月日
1、装载程序memory.out,进行调试。
运行到main 函数入口:
2、修改程序区的存储单元:
修改前:
此时入口地址为10801200,数据地址为01BCD4F6
修改中:
注意:修改前面的入口地址之后,一定要重新设置数据存储地址修改后:
当前语句被改成了“NOP”。
将地址0x10801200 上的数据改回0x01BCD4F6,程序又恢
复成原样。
3、断点调试:
(1)、运行到第一个断点:
我们可以memory 窗口中从0x80000080 开始的16 个单元的值被写入0x00000000 到0x0000000。
(2)、运行到第二个断点:
我们可观察到memory 窗口中从0x80000100 开始分16 个单元中的值被均被写入0x00001234。
(3)、运行到第三个断点:
我们可以观察到0x80000080 开始的16 个单元的值复制到以0x80000100 开始的16 个单元,数据发送了变化,因此数据颜色变为红色。
dsp实验报告 2
DSP图像处理实验报告组员:张海星通信1107班陈淑菁通信1103班手势识别1.题目分析不同的手势出现在屏幕上会显示手势的名字,找出不同手势在屏幕上显示的特点,用这个特点来区分出手势的名称,同时将名称显示在屏幕的左下角。
2.步骤:(1)找特征:用运肤色检测的程序调试出来的显示屏幕上图像的特征我们发现肤色的面积大小会随着不同手势透出的皮肤面积的大小而变化,因此我们利用面积的大小来判断不同的手势,并将其名称显示在屏幕的左下角。
(2)采集图像:我们组用石头和剪刀两个手势。
首先用loop2的显示采集两个手势的图像。
在save data 中保存图像的数据,从程序中找到图像的首地址,保存数据的首地址为:OX80000000,图像的大小设置为720*288/4。
然后利用matlab程序读图像并计算框的面积大小的值。
读图程序:% dat文件是由CCS保存的数据文件% dat文件中每个像素用8bit表示,% 0x245A3654表示第一个像素的值为0x54;第二个像素的值为0x36% 第三个像素的值为0x5A;第四个像素的值为0x24% 本例以图像大小为640*240,请根据你的实际做修改% 在使用本程序前请手动删除dat文件的第一行clc;clear all;close all;imagedata=zeros(720,288);% ------------------------------- 低温---------------------------------------I = importdata('C:\Documents and Settings\Administrator\桌面\s1.dat');[M,N] = size(I);for i=1:720*288/4a=cell2mat(I(i));imagedata(i*4) = hex2dec(a(3:4));imagedata(i*4-1) = hex2dec(a(5:6));imagedata(i*4-2) = hex2dec(a(7:8));imagedata(i*4-3) = hex2dec(a(9:10));endimagedata = uint8(imagedata');imshow(imagedata,[0,720])用matlab计算面积值的程序:将图像中手势出现的范围截框,在算出像素点的值就是面积大小。
DSP实验报告
DSP实验报告02071445张渊实验一—VISUALDSP++的使用入门实验目的熟悉VISUAL DSP++的开发环境。
针对ADSP-Blackfin533 DSP,利用几个用C、C++和汇编语言写成的简单例子来描述VISUAL DSP+十编程环境和调试器(debugger)的主要特征和功能。
对于运行在其它类型Blackfin处理器的程序只需对其链接描述文件(.LDF)做一些修改,就可用于其它芯片或者ADSP-Blackfin533的硬件仿真。
实验内容一、练习一1. 实验步骤l) 进入Visual DSP+十并打开一个工程(Project)进入Visual DSP++,显示Visual DSP++的集成开发和调试环境窗口(Integrated Development and Debugger Environment,简称IDDE)。
装载dotprodc工程,并列出相应的源文件。
在输出窗口(Output Window)中显示简要信息。
2) 编译dotprodc工程在菜单Project中选择Build Project来对工程进行编译。
在本例子中,编译器检测到一个未定义的错误,显示为:“.\dotprod_main.c”,line 115:error #20:identifier“itn”is undefined itn i;在输出窗口中对该行文字用鼠标双击,环境会自动打开dotprod_main.c文件,并将光标定位在出错行。
你可以看见单词“int”被错写成“itn”。
将该错误改正后,保存并重新编译。
如果再没有错误出现,这时工程已被成功编译,就可以用VisualDSP++的debugger来调试程序。
3) 运行VsualDSP++调试器在调试过程中需定义不同的对象和处理器类型,选取菜单Sessions中NeW Session项来重新定义。
NeW Session 对话框图7.2所示:4) 运行dotprod.c从Debug菜单中选择Run项,程序将被执行,其输出结果在Output window中显示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三 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)))title('巴特沃思幅频特性')Angle=angle(H);%相频subplot(212)plot(w/2*pi/1000,Angle)title('相频特性')%%%%%%%%%----切比雪夫I-----%%%%%%%[NI,omegacI]=cheb1ord(omegap,omegas,Rp,As,'s');%低通的节次[b1,a1]=cheby1(NI,Rp,omegacI,'s');%切比雪夫I模拟低通滤波器[H1,w1]=freqs(b1,a1);figuresubplot(211)plot(w1/2*pi/1000,20*log10(abs(H1)))title('切比雪夫I幅频特性')Angle1=angle(H1);%相频subplot(212)plot(w1/2*pi/1000,Angle1)title('相频特性')%%%%%%%%%----切比雪夫II-----%%%%%%%[NII,omegacII]=cheb2ord(omegap,omegas,Rp,As,'s');%低通的节次[b2,a2]=cheby2(NII,As,omegacII,'s');%切比雪夫II模拟低通滤波器%w0=[omegap,omegas];[H2,w2]=freqs(b2,a2);figuresubplot(211)plot(w2/2*pi/1000,20*log10(abs(H2)))title('切比雪夫II幅频特性')Angle2=angle(H2);%相频subplot(212)plot(w2/2*pi/1000,Angle2)title('相频特性')%%%%%%%%%----椭圆型滤波器-----%%%%%%%[Nt,omegact]=ellipord(omegap,omegas,Rp,As,'s');%低通的节次[bt,at]=ellip(Nt,Rp,As,omegact,'s');%椭圆型滤波器模拟低通滤波器%w0=[omegap,omegas];[H3,w3]=freqs(bt,at);figuresubplot(211)plot(w3/2*pi/1000,20*log10(abs(H3)))title('椭圆型滤波器幅频特性')Angle3=angle(H3);%相频subplot(212)plot(w2/2*pi/1000,Angle3)title('相频特性')(2)%%%%%%%%%----贝塞尔滤波器n=3、4、5、6-----%%%%%%% clc;clear all;omegap=10000*2*pi;Rp=1;As=20;for n=3:6[b,a]=besself(n,omegap);%低通的节次[H,w]=freqs(b,a);%设计滤波器的幅频和相频特性图figuresubplot(211)plot(w/2*pi/1000,20*log10(abs(H)))title('幅频特性')Angle=angle(H);%相频subplot(212)plot(w/2*pi/1000,Angle)title('相频特性')Endb. 设计模拟高通滤波器,通带截止频率为2000Hz,阻带截止频率1500Hz,通带最大衰减为3dB,阻带最小衰减为15dB。
(1) 分别用巴特沃思、切比雪夫I 型滤波器首先设计模拟低通滤波器,再通过频率转换成高通滤波器,并分别绘制所设计滤波器的幅频和相频特性图。
%%%%%%%%%----巴特沃思低通转化为高通-----%%%%%%%clc;clear all;omegap=2000*2*pi;omegas=1500*2*pi;Rp=3;As=15;[N,omegac]=buttord(omegap,omegas,Rp,As,'s');%低通的节次[b,a]=butter(N,omegac,'s');[bt,at]=lp2hp(b,a,omegac);%巴特沃思低通转化为高通[H,w]=freqs(bt,at);%设计滤波器的幅频和相频特性图subplot(211)plot(w/2*pi/1000,20*log10(abs(H)))title('巴特沃思幅频特性')Angle=angle(H);%相频subplot(212)plot(w/2*pi/1000,Angle)title('相频特性')%%%%%%%%%----切比雪夫I低通转化为高通-----%%%%%%% [NI,omegacI]=cheb1ord(omegap,omegas,Rp,As,'s');%低通的节次[b1,a1]=cheby1(NI,Rp,omegacI,'s');%切比雪夫I模拟低通滤波器[bg,ag]=lp2hp(b1,a1,omegacI);%切比雪夫I低通转化为高通w0=[omegap,omegas];[H1,w1]=freqs(bg,ag);figuresubplot(211)plot(w1/2*pi/1000,20*log10(abs(H1)))title('切比雪夫I幅频特性')Angle1=angle(H1);%相频subplot(212)plot(w/2*pi/1000,Angle1)title('相频特性')(2) 直接用巴特沃思、切比雪夫I 型滤波器设计高通滤波器,并分别绘制所设计滤波器的幅频和相频特性图。
%%%%%%%%%----巴特沃思高通滤波器-----%%%%%%%clc;clear all;omegap=2000*2*pi;omegas=1500*2*pi;Rp=3;As=15;[N,omegac]=buttord(omegap,omegas,Rp,As,'s');%低通的节次[b,a]=butter(N,omegac,'high','s');%直接高通系数[H,w]=freqs(b,a);%设计滤波器的幅频和相频特性图subplot(211)plot(w/2*pi/1000,20*log10(abs(H)))title('巴特沃思幅频特性')Angle=angle(H);%相频subplot(212)plot(w/2*pi/1000,Angle)title('相频特性')%%%%%%%%%----切比雪夫I低通转化为高通-----%%%%%%%[NI,omegacI]=cheb1ord(omegap,omegas,Rp,As,'s');%低通的节次[b1,a1]=cheby1(NI,Rp,omegacI,'high','s');%切比雪夫I%直接高通系数[H1,w1]=freqs(b1,a1);figuresubplot(211)plot(w1/2*pi/1000,20*log10(abs(H1)))title('切比雪夫I幅频特性')Angle1=angle(H1);%相频subplot(212)plot(w/2*pi/1000,Angle1);tille(‘相频特性’)c. 设计模拟带通滤波器,其通带带宽为B=2π×200rad/s,中心频率Ω0=2π×1000rad/s,通带内最大衰减为δ1=3dB,阻带Ωs1=2π×830rad/s,而Ωs2=2π×1200rad/s,阻带最小衰减δ2=15dB。
(1) 分别用巴特沃思、切比雪夫I 型滤波器首先设计模拟低通滤波器,再通过频率转换成带通滤波器,并分别绘制所设计滤波器的幅频和相频特性图。
%%%%%%%%%----巴特沃思低通转化为带通滤波器-----%%%%%%%clc;clear all;omegap1=900*2*pi;omegap2=2*pi*1100;omegas1=830*2*pi;omegas2=2*pi*1200;Rp=3;As=15;B=2*pi*200;omega0=2*pi*1000;omegap=[omegap1,omegap2];omegas=[omegas1,omegas2];[N,omegac]=buttord(omegap,omegas,Rp,As,'s');%低通的节次[z,p,k]=buttap(N);%零极点b=k*real(poly(z));a=real(poly(p));[b1,a1]=lp2bp(b,a,omega0,B);[H,w]=freqs(b1,a1);subplot(211)plot(w,abs(H))title('幅频特性')Angle=angle(H);%相频subplot(212)plot(w/2*pi/1000,Angle)title('相频特性')%%%%%%%%%----切比雪夫I低通转化为带通滤波器-----%%%%%%% clc;clear all;omegap1=900*2*pi;omegap2=2*pi*1100;omegas1=830*2*pi;omegas2=2*pi*1200;Rp=3;As=15;B=2*pi*200;omega0=2*pi*1000;omegap=[omegap1,omegap2];omegas=[omegas1,omegas2];[N,omegac]=cheb1ord(omegap,omegas,Rp,As,'s');%低通的节次[z,p,k]=cheb1ap(N,Rp);%零极点b=k*real(poly(z));a=real(poly(p));[b1,a1]=lp2bp(b,a,omega0,B);[H,w]=freqs(b1,a1);figuresubplot(211)plot(w,abs(H))title('幅频特性')Angle=angle(H);%相频subplot(212)plot(w/2*pi/1000,Angle)title('相频特性')(2) 直接用巴特沃思、切比雪夫I 型滤波器设计带通滤波器,并分别绘制所设计滤波器的幅频和相频特性图。