dsp实验报告七
dsp原理与应用实验报告总结
dsp原理与应用实验报告总结DSP(Digital Signal Processing)数字信号处理是利用数字技术对信号进行处理和分析的一种方法。
在本次实验中,我们探索了DSP的原理和应用,并进行了一系列实验以验证其在实际应用中的效果。
以下是对实验结果的总结与分析。
实验一:数字滤波器设计与性能测试在本实验中,我们设计了数字滤波器,并通过性能测试来评估其滤波效果。
通过对不同类型的滤波器进行设计和实现,我们了解到数字滤波器在信号处理中的重要性和应用。
实验二:数字信号调制与解调本实验旨在通过数字信号调制与解调的过程,了解数字信号的传输原理与方法。
通过模拟调制与解调过程,我们成功实现了数字信号的传输与还原,验证了调制与解调的可行性。
实验三:数字信号的傅里叶变换与频谱分析傅里叶变换是一种重要的信号分析方法,可以将信号从时域转换到频域,揭示信号的频谱特性。
本实验中,我们学习了傅里叶变换的原理,并通过实验掌握了频谱分析的方法与技巧。
实验四:数字信号的陷波滤波与去噪处理陷波滤波是一种常用的去除特定频率噪声的方法,本实验中我们学习了数字信号的陷波滤波原理,并通过实验验证了其在去噪处理中的有效性。
实验五:DSP在音频处理中的应用音频处理是DSP的一个重要应用领域,本实验中我们探索了DSP在音频处理中的应用。
通过实验,我们成功实现了音频信号的降噪、均衡和混响处理,并对其效果进行了评估。
实验六:DSP在图像处理中的应用图像处理是另一个重要的DSP应用领域,本实验中我们了解了DSP在图像处理中的一些基本原理和方法。
通过实验,我们实现了图像的滤波、边缘检测和图像增强等处理,并观察到了不同算法对图像质量的影响。
通过以上一系列实验,我们深入了解了DSP的原理与应用,并对不同领域下的信号处理方法有了更深刻的认识。
本次实验不仅加深了我们对数字信号处理的理解,也为日后在相关领域的研究与实践提供了基础。
通过实验的结果和总结,我们可以得出结论:DSP作为一种数字信号处理的方法,具有广泛的应用前景和重要的实际意义。
DSP实验报告6
DSP第六、七次实验报告1. 实验目的:(1)进一步熟悉Matlab实验环境和语言。
(2)熟悉各种滤波器的结构及Matlab实现语言。
(3)掌握用冲击响应不变法和双线性变换法设计IIR滤波器的方法。
(4)掌握用窗函数法和频率抽样法设计FIR滤波器的方法。
2. 实验内容及总结:1.滤波器结构:(1)IIR滤波器各种结构1、直接型结构例如直接型滤波器系统函数, 则有系数向量a=[1,a1,a2,a3],b=[b0,b1,b2], 利用:Y=filter[b,a,x]求信号x(n)通过此滤波器的输出。
2、由系统函数或差分方程求系统的二阶分式(含一阶分式)的级联结构将例如的系统函数重写为二阶分式节的级联型, 利用:[sos,G]=tf2sos(b,a)3、由二阶分式的级联结构转换成系统函数的直接结构是第二步的逆运算, 调用函数:[b,a] = sos2tf(sos)可以求得系数向量a,b, 从而得到H(z)4、由系统函数求部分分式展开(留数及其极点计算)即求z反变换的部分分式展开法, 利用:[r,p,c]=residuez(b,a)其中极点为p, 留数为r, 直接项系数为c。
5、由r,p,c求系统函数即第4步的逆运算, 利用:[b,a]=residuez(r,p,c)6、由直接型结构转换为并联型结构需开发函数:[C,B,A]=tf2par(b,a)其中, b,a为直接型的系数向量, C,B,A为并联型实系数向量, 基本思想是: 1.反复调用[r,p,c]=residuez(b,a)求出极点及留数;2.利用cplxpair函数把极点、留数对按复共轭极点-留数对, 实极点-留数对的顺序排列;3.开发cplxcomp函数, 保证极点和留数相互对应;4.调用[b,a]=residuez(r,p,c)计算并联二阶节的分子分母。
7、由并联型结构转换成直接型结构开发函数:[b,a]=par2tf(C,B,A)为[C,B,A]=tf2par(b,a)的逆函数。
DSP实验报告
实验4 C54xDSP定时器及中断使用
一、实验目的
1、学会通过TI公司的片上支持库来调用片上外围设备;
2、学会使用C54x系列DSP的定时器;
3、学会使用C54x系列DSP的中断系统;
二、实验原理
C54xDSP片上支持库CSL的详细使用方法及步骤见“TMS320C54x CSL.pdf”。
1、定时器的使用
(a)C语言部分
(1)在预编译处包含CSL库及对应的定时器库;
(2)定义定时器的配置结构及句柄;
(3)在运行程序的开始调用“CSL初始化函数”;
(4)在运行程序内调用“定时器打开函数”和“定时器配置函数”;
(5)在需要开始计时的时候调用“定时器开始函数”;
(6)不再需要计时的时候调用“定时器停止函数”;
(b)CCS Project Build Option部分
(1)Compiler 下 Preprocessor 设置;
(2)Linker 下 Libraries 设置;
三、实验内容
1、利用TI公司已定义的片上支持库,正确配置及使用定时器和中断,使能定时器中断;
2、编写相应的定时器中断服务函数,运行程序,把断点设置在中断服务函数内,并使程序在该断点处停下,并在CCS软件调试窗口上打印相应的提示。
四、实验结果
五、实验结论及遇到的问题和分析
本次实验使我们学会了使用TI公司的片上支持库来调用片上外围设备;使用C54x系列DSP的定时器;使用C54x系列DSP的中断系统.在实验中也出现了一些小问题:我们在运行程序内无法调用“定时器打开函数”和“定时器配置函数”,最后通过对一些程序的修改才得以实现.同时感谢老师对我们实验的帮助与指导.。
dsp数据存取实验报告
竭诚为您提供优质文档/双击可除dsp数据存取实验报告篇一:Dsp实验一数据存取实验《Dsp技术》课程实验报告学生姓名:所在班级:指导教师:记分及评价:一、实验名称Dsp数据存取实验二、实验目的(1)掌握Tms320F2812程序空间的分配(2)掌握Tms320F2812数据控件的分配三、实验内容(3)往0x003F9020地址开始的八个存储单元依次写入0-8的八个数(4)读取0x003F9020地址开始的八个存储单元内容并写入0x003F9028地址开始的八个存储单元内。
(5)从0x003F9020开始的八个存储单元的内容依次与0x003F9020地址开始的八个存储单元相乘,运算结果存入0x003F9000开始的八个存储单元内。
(6)从0x003F9020开始的八个存储单元的内容依次与0x003F9020地址开始的八个存储内容相加,运算结果依次存入0x003F9038地址开始的八个存储单元内。
四、实验程序与结果分析程序和结果如图1:图1结果voidmain(void){inti;volatileunsignedint*room=(volatileunsignedint*)0x3f 9020;volatileunsignedint*room2=(volatileunsignedint*)0x3 f902F;volatileunsignedint*room3=(volatileunsignedint*)0x3 f9030;volatileunsignedint*room4=(volatileunsignedint*)0x3 f903F;//Initializesystemcontrol://pLL,watchDog,enableperipheralclocksInitsysctrl();//DisablecpuinterruptsDInT;//Disablecpuinterruptsandclearallcpuinterruptflags: IeR=0x0000;IFR=0x0000;/*将0xAAAA写入从数据空间的地址0x3f9020开始的8个单元中*/for(i=0;i {*room=0x0000+i;room++;}/*从0x3f9020开始的8个空间读出数据依次写入从0x3f9028开始的8个单元中*/for(i=0;i {*room2=*(room-1);room--;room2--;}room2++;for(i=0;i {*room3=((*room)*(*room2));//0x003F9028开始的八个存储单元的内容依次与0x003F9030地址开始的八个存储单元相乘room++;room2++;room3++;}room--;room2--;for(i=0;i {*room4=((*room)+(*room2));//0x003F9028开始的八个存储单元的内容依次与0x003F9038地址开始的八个存储内容相加room--;room2--;room4--;}}五、小结通过本次实验,我学会了Tms320F2812的寻址方式,明白了试验箱扩展存储器空间的寻址方法以及ccs修改、填充Dsp内存单元的方法,加深了对于ccs2000软件的应用,为接下来的实验提供良好的帮助。
dsp小实验总结
dsp⼩实验总结电⽓信息⼯程学院D S P技术与综合训练实验报告班级 09通信1W姓名陈学虎学号 09313112指导⽼师倪福银刘舒淇2012年9⽉27⽇⽬录实验1 :发光⼆极管阵列显⽰实验 (2)⼀.实验⽬的 (2)⼆.实验设备 (3)三.实验原理 (3)四.实验步骤 (4)五.实验结果 (7)实验2 :液晶显⽰器控制显⽰ (7)⼀.实验⽬的 (7)⼆.实验设备 (7)三.实验原理 (7)四.实验步骤 (9)五.实验结果与分析 (18)实验3 :⾳频信号发⽣实验 (19)⼀.实验⽬的 (19)⼆.实验设备 (19)三.实验原理 (19)四.实验步骤 (20)五.实验结果 (23)实验4:有限冲激响应滤波器(FIR)和(IIR)算法实验 (23)⼀.实验⽬的 (24)⼆.实验设备 (24)三.实验原理 (24)四.实验步骤 (26)五,实验结果 (31)FIR实验结果如下: (31)IIR实验结果如下: (31)实验1 :发光⼆极管阵列显⽰实验⼀.实验⽬的通过实验学习使⽤5509A DSP的扩展端⼝控制外围设备的⽅法,了解发光⼆极管阵列的控制编程⽅法。
⼆.实验设备计算机,ICETEK-VC5509-A实验箱(或ICETEK仿真器+ICETEK-VC5509-A系统板+相关连线及电源)。
三.实验原理1.EMIF接⼝:TMS320C5509DSP的扩展存储器接⼝(EMIF)⽤来与⼤多数外围设备进⾏连接,典型应⽤如连接⽚外扩展存储器等。
这⼀接⼝提供地址连线、数据连线和⼀组控制线。
ICETEK-VC5509-A将这些扩展线引到了板上的扩展插座上供扩展使⽤。
2.LED指⽰灯控制⽅法根据封装原理图可以看出:当芯⽚上的IO⼝置于0时,LED灯才会亮。
已知LED指⽰灯的控制寄存器CTRLED由DSP的扩展地址0x600802给出,这是⼀个只写的16位寄存器,低8位有效,它的0到7位分别控制指⽰灯LED1到LED8,每⼀个对应位置0就表⽰点亮该指⽰灯,置1表⽰熄灭该指⽰灯。
DSP实验报告
DSP实验报告⼀、综合实验内容和要求1. 实验⽬的(1) 学习掌握CCS3.3编译器的使⽤;(2) 通过实验学习掌握TMS320F28335的GPIO ,浮点计算; (3) 学习并掌握A/D 模块的使⽤⽅法;(4) 学习并掌握中断⽅式和查询⽅式的串⼝通信; (5) 学习并掌握28335DSP 的定时器相关的设置与运⽤; (6) 学习信号时域分析的⽅法,了解相关波形参数的计算⽅法; (7) 了解数字滤波的⼀些基本⽅法; (8) 学习数码管的驱动及运⽤。
(9) 学习MATLAB 串⼝以及画图的运⽤。
2. 实验设计内容与要求:(1) 对给定的周期波形信号采⽤TI 公司的TMS320F28335DSP ,利⽤试验箱上的相关资源计算出波形的周期T ,波形的有效值rms V ,平均值avg V 。
其中,有效值和平均值的计算公式(数字量的离散公式)如下:rms V =1()NavgiV u i N=∑式中N 为⼀个周期采样点数,()u i 为采样序列中的第i 个采样点。
(2) 通过算法计算出波形的有效值和平均值,利⽤串⼝通信把测得的数据发送到串⼝助⼿查看,或者在MATLAB 上编写上位机程序,把发送的数据在MATLAB 上画出来。
(3) 把测得的数据实时显⽰在数码管上。
⼆、硬件电路图1为试验系统的硬件图,硬件电路主要包括TMS320F28335DSP 实验箱,SEED-XDS510仿真器,数码管,SCI,信号发⽣器,电脑,串⼝线等。
图1 硬件电路图三、实验原理本试验主要是通过程序去测量⼀个周期波形的有效值、平均值、峰值等相关参数。
计算离散数据的有效值可⽤公式rms V =平均值可⽤公式1()N avgiV u i N=∑。
所以⾸先需要测出波形的周期,然后确定每个周期需要采样的点数N ,最后去计算平均值和有效值。
v mv 1图2 理想输⼊采样波形如图2所⽰为⼀个正弦输⼊波形,m V 为输⼊波形的峰值,1V 是介于0~ m V 的⼀个值。
数字信号处理实验报告
数字信号处理实验报告引言数字信号处理(Digital Signal Processing,DSP)是一门研究数字信号的获取、分析、处理和控制的学科。
在现代科技发展中,数字信号处理在通信、图像处理、音频处理等领域起着重要的作用。
本次实验旨在通过实际操作,深入了解数字信号处理的基本原理和实践技巧。
实验一:离散时间信号的生成与显示在实验开始之前,我们首先需要了解信号的生成与显示方法。
通过数字信号处理器(Digital Signal Processor,DSP)可以轻松生成和显示各种类型的离散时间信号。
实验设置如下:1. 设置采样频率为8kHz。
2. 生成一个正弦信号:频率为1kHz,振幅为1。
3. 生成一个方波信号:频率为1kHz,振幅为1。
4. 将生成的信号通过DAC(Digital-to-Analog Converter)输出到示波器上进行显示。
实验结果如下图所示:(插入示波器显示的正弦信号和方波信号的图片)实验分析:通过示波器的显示结果可以看出,正弦信号在时域上呈现周期性的波形,而方波信号则具有稳定的上下跳变。
这体现了正弦信号和方波信号在时域上的不同特征。
实验二:信号的采样和重构在数字信号处理中,信号的采样是将连续时间信号转化为离散时间信号的过程,信号的重构则是将离散时间信号还原为连续时间信号的过程。
在实际应用中,信号的采样和重构对信号处理的准确性至关重要。
实验设置如下:1. 生成一个正弦信号:频率为1kHz,振幅为1。
2. 设置采样频率为8kHz。
3. 对正弦信号进行采样,得到离散时间信号。
4. 对离散时间信号进行重构,得到连续时间信号。
5. 将重构的信号通过DAC输出到示波器上进行显示。
实验结果如下图所示:(插入示波器显示的连续时间信号和重构信号的图片)实验分析:通过示波器的显示结果可以看出,重构的信号与原信号非常接近,并且能够还原出原信号的形状和特征。
这说明信号的采样和重构方法对于信号处理的准确性有着重要影响。
DSP实验报告
一、综合实验内容和目的1、实验目的(1) 通过实验学习掌握TMS320F28335的浮点处理; (2) 学习并掌握A/D 模块的使用方法;(3) 学习并掌握中断方式和查询方式的相关知识及其相互之间的转换; (4) 学习信号时域分析的方法,了解相关电量参数的计算方法; (5) 了解数字滤波的一些基本方法。
2、实验内容要求1:对给定的波形信号,采用TMS320F28335的浮点功能计算该信号的以下时域参数:信号的周期T ,信号的均方根大小V rms 、平均值V avg 、峰-峰值V pp 。
其中,均方根V rms 的计算公式如下:()21N rms iV u i N =∑ 式中N 为采样点数,()u i 为采样序列中的第i 个采样点。
要求2:所设计软件需要计算采样的波形周期个数,并控制采样点数大于1个波形周期,且小于3个波形周期大小。
要求3:对采集的数据需要加一定的数字滤波。
二、硬件电路相关硬件:TMS320F28335DSP 实验箱,仿真器。
硬件结构图三、程序流程图1、主程序流程图程序的主流程图2、子程序流程图参数计算的流程图四、实验结果和分析1、实验过程分析(1) 使用的函数原型声明对ADC模件相关参数进行定义:ADC时钟预定标,使外设时钟HSPCLK 为25MHz,ADC模块时钟为12.5MHz,采样保持周期为16个ADC时钟。
(2) 定义全局变量根据程序需要,定义相关变量。
主要有:ConversionCount、Voltage[1024]、Voltage1[1024]、Voltage2[1024]、filter_buf[N]、filter_i、Max、Min、T、temp、temp1、temp2、temp3、Num、V、Vav、Vpp、Vrm、fre。
这些变量的声明请见报告后所附的源程序。
(3) 编写主函数完成系统寄存器及GPIO初始化;清除所有中断,初始化PIE向量表,将程序中使用的ADC中断重新映射到ISR;对外部设备ADC模块进行初始化;使能PIE中ADCINT中断;配置ADC模块;等待ADC中断。
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实验报告1.问题一:设置硬件设备时,找不到实验设备上的仿真器的型号,F2812 XDS510Emulator怎么办?解决的方法:只要找到F2812 XDS5100 Emulator添加即可,再添加成功后在System configuration 的窗口中显示F2812 XDS510 Emulator,多的一个0自动就去去除了。
2.问题二:问什么.c文件编译连接通过后程序点run,依然无法运行,会弹出warning窗口,No valid program is currently loaded into memory.解决的办法:是因为没有添加.out文件的缘故,弹出warning窗口要选择no,然后在菜单的File>>load program 弹出窗口,选择Debug文件夹下的.out添加。
3.问题三:执行write_buffer一行时,如果按F10执行程序和按F11执行程序现象有和不同。
现象:执行write_buffer一行时。
如果按F10执行程序,则程序在mian主函数中运行,如果按F11,则程序进入write_buffe函数内部的程序运行。
4.问题四:怎样可以看到结构体变量中的每个元素?解决办法:把str变量加到观察窗口中,点击变量左边的“+”,观察窗口可以展开结构变量,就可以看到结构体变量中的每个元素了。
5.问题五:在读懂实验2-1程序后,修改了实验2-1的程序,重新编译、连接执行程序,可是为什么其执行的结果没有改变?解决办法:对.OUT文件进行重新加载。
因为在修改了实验2-1的程序后,重新编译、连接程序,此时.OUT文件已经改变了。
如果不重新加载,那么执行的.OUT 文件依旧是之前的.OUT文件,其结果将不会改变。
6.问题六:实验1-1的波形不能显示,显示出杂乱无章的杂声波怎么办?(按实验指导书应该是正弦波)。
解决办法:原因框中的第二项Start Address中的Inp-buffer设置错了,正确的应该是inp_buffer 中间那根划线是关键。
DSP实验报告
一、综合实验内容和目的1、实验目的(1) 通过实验学习掌握TMS320F28335的浮点处理;(2) 学习并掌握A/D模块的使用方法;(3) 学习并掌握中断方式和查询方式的相关知识及其相互之间的转换;(4) 学习信号时域分析的方法,了解相关电量参数的计算方法;(5) 了解数字滤波的一些基本方法。
2、实验内容要求1:对给定的波形信号,采用TMS320F28335的浮点功能计算该信号的以下时域参数:信号的周期T,信号的均方根大小V rms、平均值V avg、峰-峰值V pp。
其中,均方根V rms的计算公式如下:V=rmsu i为采样序列中的第i个采样点。
式中N为采样点数,()要求2:所设计软件需要计算采样的波形周期个数,并控制采样点数大于1个波形周期,且小于3个波形周期大小。
要求3:对采集的数据需要加一定的数字滤波。
二、硬件电路相关硬件:TMS320F28335DSP实验箱,仿真器。
硬件结构图三、程序流程图1、主程序流程图程序的主流程图2、子程序流程图参数计算的流程图四、实验结果和分析1、实验过程分析(1) 使用的函数原型声明对ADC模件相关参数进行定义:ADC时钟预定标,使外设时钟HSPCLK 为25MHz,ADC模块时钟为12.5MHz,采样保持周期为16个ADC时钟。
(2) 定义全局变量根据程序需要,定义相关变量。
主要有:ConversionCount、Voltage[1024]、Voltage1[1024]、Voltage2[1024]、filter_buf[N]、filter_i、Max、Min、T、temp、temp1、temp2、temp3、Num、V、Vav、Vpp、Vrm、fre。
这些变量的声明请见报告后所附的源程序。
(3) 编写主函数完成系统寄存器及GPIO初始化;清除所有中断,初始化PIE向量表,将程序中使用的ADC中断重新映射到ISR;对外部设备ADC模块进行初始化;使能PIE中ADCINT中断;配置ADC模块;等待ADC中断。
DSP课程实验报告
目录目录 (1)实验一试验名称:RGB转灰度,添加噪声实验 (2)实验二试验名称:图像平滑,中值滤波实验 (7)实验三试验名称:图像锐化实验 (9)实验四试验名称:灰度变换实验 (11)实验五试验名称:灰度直方图,直方图均衡实验 (13)实验六试验名称:边沿提取,灰度反转,二值化实验 (16)实验七试验名称:熟悉imgLib的使用实验 (18)实验一试验名称:RGB转灰度,添加噪声实验一、试验目的1、熟悉CCS,学会运用CCS导入图像,并仿真DSP处理图像2、掌握如何将目标图像由彩色转为灰色3、掌握如何给目标图像添加各类噪声二、试验设备1、PC机一台,windows操作系统2、CCS编程环境三、试验原理(1)彩色图像中的每个像素的颜色有R、G、B三个分量决定,而每个分量有255个中值可取,这样一个像素点可以有1600多万(255*255*255)的颜色的变化范围。
而灰度图像是R、G、B三个分量相同的一种特殊的彩色图像,其中一个像素点的变化范围为255种,所以在数字图像处理中一般先将各种格式的图像转变成灰度图像以使后续的图像的计算量变得少一些。
灰度图像的描述与彩色图像一样仍然反映了整幅图像的整体和局部的色度和亮度等级的分布和特征。
在RGB模型中,如果R=G=B时,则彩色表示一种灰度颜色,其中R=G=B的值叫做灰度值。
因此,灰度图像每个像素只需一个字节存放灰度值(又称强度值、亮度值),灰度范围为0-255。
图像的灰度化处理,一般有以下三种处理方法:方法一:加权平均法根据重要性及其它指标,将R、G、B三个分量以不同的权值进行加权平均。
由于人眼对绿色的敏感度最高,对蓝色敏感度最低。
因此,在MATLAB中我们可以按下式系统函数,对RGB三分量进行加权平均能得到较合理的灰度图像。
f(i,j)=0.30R(i,j)+0.59G(i,j)+0.11B(i,j))方法二:平均值法将彩色图像中的R、G、B三个分量的亮度求简单的平均值,将得到均值作为灰度值输出而得到灰度图。
DSP实验报告
西安电子科技大学DSP上机实验报告2012年6月实验一——VISUALDSP++的使用入门实验一的目的实验一的主要目的是熟悉VISUAL DSP++的开发环境。
针对ADSP-Blackfin533 DSP,利用几个用C、C++和汇编语言写成的简单例子来描述VISUAL DSP+十编程环境和调试器(debugger)的主要特征和功能。
对于运行在其它类型Blackfin处理器的程序只需对其链接描述文件(.LDF)做一些修改,就可用于其它芯片或者ADSP-Blackfin533的硬件仿真。
在目录…\Blackfin\ldf下有每种处理器类型的链接描述文件,可供参考。
实验一包括4个基本练习:练习一:启动Visual DSP++ 4.0,建立一个用C源代码的工程(Project),同时用调试器来评估用C语言所编写代码的性能;练习二:创立一个新的工程,修改源码来调用一个汇编(asm)程序,重新编译工程,用调试器来评估用汇编语言所写程序的性能;练习三:利用调试器的绘图(plot)功能来图形显示一个卷积算法中的有关数据的波形;练习四:利用调试器的性能统计功能(Statistical profile)来检查练习三中卷积算法的效率。
利用所收集到的性能统计数据就能看出算法中最耗时的地方。
练习一——运行C程序在练习一中,将创立和运行一个C程序,源文件在…\Blackfin讲义\参考实验程序\Tutorial\dot_product_c子目录。
1. 实验步骤l) 进入Visual DSP+十并打开一个工程(Project)进入Visual DSP++,显示Visual DSP++的集成开发和调试环境窗口(Integrated Development and Debugger Environment,简称IDDE)。
选择菜单File 中Open 打开文件…unit_1\dot_product_c \dotprodc.dpj。
DSP实验报告(完美版)
DSP实验报告班级:11050641学号:姓名:指导教师:实验一、二 DSP芯片的开发工具及应用实验1.实验目的(1)熟悉CCS集成开发环境,掌握工程的生成方法;(2)熟悉SEED-DTK DAD实验环境;(3)掌握CCS集成开发环境的调试方法。
2.实验设备DSP实验箱,计算机,CCS软件。
3.实验内容及步骤(1)CCS软件的安装;(2)了解SEED-DTK5416实验环境;(3)打开CCS集成开发环境,进入CCS的操作环境;(4)新建一个工程文件○1在c:\ti\myprojects中建立文件夹volume1(如果CCS安装在其他d:\ti ,则在d:\ti\myprojects中);○2将c:\ti\tutorial\target\volume1拷贝到c:\ti\myprojects\ volume1;○3从在CCS 中的Project 菜单,选择 New;○4在Project Name域中,键入volume1;○5在Location区域中,浏览步骤1所建立的工作文件夹;○6在Project Type 域中,选择Executable(.out);○7在Target域中,选择CCS配置的目标,并单击完成。
(5)向工程中添加文件○1从Project/Add Files to Project,选择 volume.c,单击Open(或右击Project View图标,选择Add Files to Project );○2选择Project/Add Files to Project,在Files of type对话框中,选择Asm Source Files (*.a*, *.s*)。
选择vectors.asm 和 load.asm, 单击Open;○3选择 Project/Add Files to Project,在Files of type 对话框中选择 Linker Command File (*.cmd),选择volume.cmd,单击Open。
DSP实验报告
DSP实验报告实验一基础实验一、实验目的1、熟悉CCS开发环境搭建及其配置;2、对基本的汇编命令进行学习验证;二、实验内容三、实验内容四、实验过程对老师所给示例程序按步进行,观察对应值的变化:程序:RSBX CPLNOPNOPLD #1234h,A ;立即数寻址ST #5678h,*(DDAT1)程序:LD #PDAT1,A ;累加器寻址READA D AT2程序:ST #3210h,DAT3 ;直接寻址(DP指针)程序:SSBX CPLNOPNOPNOPST #9876h,DAT3 ;直接寻址(SP指针)MM程序:STM #DDAT3,AR0 ;间接寻址ST #9876h,*AR0五、 实验总结通过本次实验,学生基本了解了CCS 开发环境搭建及其配置,也对基本的汇编命令进行学习验证,感谢老师的辛勤指导,让同学们有了一次愉快充实的实验课。
实验二汇编的数据访问一、实验目的1.了解DSP结构;2.熟悉CCS开发环境;3.熟悉TDB-C54X plus DSP 试验箱的硬件环境;4.掌握C54X plus 存储区数据访问方法。
二、实验内容1.C54X plus 汇编初始化程序;2.C54X plus 存储区数据访问的源程序。
三、实验要求在程序去预留2个数据块,每块大小为128字;在数据去预留4个数据块,每块大小为128字,分别将数据区的数据移动到程序区,将程序区的数据移动到数据区,将数据区的数据移动到数据区,运行程序,通过CCS-View-CPU Registers,观察各寄存器的值;通过CCS-View-Memory,观察片内程序和数据区的值,上述各值应与源程序的结果一样。
四、实验环境计算机、DSP仿真器、TDB-C54X plus DSP实验箱、CCS软件。
五、实验步骤1.将DSP仿真器与计算机并口连接;2.将DSP仿真器JTAG头插入DSP实验箱JTAG接口上;3.打开计算机电源,当计算机启动完毕后,打开仿真器和TDB-C54X plusDSP实验箱电源,实验箱上3.3V、1.8V电源指示灯均亮,若不亮,请立即关闭电源检查连线和电源电压;4.双击桌面CCS,进入CCS操作环境;5.按实验一的步骤创建一个工程和源文件,并调试。
DSP实验报告(精)
DSP上机实验:DTMF信号的编码一、实验要求设计作业:双音多频(DTMF)信号的编码:把自己的电话号码DTMF编码生成为一个.wav文件。
【wavwrite()】技术指标:根据ITU Q.23建议,DTMF信号的技术指标是:传送/接收率为每秒10个号码,或每个号码100ms。
每个号码传送过程中,信号存在时间至少45ms,且不多于55ms,100ms的其余时间是静音。
在每个频率点上允许有不超过±1.5%的频率误差。
任何超过给定频率±3.5%的信号,均被认为是无效的,拒绝接收。
二、实验思想:1、编码:DTMF拨号键盘由一个4*4行列构成,每列代表一个高频信号,每行代表一个低频信号,每当按下一个键时,产生高、低频率的两个正弦信号,代表一个特定的数字或符号,根据ITU Q.23颁布的国际标准,DTMF传送或接受每个号码的时间为100ms,其中每个号码传送的过程中,信号存在时间至少45ms,其余时间静音。
用一个字符串变量来接受输入的电话号码,并将各个数字和符号的ASCII码用一个4*4矩阵表示,每接收到一个数字就对应两个频率,并产生由两个正弦波叠加的信号,完成DTMF编码,利用matlab提供的fft函数画出其频谱,用sound函数发出声音。
2、解码:采用Goertzel算法来检测DTMF信号,它是用IIR滤波器实现DFT算法的一种特殊方法,在实际DTMF解码中,只需要知道输入信号即DTMF信号的离散傅里叶变换X(k)的幅度信息,忽略相位信息,因为只要能得到8个特定频率点的幅度值,看哪两个频率对应的幅度最大,就能知道对应的是哪个数字,达到解码的目的,可以利用matlab提供的goertzel函数来对信号解码。
三、实验代码:d=input('请键入电话号码: ','s');sum=length(d);total_x=[];sum_x=[];sum_x=[sum_x,zeros(1,800)];for a=1:sumsymbol=abs(d(a));tm=[49,50,51,65;52,53,54,66;55,56,57,67;42,48,35,68]; for p=1:4;for q=1:4;if tm(p,q)==abs(d(a));break,endendif tm(p,q)==abs(d(a));break,endendf1=[697,770,852,941];f2=[1209,1336,1477,1633];n=1:400;x=sin(2*pi*n*f1(p)/8000)+sin(2*pi*n*f2(q)/8000); x=[x,zeros(1,400)]; sum_x=sum_x+x;total_x=[total_x,x];endwavwrite(total_x,'soundwave')sound(total_x);t=(1:8800)/8000;subplot(2,1,1);plot(t,total_x);axis([0,1.2,-2,2]);xlabel('时间/s')title('DTMF信号时域波形')xk=fft(x); mxk=abs(xk);subplot(2,1,2);k=(1:800)*sum*8000/800;plot(k,mxk); xlabel('频率');title('DTMF信号频谱');disp('双频信号已生成并发出')四、实验结果图:请键入电话号码: 130xxxxxxxx。
DSP实验报告完美版
DSP实验报告班级:学号:姓名:指导教师:实验一、二 DSP芯片的开发工具及应用实验1.实验目的(1)熟悉CCS集成开发环境,掌握工程的生成方法;(2)熟悉SEED-DTK DAD实验环境;(3)掌握CCS集成开发环境的调试方法。
2.实验设备DSP实验箱,计算机,CCS软件。
3.实验内容及步骤(1) CCS软件的安装;(2)了解SEED-DTK5416实验环境;(3)打开CCS集成开发环境,进入CCS的操作环境;(4)新建一个工程文件○1在c:\ti\myprojects中建立文件夹volume1(如果CCS安装在其他d:\ti ,则在d:\ti\myprojects中);○2将c:\ti\tutorial\target\volume1拷贝到c:\ti\myprojects\ volume1;○3从在CCS 中的Project 菜单,选择 New;○4在Project Name域中,键入volume1;○5在Location区域中,浏览步骤1所建立的工作文件夹;○6在Project Type 域中,选择Executable(.out);○7在Target域中,选择CCS配置的目标,并单击完成。
(5)向工程中添加文件○1从Project/Add Files to Project,选择 volume.c,单击 Open(或右击Project View图标,选择Add Files to Project );○2选择Project/Add Files to Project,在Files of type对话框中,选择Asm Source Files (*.a*, *.s*)。
选择vectors.asm 和 load.asm, 单击Open;○3选择 Project/Add Files to Project,在Files of type 对话框中选择 Linker Command File (*.cmd),选择volume.cmd,单击Open。
DSP实验报告0705110637(精)
学生实验报告课程名称:学生学号:所属院部:(理工类)DSP 技术及应用专业班级:07电子信息工程1班 0705110637 学生姓名:薛建宏信息技术学院指导教师:姜志鹏20 10 ——20 11 学年第 1 学期金陵科技学院教务处制实验报告书写要求实验报告原则上要求学生手写,要求书写工整。
若因课程特点需打印的,要遵照以下字体、字号、间距等的具体要求。
纸张一律采用A4的纸张。
实验报告书写说明实验报告中一至四项内容为必填项,包括实验目的和要求;实验仪器和设备;实验内容与过程;实验结果与分析。
各院部可根据学科特点和实验具体要求增加项目。
填写注意事项(1)细致观察,及时、准确、如实记录。
(2)准确说明,层次清晰。
(3)尽量采用专用术语来说明事物。
(4)外文、符号、公式要准确,应使用统一规定的名词和符号。
(5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。
实验报告批改说明实验报告的批改要及时、认真、仔细,一律用红色笔批改。
实验报告的批改成绩采用百分制,具体评分标准由各院部自行制定。
实验报告装订要求实验批改完毕后,任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列,装订成册,并附上一份该门课程的实验大纲。
实验项目名称: 1、CCS 使用入门实验学时: 2学时同组学生姓名:郝文君实验地点: B406 实验日期: 2010-10-14 实验成绩:批改教师:批改时间:一、实验目的和要求(一)、实验目的(1)熟悉DSP 集成开发环境CCS 的界面(2)掌握CCS 设计平台的常用功能(3)掌握用CCS 设计并调试DSP 程序的流程(二)、实验要求(1)注意掌握CCS 开发DSP 应用程序的步骤;(2)理解提供的汇编语言源程序的功能。
(3)调试程序要记录调试过程中出现的问题及解决办法;(4)编写程序要规范、正确,上机调试过程和结果要有记录,并注意调试程序集成环境的掌握及应用,不断积累编程及调试经验;(5)实验后按实验报告规范要求给出本实验的实验报告。
DSP实验报告
实验一 信号、系统及响应一、 实验目的1. 熟悉理想采样的性质,了解信号采样前后的频谱变化,加深对采样定理的理解。
2. 熟悉离散信号和系统的时域特性。
3. 熟悉线性卷积的计算编程方法:利用卷积的方法,观察分析系统响应的时域特性。
4. 掌握序列傅氏变换的计算机实现方法,利用序列的傅氏变换对离散信号,系统及系统响应进行频域分析。
二、 实验内容在编制以上各部分程序以后,编制主程序调用各个功能模块实现对信号,系统和系统响应的时域,频域分析,完成以下实验内容。
1.分析理想采样信号序列的特性。
产生理想采样信号序列()a x n ,使A =444.128,α=,0Ω= a.首先选用采样频率为1000Hz,T =1/1000,观察所得理想采样信号的幅频特性,在折叠频率以内和给定的理想幅频特性无明显差异,并做记录。
b.改变采样频率为300Hz,T=1/300,观察所得到的幅频特性曲线的变化,并做记录c.进一步减少采样频率为200Hz,T=1/200,观察频谱“混淆”现象是否明显存在,说明原因,并记录幅频特性曲线。
2.离散信号,系统和系统响应的分析(1).观察信号()b x n 和系统()b h n 的时域和幅频特性,利用线性卷积求信号通过系统以后的响应。
比较系统响应和系统()b h n 的时域和幅频特性,注意它们之间有无差异,并绘出曲线。
(2).观察信号()c x n 和系统()a h n 的时域和幅频特性,利用线性卷积求系统响应。
判断响应序列图形及序列非零值长度是否与理论结果一致,说出一种定性判断响应序列图形正确与否的方法(提示:10()()()c a x n h n R n ==)。
利用系统的傅立叶变换数值计算子程序求出()k j Y e ω,观察响应序列的幅频特性。
定性判断结果正确与否,改变信号()c x n 的脉冲宽度,使N =5,重复以上动作,观察变化,记录改变参数前后的差异。
(3)将实验步骤2-(2)中信号变换为()a x n ,其中A=1,α =0.4,0Ω=2.0734,T=1。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DSP 实验报告
(实验七)
班级:
学号:
姓名:
实验七、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节。
五、实验心得体会
本次实验,基本内容如下:首先,我们通过对C和ARM编辑好的程序进行下载输出并进行硬件功能检测,实现了将人讲出的声音的模拟信号转换成数字信号。
然后,我们实现了将数字信号恢复出模拟信号输出的功能。
当实验出现了结果的时候,真的好开心,加深了对DSP的理解,深刻的体会到了科技的神奇。
最后,感谢老师和助教的教导与帮助!。