DSP第三次实验报告

合集下载

dsp实验报告总结doc

dsp实验报告总结doc
3.1 硬件总体结构
3.2 DSP总体结构
3.3 电源模块设计
3.4 时钟模块设计
3.5 存储器模块设计
3.6复位模块设计
篇二:DSP实验报告
DSP课程设计 实 验 报 告
语音压缩、存储和回放
学 院:电子信息工程学院电子科学与技术专业 设计人员: 吴莲梅 08214085电子0803班 杨 莹 08214088电子0803班指导老师: 日 期:
(1)A律限制采样值为12比特,A律的压缩可以按照下列公式进行定义:
A|x|11?lnA|x|1
(0?|x|?)?sgn(x)(?|x|?1)F(x)?sgn(x)
1?lnAA1?lnAA
式中,A是压缩参数(在欧洲,A=87.6)x是需要压缩的归一化整数。从线性到A律的压缩转换如下表所示:(压缩后的码字组成:比特0-3表示量化值,比特4-6表示段值,压缩后
一、 设计目的
设计一个功能完备,能够独立运行的精简DSP硬件系统,并设计简单的DSP控制程序。
二、 系统分析
1.1设计要求 硬件要求:
(1)使用TMS320VC5416作为核心芯片。 (2)具有最简单的led控制功能。 (3)具有存放程序的外部Flash芯片。 (4)外部输入+5V电源。 (5)绘制出系统的功能框图。
(6) 仪器仪表--如频谱分析、函数发生、锁相环、地震处理等。 (7) 自动控制--如引擎控制、深空、自动驾驶、机器人控制、磁盘控制。 (8) 医疗--如助听、超声设备、诊断工具、病人监护等。(9) 家用电器--如高保真音响、音乐合成、音调控制、玩具与游戏、数字 电话/电视等 DSP 的发展前景 DSP 的功能越来越强,应用越来越广,达到甚至超过了微控制器的功能,比 微控制器做得更好而且价格更便宜, 许多家电用第二代 DSP 来控制大功率电机就 是一个很好的例子。汽车、个人通信装置、家用电器以及数以百万计的工厂使用 DSP 系统。数码相机、IP 电话和手持电子设备的热销带来了对 DSP 芯片的巨大需 求。而手机、

北邮-DSP数字信号处理 实验-实验报告

北邮-DSP数字信号处理 实验-实验报告

北京邮电大学电子工程学院电子实验中心<数字信号处理实验>实验报告班级: xxx学院: xxx实验室: xxx 审阅教师:姓名(班内序号): xxx 学号: xxx 实验时间: xxx评定成绩:目录一、常规实验 (3)实验一常用指令实验 (3)1.试验现象 (3)2.程序代码 (3)3.工作原理 (3)实验二数据储存实验 (4)1.试验现象 (4)2.程序代码 (4)3.工作原理 (4)实验三I/O实验 (5)1.试验现象 (5)2.程序代码 (5)3.工作原理 (5)实验四定时器实验 (5)1.试验现象 (5)2.程序代码 (6)3.工作原理 (9)实验五INT2中断实验 (9)1.试验现象 (9)2.程序代码 (9)3.工作原理 (13)实验六A/D转换实验 (13)1.试验现象 (13)2.程序代码 (14)3.工作原理 (18)实验七D/A转换实验 (19)1.试验现象 (19)2.程序代码 (19)3.工作原理 (37)二、算法实验 (38)实验一快速傅里叶变换(FFT)算法实验 (38)1.试验现象 (38)2.程序代码 (38)3.工作原理 (42)实验二有限冲击响应滤波器(FIR)算法实验 (42)1.试验现象 (42)2.程序代码 (42)3.工作原理 (49)实验三无限冲击响应滤波器(IIR)算法实验 (49)1.试验现象 (49)2.程序代码 (49)3.工作原理 (56)作业设计高通滤波器 (56)1.设计思路 (56)2.程序代码 (57)3.试验现象 (64)一、常规实验实验一常用指令实验1.试验现象可以观察到实验箱CPLD右上方的D3按一定频率闪烁。

2.程序代码.mmregs.global _main_main:stm #3000h,spssbx xf ;将XF置1,D3熄灭call delay ;调用延时子程序,延时rsbx xf ;将XF置0,D3点亮call delay ;调用延时子程序,b _main ;程序跳转到"_MAIN"nopnop;延时子程序delay:stm 270fh,ar3 ;将0x270f(9999)存入ar3loop1:stm 0f9h,ar4 ;将0x0f9(249)存入ar4loop2:banz loop2,*ar4- ;*ar4自减1,不为0时跳到loop2的位置banz loop1,*ar3- ;*ar3自减1,不为0时跳到loop1的位置ret ;可选择延迟的返回nopnop.end3.工作原理主程序循环执行:D3熄灭→延时→D3点亮→延时。

dsp实验报告3

dsp实验报告3

数字信号处理实验报告姓名:实验六 16阶FIR滤波器一、实验仪器:PC机一台,JQ-NIOS-2C35实验箱一台及辅助软件(DSP Builder、Matlab/Simulink、Quartus II、Modelsim)。

二、实验目的:1.初步了解JQ-NIOS-2C35实验箱的基本结构;2.学习和熟悉基于DSP Builder开发数字信号处理实验的流程。

3.学习和熟悉DSP Builder层次化的设计方法。

三、实验原理:1.FIR滤波器基础FIR滤波器具有直接型、级联型和频率抽样型三种基本结构[14]。

由于在DSP Builder模型设计中采用了直接型结构,我们只对直接型结构进行讨论。

这种结构也被称为抽头延迟线结构,或横向滤波器结构[15][16]。

图1显示的是直接型结构的示意图,从图中可以看出,每个抽头上的加权值M2,1,0(=,分别),b,.......,rr等于滤波器的单位冲击响应M),(=。

输入与抽头加权值的乘积的和2,1,0rrh,......,就是输出)(ny。

图1 FIR滤波器直接型结构示意图转置定理定义为,如果将上图中的所有支路倒转,并将输入x(n)和输出y(n)的位置调换,则其冲击响应不变。

将转置定理应用于上图,则得到FIR滤波器的转置结构,如图2所示。

图2 转置型FIR滤波器结构示意图2.具有线性相位的FIR滤波器结构若一个FIR滤波器具有线性相位,且其单位冲击响应h(n)全为实数,则h(n)具有如下特性:当N为偶数时,h(n)=h(M-n);当N为奇数时,h(n)=-h(M-n)。

所谓线性相位特性是指滤波器对不同频率的正弦波产生的相移和正弦波的频率成直线关系。

在本次试验设计中采用的是N为偶数的结构,图3显示的是N为偶数时线性相位滤波器的结构。

图3 线性相位滤波器结构示意图(N为偶数)3.FIR滤波器的设计方法FIR滤波器的设计方法主要有窗函数法、频率抽样法和切比雪夫逼近法三种。

DSP实验报告 3

DSP实验报告 3

实验三定点定标运算一程序分析分析程序的结构和功能,对每条指令进行注释,写出执行结果。

.title "example41.asm".mmregs ;enable memory mapped registersstack .usect "STACK",10h ;set stack section.bss x1,2.bss y,2.bss s1,2.bss z,2table1: .word 35*32768/100 ;0.35的Q15定标.word 9*32768/10 ;0.9的Q15定标.word 0.word 0table2: .word 762*4096/100 ;7.62的Q12定标.word 184*16384/100 ;1.84的Q14定标.def _c_int00;------------------------------------------------------------------------------ .text_c_int00:stm #stack+10h, SP; stm #0x00a8, PMSTstm #0x0000, SWWSRSSBX FRCT ;求y=x1×x2=0.35×0.9=0.315STM #x1,AR2RPT #3MVPD table1,*AR2+STM #x1,AR4STM #x1+1,AR5MPY *AR4,*AR5,ASTH A,yRSBX FRCT ;求z=s1×s2=7.62×1.84=14.0208STM #s1,AR2RPT #1MVPD table2,*AR2+STM #s1,AR4STM #s1+1,AR5MPY *AR4,*AR5,ADST A,zNOPNOP.end二调试说明总结上机调试步骤和调试情况,说明调试中遇到的问题是如何解决的。

三总结定点数定标的方法,总结将十进制数转换为Q 定标的十六进制数的方法。

DSP实验报告3

DSP实验报告3

一种有效的语音信号变调算法及其DSP实现一、实验目的熟悉TMS320VC5402指令体系,熟悉实验开发板的硬件组成,并开发应用程序二、实验设备TMS320VC5402实验板一套,ICETEC_5100USB仿真器一套,电源一个三、实验内容1.使用到的硬件介绍TMS320VC5402是TI公司推出的新一代定点数字信号处理器,采用先进的修正哈佛结构,在片存储器和在片外围电路等硬件,具有功耗低、高度并行等优点。

EPM7128QC100-10是ALTRA公司生产的高性能基于EEPROM可编程逻辑器件,S系列支持JTAG调试,片内可使用门2500个,128个宏单元,10ns响应延迟,引脚电压3.3/5.0V可控等性能。

AD/DA转换使用的是TI公司生产的高性能CODEC芯片,支持模拟电路接口和商业应用,16位宽AD/DA转换,串行编程,89dB信噪比,最高转换频率22.05KHz。

2.程序算法本实验程序的目的是进行声音的变调处理(包括升调和降调),原理图见图1(图1)变调处理原理框图在频域中,如果平移距离过小,平移后的频谱就会有一部分相互交叠,从而使新合成的频谱与原频谱不一致,因而无法准确地恢复原时域信号,这种现象称为混叠。

原因是采样频率fs 太低,原模拟信号不是有限带宽的信号;采取的措施有(1)对非有限带宽的模拟信号,在采样之前先通过模拟低通滤波器滤去高频成分,使其成为带限信号。

这种处理称为抗混叠滤波预处理。

(2)满足采样定理,即fs>=2fh,一般采样频率大大高于信号最高频率DSP变调算法:方案一:利用FFT和IFFT变换,在频域内进行变调处理,算法主要流程是对每帧信号的FFT转换进行展开平移以改变信号的频率特性,图2显示的是升调1.35倍前后的信号谱低频部分(0-3KHz),可以清楚的看到信号的频率向高频方向移动,但噪声干扰明显增加,并能够听到截断噪声。

利用此方法的优点是能够在频率域上对信号进行处理,能够全面反映信号内部特征,在一帧内部可以得到满意的效果;缺点是处理过的数据进行IFFT变换,误差很大,并引入了很多噪音,并且FFT和IFFT在定点处理器中使用误差很大,选取的基点较少时误差不能承受,选取基点较多时,消耗很多的CPU 和RAM资源,不适宜实时处理。

DSP实验报告模版

DSP实验报告模版

我们做的dsp实验是实验一,实验二,实验三!模板上只有1 3 !2要自己仿照实验一写!不要弄错了!实验题目在另外一个共享表格里!实验一数据存储实验一、实验目的1. 掌握ccs的使用2. 掌握 tms320c54x 程序空间的分配;3. 掌握 tms320c54x 数据空间的分配;4. 能够熟练运用tms320c54x 数据空间的指令。

二、实验设备计算机,ccs 3.1版软件,dsp仿真器,e300实验箱,dsp-54xp cpu板。

三、实验步骤与内容1. 在进行 dsp实验之前,需先连接好仿真器、实验箱及计算机,连接方法如下所示:2. e300 底板的开关sw4 的第1位置on,其余位置off。

其余开关设置为off。

sw5全部置on;其余开关不做设置要求3. 上电复位在硬件安装完成后,确认安装正确、各实验部件及电源连接无误后,启动计算机,接通仿真器电源,此时,仿真器上的“红色指示灯”应点亮,否则dsp开发系统与计算机连接存在问题。

4. 运行ccs程序1) 待计算机启动成功后,实验箱220v电源置“on”,实验箱上电 2) 启动ccs3.1,进入ccs界面后,点击“debug—connect”3) 此时仿真器上的“绿色指示灯”应点亮,ccs正常启动,表明系统连接正常;否则仿真器的连接、jtag 接口或ccs 相关设置存在问题,这时需掉电检查仿真器的连接、jtag 接口连接是否正确,或检查ccs相关设置是否存在问题。

5. 成功运行ccs 程序后,首先应熟悉ccs的用户界面;6. 学会在ccs环境下创建工程文件、添加程序文件、编写程序、编译、装载、调试,学习如何使用观察窗口等。

7. 用“project\open”打开“c:\ti5000\myprojects\01_mem\ mem.pjt”.编译并装载“\ 01_mem\debug\mem.out”8.用“edit”下拉菜单中的“memory/fill”编辑内存单元,参数设置如下图:单击“ok”此时以0x1000 为起始地址的16个内存单元被修改成:0x00099.用“view”下拉菜单“memory”观察内存单元变化,输入要查看的内存单元地址,本实验要查看0x1000h~0x100fh 单元的数值变化,输入地址0x1000h;单击“ok”如下图所示:10. 点击“debug\go main”进入主程序,在程序中“加软件断点1”和“加软件断点2”处施加软件断点。

DSP实验报告最终版

DSP实验报告最终版
DSP实验报告
小组成员
一、实验说明:
为了保证生产质量、生产效率和生产的安全性,在钢铁企业的定期常规设备检修必不可少,在设备检修的过程中,为了保证检修人员的人身安全和设备的安全,通常需设置检修报警提示,如:检修警报、检修指示灯等。
本次实验设计钢铁企业的滚带传送装置的检修控制系统,需要检修时,首先停止传动皮带的工作,切换到检修警报,检修警报开始工作以保证检修人员和设备的安全。当检修工作完成后,停止警报装置,返回传动电机的正常工作状态。
南-绿
北-红
北-黄
北-绿
两个寄存器的地址均映射到2812DSP的扩展空间,CTRLR,DSP通过对该地址的写操作来修改二个寄存器各位的状态,当寄存器某位取‘1’时,相应提示灯被点亮,取‘0’则熄灭。当写入CTRLR的数据(8位有效值)的高两位为‘00’时,数据的低6位将写入EWR寄存器;高两位为‘01’时,数据的低6位将写入SNR寄存器。
图3 利用开关管对直流电动机进行PWM调速控制的原理图和输入输出电压波形 上图是利用开关管对直流电动机进行PWM调速控制的原理图和输入输出电压波形。图中,当开关管MOSFET的栅极输入高电平时,开关管导通,直流电动机电枢绕组两端有电压Us,t1秒后,栅极输入变为低电平,开关管截止,电动机电枢两端电压为0。T2秒后,栅极输入重新变为高电平,开关管的动作重复前面的过程。这样,对应着输入的高低电平,直流电动机电枢绕组两端的电压波形如图中所示。电动机的电枢绕组两端的电压平均值Uo为:
图中PWM输入对应ICETEK-CTR-A板上P4外扩插座第26引脚的S22信号,DSP将在此引脚上给出PWM信号开控制直流电机转速;图中的DIR输入引脚ICETEK-CTR-A板上P4外扩插座第29引脚的S14信号,DSP将在此引脚上给出高电平或低电平来控制直流电机的方向。从DSP输出的PWM信号和转向信号先经过2个与门和1个非门再与各个开关管的栅极相连。

DSP第三次实验报告

DSP第三次实验报告

数字信号处理实验报告第三次实验实验名称:FIR数字滤波器的设计一实验目的1.掌握用窗函数法,频率采样法及优化设计法设计FIR滤波器的原理及方法,熟悉相应的MATLAB编程。

2.熟悉线形相位FIR滤波器的幅频特性和相频特性。

3.了解各种不同窗函数对滤波器性能的影响。

二.实验内容1.N=45,计算并画出矩形窗,汉明窗,布莱克曼窗的归一化的幅度谱,并比较各自的主要特点。

实验程序:clear all;N=45;wn仁kaiser(N,O);wn 2=hammi ng(N);wn 3=blackma n( N);[h1,w1] = freqz(w n1,1);[h2,w2] = freqz(w n2,1);[h3,w3] = freqz(w n3,1);plot(w1/pi,20*log10(abs(h1)),'」,w2/pi,20*log10(abs(h2)),' --',w3/pi,20*log10(abs(h3)),':');grid;xlabel('归一化频率八pi'); ylabel('幅度/dB');title('三种窗口函数');legend('矩形窗','汉明窗’,布莱克曼窗',3);实验结果:..... 布莱克曼窗实验分析:比较各自的主要特点。

答:由图中可以看出,各窗口函数的主要特点是:矩形窗:主瓣宽度最小,但旁瓣分量幅度很大,带内带外波动也很大;汉明窗:主瓣宽度为矩形窗的两倍,但旁瓣幅度小,能量更集中在主瓣,带内外波动也小;布莱克曼窗:主瓣宽度最宽,为矩形窗的三倍,但是相应的其旁瓣更低,即旁瓣衰减 更大,能量最集中在主瓣,带内外波动最小。

注意矩形窗口的产生是利用凯塞窗wn 仁kaiser(N,O)产生的,因为凯塞窗的参数 beta 等于0时相当于矩形窗。

2.N=15,带通滤波器的两个同带边界分别是 3 1=0.3 ,冗3 2=0.5。

dsp实验报告

dsp实验报告

实验报告课程名称DSP原理与应用指导教师授课教师学院信息与通信工程学院 _ 专业电子信息工程班级/学号_ 学生姓名 _______ ______ _ 成绩__________________ ____目录实验 1 DSP软件开发工具CCS的使用 (3)一、实验目的 (3)二、实验仪器及工具 (3)三、实验内容 (3)四、实验步骤 (3)(一)、CCS软件仿真模式下库和可执行程序的开发步骤 (3)(二)、CCS软件仿真模式下调试工具和分析工具的使用 (4)(三)、CCS硬件仿真模式程序调试及VC5509A片内外存储器的查看 (10)五、思考题 (11)实验2 FIR算法的DSP实现 (16)一、实验目的 (16)二、实验仪器及工具 (16)三、实验内容 (16)四、实验步骤 (16)五、实验代码: (17)实验3 DSP系统的自启动 (23)一、实验目的 (23)二、实验仪器及工具 (23)三、实验内容 (24)四、实验步骤 (24)五、实验代码 (25)实验4 音频信号的FIR滤波 (27)一、实验目的 (27)二、实验仪器及工具 (28)三、实验内容 (28)四、实验步骤 (28)五、实验代码: (30)实验感想 (41)实验1 DSP软件开发工具CCS的使用一、实验目的1.掌握CCS的软件仿真和硬件仿真两种仿真模式。

2.掌握CCS软件开发工具的设置。

3.掌握CCS项目的创建和管理,程序编辑、编译、链接、加载、运行的软件开发步骤。

4.熟悉CCS调试工具和分析工具的使用。

二、实验仪器及工具计算机,安装Windows XP操作系统、TI 的TMS320C5000 DSP的开发软件CCS2.21;ICETEK-VC5509教学实验箱。

三、实验内容S软件仿真模式下库和可执行程序的开发步骤。

S软件仿真模式下调试工具和分析工具的使用。

S硬件仿真模式程序的调试及VC5509A片内外存储器的查看。

四、实验步骤(一)、CCS软件仿真模式下库和可执行程序的开发步骤1.点击桌面Setup CCS 2 ('C5000) 图标,按讲义给出的步骤设置CCS为软件访真模式,例如C55xx Functional Simulator,保存并退出,打开CCS 2 ('C5000) 集成开发环境。

dsp实验报告3

dsp实验报告3

§2.1 基础实验一、实验目的1. 掌握CCS3.3实验环境的使用;2. 掌握用C语言编写DSP程序的方法。

二、实验设备1. 一台装有CCS3.3软件的计算机;2. DSP实验箱的TMS320F2812主控板;3. DSP硬件仿真器。

三、实验原理浮点数的表达和计算是进行数字信号处理的基本知识;产生正弦信号是数字信号处理中经常用到的运算;C语言是现代数字信号处理表达的基础语言和通用语言。

写实现程序时需要注意两点:(1)浮点数的范围及存储格式;(2)DSP的C语言与ANSI C语言的区别。

四、实验步骤1.打开CCS3.3 并熟悉其界面;2.在CCS3.3环境中打开本实验的工程(Example_bASe.pjt)[位置为:/ Example_2812/ Example_math/ Example_base],编译并重建.out 输出文件,然后通过仿真器把执行代码下载到DSP芯片中;3.把X0 , Y0 和Z0添加到Watch窗口中作为观察对象(选中变量名,单击鼠标右键,在弹出菜单中选择“Add Watch Window”命令);4.选择view->graph->time/frequency…。

设置对话框中的参数: 其中“Start Address”设为“sin_value”,“Acquisition buffer size”和“Display Data size”都设为“100”,并且把“DSP Data Type”设为“32-bit floating point”,设置好后观察信号序列的波形(sin函数,如图);5.单击运行;6.观察三个变量从初始化到运算结束整个过程中的变化;观察正弦波形从初始化到运算结束整个过程中的变化;7.修改输入序列的长度或初始值,重复上述过程。

五.实验注意事项1.把代码载入硬件时注意操作顺序,要操作规范,以免烧坏硬件2.只有添加了可视窗口才可以看到图形3.读懂程序以后再按要求修改,才能完成要求4.注意观察修改程序的图形变化与之前的比较六.实验程序/** Program for convolve **/#include <math.h>int N1,N2; /*输入数组长度*/int n; /*输出数组长度*/int m,i,k;float x[20];float h[20];float y[20]; /*输出数组*/main(){N1=10; /* x 长度*/N2=10; /* h 长度*/n=N1+N2-1; /* 输出y 的长度*/ for(i=0;i<20;i++) /* 初始化数组*/{x[i]=0;h[i]=0;y[i]=0;}for(i=0;i<n;i++) /* 给x数组赋值*/{if(i<N1){x[i]=i;}else{x[i]=0;}}for(i=0;i<=n;i++) /* 给h数组赋值*/{if(i<N2){h[i]=1;}else{h[i]=0;}}for(i=0;i<n;i++) /* 计算卷积*/{for (k=0;k<=i;k++)y[i]=y[i]+h[k]*x[i-k];}while(1);七.实验结果八.实验小结通过本实验熟悉和使用CCS3.3实验环境,虽然还不是充分解读CCS3.3技巧,但有了这次自己动手,掌握其基本技巧。

DSP第三次实验报告

DSP第三次实验报告

数字信号处理实验报告第三次实验实验名称:FIR数字滤波器的设计一实验目的1.掌握用窗函数法,频率采样法及优化设计法设计FIR滤波器的原理及方法,熟悉相应的MATLAB编程。

2.熟悉线形相位FIR滤波器的幅频特性和相频特性。

3.了解各种不同窗函数对滤波器性能的影响。

二.实验内容1.N=45,计算并画出矩形窗,汉明窗,布莱克曼窗的归一化的幅度谱,并比较各自的主要特点。

实验程序:clear all;N=45;wn仁kaiser(N,O);wn 2=hammi ng(N);wn 3=blackma n( N);[h1,w1] = freqz(w n1,1);[h2,w2] = freqz(w n2,1);[h3,w3] = freqz(w n3,1);plot(w1/pi,20*log10(abs(h1)),'」,w2/pi,20*log10(abs(h2)),' --',w3/pi,20*log10(abs(h3)),':');grid;xlabel('归一化频率八pi'); ylabel('幅度/dB');title('三种窗口函数');legend('矩形窗','汉明窗’,布莱克曼窗',3);实验结果:..... 布莱克曼窗实验分析:比较各自的主要特点。

答:由图中可以看出,各窗口函数的主要特点是:矩形窗:主瓣宽度最小,但旁瓣分量幅度很大,带内带外波动也很大;汉明窗:主瓣宽度为矩形窗的两倍,但旁瓣幅度小,能量更集中在主瓣,带内外波动也小;布莱克曼窗:主瓣宽度最宽,为矩形窗的三倍,但是相应的其旁瓣更低,即旁瓣衰减 更大,能量最集中在主瓣,带内外波动最小。

注意矩形窗口的产生是利用凯塞窗wn 仁kaiser(N,O)产生的,因为凯塞窗的参数 beta 等于0时相当于矩形窗。

2.N=15,带通滤波器的两个同带边界分别是 3 1=0.3 ,冗3 2=0.5。

DSP课程实验报告

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三个分量的亮度求简单的平均值,将得到均值作为灰度值输出而得到灰度图。

DPS实验三实验报告

DPS实验三实验报告

DPS实验三实验报告实验三:dsp 的定时器和外中断定时器:一.实验目的1.通过实验熟悉vc5509a 的定时器;2.掌握vc5509a 定时器的控制方法;3.掌握vc5509a 的中断结构和对中断的处理流程;4.学会c 语言中断程序设计,以及运用中断程序控制程序流程。

二.实验设备计算机,icetek-vc5509-a 实验箱(或icetek 仿真器+icetek–vc5509-a 系统板+ 相关连线及电源)。

三.实验原理1.通用定时器介绍及其控制方法(详见spru595b.pdf):tms320vc5509a 内部有两个20 位通用定时器(gp):* 每个通用定时器包括:- 一个16 位的减计数的计数器tim;- 一个16 位的定时器周期寄存器prd;- 一个16 位的定时器控制寄存器tcr;- 一个16 位的定时器预定标寄存器pscr;* pscr 寄存器说明:15 10 9 6 5 4 3 0reserved psc reserved tddrpsc: 4 位的预定标值,与tim 共同组成20 位的定时计数器.tddr: 预定标周期寄存器(在需要时重装入psc 的值)tcr 寄存器说明(详见spru595b.pdf)2.中断响应过程(详见spru595b.pdf):外设事件要引起cpu 中断,必须保证:ier 中相应使能位被使能,ifr 相应中断也被使能。

在软件中,当设置好相应中断标志后,开中断,进入等待中断发生的状态;外设(如定时器)中断发生时,首先跳转到相应中断高级的服务程序中(如:定时器1 会引起tint 中断),程序在进行服务操作之后,应将本外设的中断标志位清除以便能继续中断,然后返回。

3.中断程序设计:- 程序中应包含中断向量表,vc5509a 默认向量表从程序区0 地址开始存放,根据ipvd 和 ipvh 的值确定向量表的实际地址。

- 注意观察程序中intr_init()函数的定义部分,其中ipvd 和ipvh 的值都为0x0d0;同时观察配置文件icetek–vc5509-ae.cmd 中的vect 段描述中o=0x0d000。

DSP实验报告_百度文库(精)

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实验报告 

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 的一个值。

数字信号处理实验报告3 DSP信号与系统实验报告 信号加窗及谱分析 电子科技大学 2018版

数字信号处理实验报告3 DSP信号与系统实验报告 信号加窗及谱分析 电子科技大学 2018版

电 子 科 技 大 学实 验 报 告学生姓名:Nickel 学号:20XXXXXXXXX 指导教师:杨錬一、实验室名称:数字信号处理实验室 二、实验项目名称:信号加窗及谱分析 三、实验原理:1、信号的时域加窗自然界的信号大多是无限长的(随时间无限延伸),而实际的数字信号处理系统只能处理有限长的信号,所以在对它们进行处理之前,必须对输入信号进行分段,一段段放入系统中进行处理。

具体做法是从信号中截取一个时间片段,然后用截取的信号时间片段进行周期延拓处理,得到虚拟的无限长的信号,然后就可以对信号进行傅里叶变换、相关分析等数学处理。

其中对信号分段的过程称为“时域加窗”。

时域加窗的实质为[][][]^x n x n w n =(3.1)其中,[]^x n 为分段后的有限长信号,[]x n 为原始的无限长或很长的信号,[]w n 为窗函数。

1.1 时域加窗对信号频域的改变时域加窗后,根据DTFT 的时域相乘频域相卷积性质,变换信号的频域上表现为周期卷积,即()()()()^12j j j X e X e W e d πωθωθπθπ--=⎰(3.2)这种卷积在一定程度上,会改变信号原频谱的特性,图3.1给出了理想低通滤波器在时域发生截断,频谱的卷积过程。

图3.1 理想低通滤波的频域卷积过程1.2 窗的类型通常,我们用得最多的是矩形窗(如上面示例中采用的窗),矩形窗就好像我们屋子里的窗口一样,直接对你想观察的数据进行截取。

实际的信号处理过程中,矩形窗会在其边缘处突然将信号截断,窗外时域信息全部消失,导致在频域增加了频率分量,即频谱泄漏(如图3.1所示,理想的低通滤波器频谱中通带内和阻带内由于周期卷积产生了其他频率成分)。

避免泄漏的最佳方法是满足整周期采样条件,但实际中是不可能做到的。

对于非整周期采样的情况,必须考虑如何减少加窗时造成的泄漏误差,主要的措施是使用合理的加窗函数,使信号截断时的锐角钝化,从而使频谱的扩散减到最少。

dsp实验报告 3

dsp实验报告 3

实验三PWM实验:一、实验目的了解TMS320F28335 的PWM 模块原理二、实验设备(1)装有Windows 的PC 机一台;(2) XDS510 仿真器一套;(3) YX-F28335 开发板一套;(4) 示波器一台;三、实验步骤(1) 首先按照实验一配置CCS4.1.2 软件并打开;(2) 接着把仿真器的USB 与电脑进行连接,将仿真器的另一端JATG 端插到YX-F28335 开发板的JATG 针处;(3) Target->Launch TI Debug 后,点击Target->Connect Target。

(4) 由于工程已经是一个可烧写的可执行文件,所以直接在CCS 中点击Target->LoadProgram……命令,在文件lab24-PWM 下加载Debug 目录下的.out 可执行文件;(5) 在CCS 菜单栏点击Target->Run,之后用户打开示波器,将示波器的地线接到开发板的地线端,另一端接到YX-F28335 开发板J4的第1 脚。

四、实验原理脉冲宽度调制(PWM)是一种对模拟信号电平进行数字编码的方法,其根据相应载荷的变化来调制晶体管栅极或基极的偏置,来实现开关稳压电源输出晶体管或晶体管导通时间的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。

PWM 的控制方法:采样控制理论中有一个重要结论:冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同。

PWM 控制技术就是以该结论为理论基础,对半导体开关器件的导通和关断进行控制,使输出端得到一系列幅值相等而宽度不相等的脉冲,用这些脉冲来代替正弦波或其他所需要的波形。

按一定的规则对各脉冲的宽度进行调制,既可改变逆变电路输出电压的大小,也可改变输出频率。

五、实验过程1、测量波形(电路连接)并在示波器上显示:的转动情况。

东南大学系统实验(DSP)实验报告

东南大学系统实验(DSP)实验报告

系统实验(DSP)实验报告一、 实验题目⑴ 图像的锐化处理(高通滤波处理)处理模板如下:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--+--=004100αααααM 25.0=α 对应数学表达式:()[])1,(),1()1,(),1(),(41),(++++-+--+=y x f y x f y x f y x f y x f y x g αα⑵ 图像的边缘检测方向方向和y x 的梯度分别为:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=∆10110110131xf ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=∆11100011131y f 总梯度幅度yx f f f ∆+∆=∆[,1(),1()1,1()1,1(),1()1,1(||31-------+++++-+=∆yx f y x f y x f y x f y x f y x f fx[,1()1,()1,1()1,1()1,()1,1(||31+-+-+---++-+--=∆yx f y x f y x f y x f y x f y x f f y⎩⎨⎧≥∆=elseT f ify x g 01),(二、 实验原理为了更加通俗地描述图像处理方法,这里引入模板的概念。

模板就是一个矩阵,模板大小通常为2⨯2、3⨯3,模板也好比一个窗口,将模板窗口覆盖在图像上,窗口覆盖到的象素就是将要处理的象素,而象素所对应的模板矩阵元素的值就是加权值,模板运算就是将模板矩阵元素与对应的象素值相乘并求和。

如下图所示,模板为3⨯3大小,对应到图像上窗口亦为3⨯3大小,窗口中有九个象素与模板相对应。

模板第一行11m 与)1,1(--y x f 、12m 与)1,(-y x f 、13m 与图像模板示意图)1,1(-+y x f 相对应,模板第二、三行依此类推。

根据模板运行规则,3⨯3模板对应的表达式数学为:)1,1()1,()1,1(),1(),(),1()1,1()1,()1,1(),(333231232221131211++⋅++⋅++-⋅++⋅+⋅+-⋅+-+⋅+-⋅+--⋅=y x f m y x f m y x f m y x f m y x f m y x f m y x f m y x f m y x f m y x g⑴、图像的锐化处理锐化式可以用模板表示为:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--+--=004100αααααM 对应的数学表达式是:()[])1,(),1()1,(),1(),(41),(++++-+--+=y x f y x f y x f y x f y x f y x g αα⑵、图像的边界检测边界特点:沿边界走向特性变化比较缓慢,垂直于边界走向特性变化比较剧烈。

【最新】DSP实验报告模版-实用word文档 (20页)

【最新】DSP实验报告模版-实用word文档 (20页)

本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! ==DSP实验报告模版我们做的DSP实验是实验一,实验二,实验三!模板上只有1 3 !2要自己仿照实验一写!不要弄错了!实验题目在另外一个共享表格里!实验一数据存储实验一、实验目的1. 掌握CCS的使用2. 掌握 TMS320C54X 程序空间的分配;3. 掌握 TMS320C54X 数据空间的分配;4. 能够熟练运用TMS320C54X 数据空间的指令。

二、实验设备计算机,CCS 3.1版软件,DSP仿真器,E300实验箱,DSP-54XP CPU板。

三、实验步骤与内容1. 在进行 DSP实验之前,需先连接好仿真器、实验箱及计算机,连接方法如下所示:2. E300 底板的开关SW4 的第1位置ON,其余位置OFF。

其余开关设置为OFF。

SW5全部置ON;其余开关不做设置要求3. 上电复位在硬件安装完成后,确认安装正确、各实验部件及电源连接无误后,启动计算机,接通仿真器电源,此时,仿真器上的“红色指示灯”应点亮,否则DSP开发系统与计算机连接存在问题。

4. 运行CCS程序1) 待计算机启动成功后,实验箱220V电源置“ON”,实验箱上电 2) 启动CCS3.1,进入CCS界面后,点击“Debug—Connect”3) 此时仿真器上的“绿色指示灯”应点亮,CCS正常启动,表明系统连接正常;否则仿真器的连接、JTAG 接口或CCS 相关设置存在问题,这时需掉电检查仿真器的连接、JTAG 接口连接是否正确,或检查CCS相关设置是否存在问题。

5. 成功运行CCS 程序后,首先应熟悉CCS的用户界面;6. 学会在CCS环境下创建工程文件、添加程序文件、编写程序、编译、装载、调试,学习如何使用观察窗口等。

7. 用“Project\open”打开“C:\ti5000\myprojects\01_mem\ mem.pjt”.编译并装载“\ 01_mem\Debug\mem.out”8.用“Edit”下拉菜单中的“Memory/Fill”编辑内存单元,参数设置如下图:单击“OK”此时以0x1000 为起始地址的16个内存单元被修改成:0x00099.用“View”下拉菜单“Memory”观察内存单元变化,输入要查看的内存单元地址,本实验要查看0x1000H~0x100FH 单元的数值变化,输入地址0x1000H;单击“OK”如下图所示:10. 点击“Debug\Go main”进入主程序,在程序中“加软件断点1”和“加软件断点2”处施加软件断点。

DSP实验报告 西电

DSP实验报告 西电

实验一算法:dot_product实验目的针对ADSP-Blacfin609DSP,利用简单的C程序实现矩阵的相乘,熟悉CCES编程环境实验装置计算机,电源,信号发生器,开发板,仿真器,示波器。

和debug调试功能。

实验步骤启动CCES,建立一个工程(Project);添加文件,编写程序,编译程序,如有错误,进行调整修改;用调试器来评估用C语言所编写代码的性能。

实验效果在console窗口可以看到两个矩阵相乘的结果。

实验心得通过本次试验让我掌握了利用简单的C程序实现俩个矩阵相乘的详细操作过程以及从中发现了自己还存在的一些问题。

实验过程中,在实验老师和同学的帮助下克服了许多困难,从中也有了自己的收获。

实验加深了我对CCES编程环境的熟悉度同时让我熟练掌握debug调试功能的操作方法。

总之,这是一次非常有意义有价值的实验,在实验中我获益良多。

下次如果有机会希望多参加这样的试验,尤其是实验老师很耐心很负责,不厌其烦的给我们讲解实验过程中不懂的细节。

实验二算法:fir滤波实验目的加深对fir滤波这种滤波方法的理解。

实验装置计算机,电源,信号发生器,开发板,仿真器,示波器。

实验任务1对信号的采集和输出2对信号进行滤波处理实验步骤1启动CCES,建立一个工程(Project),编写程序;2对给定的数据文件dsp2.dat数据文件(带噪声)并调用已给的fir相关函数进行fir滤波;3滤波结束后生成新的dsp2New.dat文件,在matlab中进行plot操作可看到滤波效果是否实现。

实验原理1,Fir滤波器原理Fir滤波器又叫有限长单位冲击响应滤波器。

输入序列X(n),输出序列Y(n),fir 滤波器的实现在于序列的卷积算法:Y(n)=h(n)*X(n)2,Fir滤波器的设计方法设计方法有俩种:窗函数设计法和频率抽样设计法实验结果正确连接器件之后,启动CCES,建立一个工程后,加入实验程序,然后进行调试,确定没有错误之后运行程序,利用信号发生器产生输入信号,并对所得图像进行采集,调用已给的fir相关函数进行fir滤波,滤波之后得到一个新的数据文件。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

DSP第三次实验报告实验五、混合编程实验六、数字图像处理试验学院:信息工程学院班级:08级电子信息工程2班姓名:肖秀学号:2008550503指导老师:姚志强完成日期:2011.11.22实验五混合编程一、实验目的1. 学习使用实时运行库;2. 熟悉用C和汇编混合编程的方法;3. 掌握混合编程的调试方法。

二、实验环境1. 集成开发环境Code Composer Studio2.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. 看懂代码,比较结果,并画出程序流程图;[C程序代码]#include <stdio.h>#include "mix.h"int mix_func_c(int *wl, int *wr, int val) // C函数{int i, val_min, tmp[8];for(i=0; i<8; i++) //乘法tmp[i] = wl[i] * wr[i];val_min = val;for(i=0; i<8; i++) //最小值{if(val_min>tmp[i])val_min = tmp[i];}return val_min; //最小值作为程序的返回值}void main(){ int val, i, wl[8], wr[8];int min_asm, min_c;//寄存器设置asm(" stm #0, SWWSR");asm(" stm #0x00A0, PMST");// 汇编程序里面的最小值 min_asm=1900;// C程序里面的最小值 min_c=2000;//调用系统函数 call system functionval = -100;val = abs(val);//绝对值printf("val = %d\n", val); //输出val//call asm function //调用汇编程序for(i=0; i<8; i++) ?//表赋初值 0 1 2 3 4 5 6 7// 0 1 3 5 7 9 11 13{wl[i]=i;wr[i]=2*i+1;}min_asm = mix_func(wl, wr, val); // 汇编最小值printf("val = %d\n", min_asm); //输出min_c = mix_func_c(wl, wr, val); // C 最小值printf("val = %d\n", min_c); //输出return;}[汇编程序代码].mmregs;------------------------------------------------;int mix_func(int *wl, int *wr, int val);{; int i, val_min, tmp[8];;------------------------------------------------var_tmp .set 0;ST1off_m .set -8off_p .set 8frame_size .set 9;return addressarg_wr .set frame_size+1arg_val .set frame_size+2.global _mix_func ;说明:外部变量非私有.text; 在变量名前加一下划线"_"_mix_func:pshm ST1frame #off_mssbx OVM;置 1;如果 OVM位为1,则 80 0000 0000h 的绝对值为 00 7FFF FFFFh ;如果 OVM位为0,则 80 0000 0000h 的绝对值为 80 0000 0000h;表赋值----------------------------; for(i=0; i<8; i++); tmp[i] = wl[i] * wr[i];;------------------------------------------------ stm #8-1, BRCmvdk *SP(arg_wr), AR3 ;AR3=wrmvmm SP, AR4 ;AR4=tmpstlm A, AR2 ;AR2=wlrptb tmp_loop-1mpy *AR2+, *AR3+, Astl A, *AR4+tmp_loop:;查找最小值---------------------------------------; val_min = val;; for(i=0; i<8; i++); {; if(val_min>tmp[i]); val_min = tmp[i];; };; return val_min;;};------------------------------------------------ ld *SP(arg_val), Amvmm SP, AR2 ;AR2=tmpstm #8-1, BRCrptb compare_loop-1ld *AR2+, Bmin Acompare_loop:;比较???frame #off_ppopm ST1ret四、程序流程图:五、实验思考题1、此程序实现的功能是什么?答:此程序实现的函数功能是求最小值。

分别可以用C语言和汇编语言两种编写方法。

2、C语言与汇编语言是如何调用的?有何不同?编译器会自动在标识符的开头加上下划线,因此在汇编程序中访问C函数的变量和函数,只需要在此变量前加上下划线,例如,名为“x”的C变量在汇编程序中的名字为“_x”。

对于志在汇编程序中使用的标识符,就不必在前面加下划线。

3、他们的参数是如何传递的?答:汇编程序调用C函数,第一个参数(最左边的参数)必须置入累加器A 中,其他参数必须按逆序压入堆栈。

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

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

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

4. 关于堆栈保护在子程序addfun中,由于需要改变ST1中的数值,所以在子程序入口处先用语句pshm ST1 ; ST1的值在堆栈中保护起来;在子程序返回前,再用语句popm AR1 ;恢复ST1原来的值。

七、实验心得本次实验相对于前面两次试验来说又增加了一定的难度,可是在助教的帮助下还是顺利地完成了试验。

这次试验使我对DSP有了进一步的了解,更加熟悉了ccs软件的使用。

学习使用了实时运行库,熟悉用C和汇编混合编程的方法,弄懂了怎样用C调用汇编,怎样用汇编调用C语言,例如,在汇编中调用C函数就要加上相应的下划线,同时也掌握了混合编程的调试方法。

虽然现在的我还不具备混合编写程序的能力,但我相信持之以恒的努力必有效果。

实验六数字图象处理实验一、实验目的1. 学习使用实时运行库并了解数字图象处理的基本原理;2. 熟悉用C和汇编混合编程的方法及混合编程的调试方法;3. 学习灰度图象反色处理技术及其二值化处理技术。

二、实验环境1. 集成开发环境Code Composer Studio2.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.修改程序,对图像做其它处理(如反向显示,上下颠倒等),记录实验数据及结果,写出报告。

相关文档
最新文档