dsp实验报告4
dsp原理与应用实验报告总结
dsp原理与应用实验报告总结DSP(Digital Signal Processing)数字信号处理是利用数字技术对信号进行处理和分析的一种方法。
在本次实验中,我们探索了DSP的原理和应用,并进行了一系列实验以验证其在实际应用中的效果。
以下是对实验结果的总结与分析。
实验一:数字滤波器设计与性能测试在本实验中,我们设计了数字滤波器,并通过性能测试来评估其滤波效果。
通过对不同类型的滤波器进行设计和实现,我们了解到数字滤波器在信号处理中的重要性和应用。
实验二:数字信号调制与解调本实验旨在通过数字信号调制与解调的过程,了解数字信号的传输原理与方法。
通过模拟调制与解调过程,我们成功实现了数字信号的传输与还原,验证了调制与解调的可行性。
实验三:数字信号的傅里叶变换与频谱分析傅里叶变换是一种重要的信号分析方法,可以将信号从时域转换到频域,揭示信号的频谱特性。
本实验中,我们学习了傅里叶变换的原理,并通过实验掌握了频谱分析的方法与技巧。
实验四:数字信号的陷波滤波与去噪处理陷波滤波是一种常用的去除特定频率噪声的方法,本实验中我们学习了数字信号的陷波滤波原理,并通过实验验证了其在去噪处理中的有效性。
实验五:DSP在音频处理中的应用音频处理是DSP的一个重要应用领域,本实验中我们探索了DSP在音频处理中的应用。
通过实验,我们成功实现了音频信号的降噪、均衡和混响处理,并对其效果进行了评估。
实验六:DSP在图像处理中的应用图像处理是另一个重要的DSP应用领域,本实验中我们了解了DSP在图像处理中的一些基本原理和方法。
通过实验,我们实现了图像的滤波、边缘检测和图像增强等处理,并观察到了不同算法对图像质量的影响。
通过以上一系列实验,我们深入了解了DSP的原理与应用,并对不同领域下的信号处理方法有了更深刻的认识。
本次实验不仅加深了我们对数字信号处理的理解,也为日后在相关领域的研究与实践提供了基础。
通过实验的结果和总结,我们可以得出结论:DSP作为一种数字信号处理的方法,具有广泛的应用前景和重要的实际意义。
DSP技术与应用实验报告精品
实验名称:实验三向量文件的编写及多个文件的链接实验四汇编语言程序设计实验时间:2015年5月14日下午实验人:谢兴轮2012141451129实验三向量文件的编写及多个文件的链接一、实验目的1、编写复位向量文件vectors。
Asm2、多个文件的链接3、编写复位和中断向量文件4、仿真外部中断二、实验条件Lab3.asm和lab3.cmd文件三、实验内容1、打开桌面CCS2(‘5000)图标,启动CCS集成开发环境。
2 、创建一个新工程;并将lab3.sam和lab3cmd添加入工程3、编写复位向量文件,vectors.asm并将文件添加到工程中。
4、为了将lab3和vectors 两个文件相连接,参看3.6.4节的说明,对lab3.sam和lab3.cmd文件进行必要的修改5、用工程文件对工程中所有文件进行汇编编译链接生成输出文件6、加载程序并单步执行lab3.out文件,仔细观察复位向量的作用7、参看教材4.4中内容,仿真外部中断INT2:①在lab3.asm中,增加一段中断服务子程序INT2,其内容是将累加器A 变为负。
②修改lab3.sam,开放INT2中断③修改vecotrs.asm增加INT2中断向量④编写仿真外部中断用的数据文件:文件名为INT2.dat,每隔5个时钟周期向CPU发出一次中断请求,直到仿真结束。
⑤对工程中所有文件进行重新汇编,链接生成新的输出文件。
⑥执行前,从Tool菜单中选择,用鼠标要链接pin name 再按connect按钮,选择输入文件INT2与INT2引脚相连,单击打开按钮⑦加载程序并利用单步执行程序,注意观察中断向量在中断执行中的作用。
四、实验分析源程序分析************************************************* lab3.asm y= a1*x1+a2*x2+a3*x3+a4*x4 *************************************************.title "lab3.asm".mmregsSTACK .usect "STACK",10h ;allocate space for stack.bss x,4 ;allocate 9 word for variates.bss a,4.bss y,1.def start.def INT_2.data.mmregstable: .word 1,2,3,4 ;data follows ....word 8,6,4,2.text ;code follows ...start: STM #STACK+10h,SP ;set stack pointerSTM #table,AR1 ;AR1 point to tableSTM #x,AR2 ;AR2 point to xSTM #7,AR0LD #40h,ASTM #0,SWWSRRSBX INTMSTM #04h,IMRloop: LD *AR1+,A ;move 8 valuesSTL A,*AR2+ ;from program memoryBANZ loop,*AR0- ;into data memoryCALL SUM ;call SUM subrotine end: B endSUM: STM #a,AR3 ;The subrotine lmplememt STM #x,AR4 ;multiply--accumulateRPTZ A,#3MAC *AR3+,*AR4+,ASTL A,*AR2RETINT_2: NEG ARETE.end***************** vectors.asm ** Reset vector *****************.title "vectors.asm".ref start.sect ".vecs"B start.ref INT_2.sect ".vecs1"B INT_2.end(+100) rpt EOS ;中断时钟为100个周期。
dsp实验报告4讲解
实验 2.4 外中断一.实验目的1.通过实验熟悉 VC5509A 的中断响应过程。
2.学会 C 语言中断程序设计,以及运用中断程序控制程序流程。
二.实验设备计算机, ICETEK-VC5509-A 实验箱及电源。
三.实验原理1.中断及中断处理过程:⑴中断简介:中断是一种由硬件或软件驱动的信号, DSP 在接到此信号时,将当前程序悬挂起来,转去执行另外一个任务, 这个任务我们称为中断服务程序 (ISR )。
TMS320C55X DSP 可支持32个ISR ,可由硬件或软件触发。
⑵DSP 处理中断的步骤:① 接收中断请求 :由软件或硬件发出。
② 响应中断请求 :对于可屏蔽中断,需要满足若干条件,才发生响应;而对于不可屏蔽中断, 则立即响应。
③ 准备执行中断服务程序。
- 完成当前正在执行的指令;将进入流水线但还未解码的指令清除。
- 自动保存若干寄存器的值到数据堆栈和系统堆栈。
- 取得用户定义的中断向量表中当前中断向量,中断向量指向中断服务程序入口。
④ 执行中断服务程序。
中断服务程序包含中断返回指令, 这样返回时可以出栈以前保存的关 键寄存器数据,从而恢复中断服务程序执行前的现场。
⑶中断向量表:中断向量表的构成请参见 TI 的文档 sprs295d.pdf 之 3.11 节。
中断向量表的地址可以由用户指定。
⑷外中断:⑵ 构造中断向量表:可以用汇编语言构造,编写一个汇编语言模块程序 vector.asm 。
⑶ 修改链接命令文件:在 MEMORY 小节中开辟单独的地址段用以存放中断向量表;在 SECTIONS 小节中指定 .vectors 段到前步开设的内存段中。
⑷ 主程序中进行初始化设置:定位中断向量表、使能中断、清中断等。
4.实验程序流程图:TMS320C5509 可以响应2.ICETEK-CTR 板的键盘接口: 显示 /控制模块 ICETEK-CTR 每个扫描码结束后保存,同时向INT0-INT4 五个外中断。
DSP第四次实验报告
DSP第四次实验报告实验七、CODEC(模数/数模转换)实验八、UART串口通信实验学院:信息工程学院班级:08级电子信息工程2班姓名:肖秀学号:2008550503指导老师:姚志强完成日期:2011.11.26实验七、CODEC(模数/数模转换)一、实验目的1. 熟悉DSK板的结构和设置(DSK板注意事项在第2页);2. 掌握利用CODEC进行AD/DA转换;3. 熟悉McBSP, DMA的使用;4. 掌握C和汇编混合编程封装具体实现。
二、实验设备1.集成开发环境CCS2.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的安装目录)。
DSP实验报告(综合)
实验报告||实验名称 D SP课内系统实验课程名称DSP系统设计||一、实验目的及要求1. 掌握用窗函数法设计FIR数字滤波器的原理和方法。
熟悉线性相位FIR 数字滤波器特性。
了解各种窗函数对滤波器特性的影响。
2. 掌握设计IIR数字滤波器的原理和方法。
熟悉IIR数字滤波器特性。
了解IIR数字滤波器的设计方法。
3.掌握自适应数字滤波器的原理和实现方法。
掌握LMS自适应算法及其实现。
了解自适应数字滤波器的程序设计方法。
4.掌握直方图统计的原理和程序设计;了解各种图像的直方图统计的意义及其在实际中的运用。
5.了解边缘检测的算法和用途,学习利用Sobel算子进行边缘检测的程序设计方法。
6.了解锐化的算法和用途,学习利用拉普拉斯锐化运算的程序设计方法。
7.了解取反的算法和用途,学习设计程序实现图像的取反运算。
8.掌握直方图均衡化增强的原理和程序设计;观察对图像进行直方图均衡化增强的效果。
二、所用仪器、设备计算机,dsp实验系统实验箱,ccs操作环境三、实验原理(简化)FIR:有限冲激响应数字滤波器的基础理论,模拟滤波器原理(巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器、贝塞尔滤波器)。
数字滤波器系数的确定方法。
IIR:无限冲激响应数字滤波器的基础理论。
模拟滤波器原理(巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器、贝塞尔滤波器)。
数字滤波器系数的确定方法。
、自适应滤波:自适应滤波器主要由两部分组成:系数可调的数字滤波器和用来调节或修正滤波器系数的自适应算法。
e(n)=z(n)-y(n)=s(n)+d(n)-y(n)直方图:灰度直方图描述了一幅图像的灰度级内容。
灰度直方图是灰度值的函数,描述的是图像中具有该灰度值的像素的个数,其横坐标表示像素的灰度级别,纵坐标是该灰度出现的频率(像素个数与图像像素总数之比)。
图像边缘化:所谓边缘(或边沿)是指其周围像素灰度有阶跃变化。
经典的边缘提取方法是考察图像的每个像素在某个邻域内灰度的变化,利用边缘临近一阶或二阶方向导数变化规律,用简单的方法检测边缘。
DSP实验报告(4)(精)
汕头大学实验报告学院: 工学院系: 电子系专业: 电子信息工程年级: 2008 姓名: 张虎学号: 08141078 实验时间: 2011-4-6实验二(一)实验目的1、了解DSP 结构;2、熟悉CCS 开发环境;3、熟悉DSP 54X EVM板的硬件环境;4、掌握DSP 54X 汇编寻址方式;5、熟悉汇编语言的逻辑和算术运算;6、了解DSP 54X中断原理及中断向量表的建立;7、了解LED 显示原理;8、掌握DSP 54X I/0寻址方式。
(二)实验原理1、DSP 54X的寻址方式,指令的寻址方式是指:当硬件执行指令时,寻找指令所指定的参与运算的操作数的方法; 2、DSP 54X的算术指令和逻辑运算指令; 3、DSP 54X的中断系统。
(三)实验内容与基本要求1、汇编寻址方式:(1) DSP 54X汇编初始化程序;(2) DSP 54X各种汇编寻址方式的源程序;(3) DSP 54X 汇编语言的逻辑和算术运算源程序。
要求:运行程序,通过CCS —>View—>CPU Registers, 观察各寄存器的值,通过CCS —>View—>Memory, 观察片内各数据地址的值。
2、I/O寻址及硬件中断实验:(1) DSP初始化;(2)中断寄存器初始化;(EINT1)(3)中断向量表;(4)外部中断1服务程序;(5)信号灯控制程序。
要求:通过I/O总线输出信号灯控制信号,由外部中断模拟急救车到达。
正常情况下,东西,南北信号灯红绿黄交替变换,有急救车到达(有按键产生外部中断)东西、南北信号灯全变红,以便急救车通过,通过后,东西,南北信号灯恢复急救车到来前的状态。
(四)实验程序框图寻址方式:主程序1 初始化程序逻辑运算实验框图:主程序2 初始化程序I/O寻址及硬件中断实验框图:(五)问题实验二:汇编程序寻址方式实验1.寻址实验:解释每一个语句。
并总结实验过程中出现的问题,分析其原因。
DSP实验手册 实验四 数字I/O实验
实验四数字I/O实验一. 验目的:1.悉CCS的开发环境;2.掌握DSP扩展数字I/O口的方法;3.了解SEED-DEC5416的硬件系统;4.掌据交通灯逻辑在DSP中的实现。
二. 实验内容:1. DSP的初始化;2. SEED-DEC5416的初始化;3. UART的初始化;4.交通灯实现程序。
三. 实验背景知识:1. DSP系统中数字I/O的实现:DSP系统中一般只有少量的数字I/O资源,而一些控制中经常需要大量的数字量的输入与输出。
因而,在外部扩展I/O资源是非常有必要的。
在扩展I/O资源时一般占用DSP的I/O空间。
其实现方法一般有两种:其一为采用锁存器像74LS273、74lS373之类的集成电路;另一种是采用CPLD在其内部做锁存逻辑,我们采用的是后者。
2. DTK5416系统中数字IO所占的资源如下:交通灯控制口地址为:0x8000(I/O空间);其说明如下:D11 D10 D09 D08D07D06D05D04D03D02 D01 D00NR NY NG ER EY EG SR SY SG WR WY WG WG:方向西的绿灯控制位;WY:方向西的黄灯控制位;WR:方向西的红灯控制位;SG:方向南的绿灯控制位;SY:方向南的黄灯控制位;SR:方向南的红灯控制位;EG:方向东的绿灯控制位;EY:方向东的黄灯控制位;ER:方向东的红灯控制位;NG:方向北的绿灯控制位;NY:方向北的黄灯控制位;NR:方向北的红灯控制位;当以上各位置“1”时,点亮各控制位所代表的交通灯状态的LED灯。
LED控制口地址为:0x8002(IO空间):其说明如下:D7 D6 D5 D4 D3 D2 D1 D0OUT7 OUT6 OUT5OUT4OUT3OUT2OUT1 OUT0向控制位OUT[7:0]写入“1”时,点亮相应位置的LED灯。
注:8个LED灯是位于SEED-CPLD板上的,其控制线是通过DTK_IO单元模块转接的,然后经SEED-CPLD单元模块驱动后再点亮LED灯的。
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应用系统设计实验报告一、设计任务通过矩阵键盘的输入,利用TMS320LF2407的事件管理模块,可以简单有效的控制步进电机的停转、转速和转向。
系统中设计了相应的人机界面,进行相应变量的显示、操作即可在液晶上实时显示电机当前运行状态。
利用拓展端口控制外围设备的方法,掌握使用2407DSP通用计时器的控制原理及中断服务程序的编程方法;了解蜂鸣器发生原理和音乐发生方法;了解步进电机的使用方法;了解液晶显示控制原理及编程方法及小键盘的应用。
该实验设计分成4个模块完成:•液晶模块•键盘模块•电机模块•其它模块(蜂鸣器、点阵)具体化即:1. DSP芯片接受矩阵键盘的输入。
2. DSP芯片对LED灯,蜂鸣器控制模块。
3. DSP芯片对相应信息的反馈,即:LCD液晶显示。
4. DSP控制电机正反转以及对电机速度调节。
二、系统构成及子模块原理:1.硬件原理方框图1所示,该系统由LCD液晶显示模块、矩阵键盘模块、电机模块及包含蜂鸣器和点阵的模块组成。
图1硬件原理方框图2:系统总流程图:3:子模块工作原理a.键盘输入:键盘在信号采集系统中是一个很关健的部件,它能向系统输入数据、传送命令等功能,是人工干预系统的主要手段,键盘输入功能主要提供控制信号和数据的输入。
键盘的扫描码由DSP的I/O扩展地址0x8001给出,当有键盘输入时,读此端口得到扫描码,当无键按下时读此端口的结果为0。
各按键的扫描码排列如下所示。
0x18,0x14,0x12,0x11 0 1 2 30x28,0x24,0x22,0x21 4 5 6 70x48,0x44,0x42,0x41 8 9 A B0x88,0x84,0x82,0x81 C D E F扫描码对应键值也即,当读8001H端口时,如果其值为‘18H’,则表示键盘按下的键是“0”,如果其值为‘0’,则表示没有键按下。
将键盘扫描得到的数据存入内存,然后根据数据值就能够确定所输入的键,通过映射关系,就能过将每一个键设为特定的功能。
dsp信号处理实验报告
dsp信号处理实验报告DSP信号处理实验报告一、引言数字信号处理(DSP)是一种将连续信号转换为离散信号,并对其进行处理和分析的技术。
在现代通信、音频处理、图像处理等领域中,DSP技术被广泛应用。
本实验旨在通过对DSP信号处理的实践,加深对该技术的理解与应用。
二、实验目的本实验旨在通过对DSP信号处理的实践,掌握以下内容:1. 学习使用DSP芯片进行信号采集和处理;2. 理解离散信号的采样和重构过程;3. 掌握常见的DSP信号处理算法和方法。
三、实验原理1. 信号采集与重构在DSP信号处理中,首先需要对模拟信号进行采样,将连续信号转换为离散信号。
采样过程中需要注意采样频率的选择,以避免混叠现象的发生。
采样完成后,需要对离散信号进行重构,恢复为连续信号。
2. DSP信号处理算法DSP信号处理涉及到多种算法和方法,如滤波、频谱分析、时域分析等。
其中,滤波是一种常见的信号处理方法,可以通过滤波器对信号进行去噪、增强等处理。
频谱分析可以将信号在频域上进行分析,了解信号的频率成分和能量分布。
时域分析则关注信号的时序特征,如幅值、相位等。
四、实验步骤1. 信号采集与重构在实验中,我们使用DSP芯片进行信号采集与重构。
将模拟信号输入DSP芯片的模拟输入端口,通过ADC(模数转换器)将模拟信号转换为数字信号。
然后,通过DAC(数模转换器)将数字信号转换为模拟信号输出。
2. 滤波处理为了演示滤波处理的效果,我们选择了一个含有噪声的信号进行处理。
首先,使用FIR滤波器对信号进行低通滤波,去除高频噪声。
然后,使用IIR滤波器对信号进行高通滤波,增强低频成分。
3. 频谱分析为了对信号的频率成分和能量分布进行分析,我们使用FFT(快速傅里叶变换)算法对信号进行频谱分析。
通过观察频谱图,可以了解信号的频率特性。
4. 时域分析为了对信号的时序特征进行分析,我们使用时域分析方法对信号进行处理。
通过计算信号的均值、方差、峰值等指标,可以了解信号的幅值、相位等特性。
DSP实验报告(四)
实验四 用窗函数设计FIR 滤波器一、实验目的1、熟悉FIR 滤波器设计的基本方法。
2、掌握用窗函数设计FIR 数字滤波器的原理及方法,熟悉相应的计算机高级语言编程。
3、熟悉线性相位FIR 滤波器的幅频特性和相位特性。
4、了解各种不同窗函数对滤波器性能的响应二、实验原理和方法(一)FIR 滤波器的设计IIR 滤波器的优异幅度响应,一般是以相位的非线性为代价的,非线性相位会引起频率色散。
FIR 滤波器具有严格的相位特性,这对于语音信号处理和数据传输是和重要的。
目前FIR 滤波器的设计方法主要有三种:窗函数法、频率取样法和切比雪夫等波纹逼近的最优化设计方法。
常用的是窗函数法和切比雪夫等波纹逼近的最优化设计方法。
窗函数法是从时域出发,用一个窗函数截取理想的hd(n)得到h(n),以有限长序列h(n)近似理想的hd(n);如果从频域出发,用理想的()j d H e ω在单位圆上等角度取样得到H(k),根据h(k)得到H(z)将逼近理想的hd(z),这就是频率取样法。
(二)窗函数设计法用窗函数设计滤波器首先要对滤波器提出性能指标。
一般是给定一个理想的频率响应()j d H e ω,使所设计的FIR 滤波器的频率响应()j H e ω去逼近所要求的理性的滤波器的响应()j d H e ω。
窗函数法设计的任务在于寻找一个可实现(有限长单位脉冲响应)h(n )的传递函数()()j j n n H e h n e ωω+∞-==∑去逼近理想的幅频响应。
一个理想的频率响应的傅立叶反变换201()()2j j n d d H n H e e d πωωωπ=⎰(1)所得到的理想单位脉冲响应h 往往是一个无限长序列。
对经过适当的加权、截断处理才能得到一个所需要的有限长脉冲响应序列。
对应不同的加权、截断,就有不同的窗函数。
所要寻找的滤波器脉冲响应就等于理想脉冲响应和窗函数的乘积,即()()()d h n h n w n = (2)由此可见,窗函数的性质就决定了滤波器的品质。
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实验4实验报告
实验4 C54xDSP定时器及中断使用一、实验目的1、学会通过TI公司的片上支持库来调用片上外围设备;2、学会使用C54x系列DSP的定时器;3、学会使用C54x系列DSP的中断系统;二、实验原理C54xDSP片上支持库CSL的详细使用方法及步骤见“TMS320C54x CSL.pdf”。
1、定时器的使用(a)C语言部分(1)在预编译处包含CSL库及对应的定时器库;#include<stdio.h>#include<csl.h>#include<csl_timer.h>#include<csl_irq.h>(2)定义定时器的配置结构及句柄;TIMER_Config timerCfg1={0x0000,0x0080u};TIMER_Handle hTimer1;(3)在运行程序的开始调用“CSL初始化函数”;CSL_init();(4)在运行程序内调用“定时器打开函数”和“定时器配置函数”;hTimer1=TIMER_open(TIMER_DEV0,TIMER_OPEN_RESET);TIMER_config(hTimer1,&timerCfg1);(5)在需要开始计时的时候调用“定时器开始函数”;TIMER_start(hTimer1);(6)不再需要计时的时候调用“定时器停止函数”;TIMER_stop (hTimer1);(b)CCS Project Build Option部分(1)Compiler 下 Preprocessor 设置;(2)Linker 下 Libraries 设置;三、实验内容1、利用TI公司已定义的片上支持库,正确配置及使用定时器和中断,使能定时器中断;#include<stdio.h>#include<csl.h>#include<csl_timer.h>#include<csl_irq.h>TIMER_Config timerCfg1={0x0000,0x0080u};TIMER_Handle hTimer1;interrupt void timerIsr();int temp,timer_int_cnt;void main(){int temp=0;CSL_init();IRQ_plug (IRQ_EVT_TINT0,&timerIsr);IRQ_enable(IRQ_EVT_TINT0);IRQ_globalEnable();hTimer1=TIMER_open(TIMER_DEV0,TIMER_OPEN_RESET);TIMER_config(hTimer1,&timerCfg1);TIMER_start(hTimer1);while(1){};TIMER_stop (hTimer1);}interrupt void timerIsr(void){TIMER_stop (hTimer1);timer_int_cnt=timer_int_cnt+1;if(timer_int_cnt<20){TIMER_start(hTimer1);}printf("Now Enter a Timer interupt!\n");}2、编写相应的定时器中断服务函数,运行程序,把断点设置在中断服务函数内,并使程序在该断点处停下,并在CCS软件调试窗口上打印相应的提示。
dsp-软件实验报告(精)
数字信号处理MATLAB仿真实验报告学院:电子工程学院班级: 2011211203学号: 2011210876姓名:孙月鹏班内序号: 04一、实验一:数字信号的 FFT 分析、实验内容及要求(1 离散信号的频谱分析:设信号此信号的0.3pi 和 0.302pi两根谱线相距很近,谱线 0.45pi 的幅度很小,请选择合适的序列长度 N 和窗函数,用 DFT 分析其频谱,要求得到清楚的三根谱线。
(2 DTMF 信号频谱分析用计算机声卡采用一段通信系统中电话双音多频(DTMF)拨号数字 0~9的数据,采用快速傅立叶变换(FFT)分析这10个号码DTMF拨号时的频谱。
2、实验结果x(n的时域图与频谱:得到三根清晰的谱线号码9的频谱号码8的频谱号码7的频谱号码6的频谱、实现代码及分析(1第一小题:k=1000; %DFT点数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; %进行K点DFT变换w=2*pi/k*[0:1:k-1]; %数字角频率subplot(2,1,2;stem(w/pi,abs(xk; %画出频谱图axis([0.2,0.5,0,2]; %设置窗函数的宽度与限幅title('1000点dft';xlabel('数字频率';ylabel('|xk(k|';% 此题关键在于DFT点数N的确定。
经过计算和实验,当N=1000时能满足题目要求,看到3条清晰地谱线(2)第二小题clear;close all;f=[941 1336;697 1209;697 1336;697 1477;770 1209;770 1336;770 1477;852 1209;852 1336;852 1477] %0-9的频率n=1:400;fs=4000; %取样频率为4000hzfprintf('请输入数字(0 to 9:\n'k=input (''f1=f(k+1,1; %因为从0开始计算,+1得输f2=f(k+1,2; %入数字的两个频率N=400;x1=sin(2*pi*f1*n/fs+sin(2*pi*f2*n/fs;%DTMF的输入信号时域xn=[x1,zeros(1,400]; %补零subplot(2,1,1;plot(xn %画出时域图xlabel('n'ylabel('xn'subplot(2,1,2;fn=fs*n/N; %取样点的频率plot(fn,abs(fft(xn(1:400; %400点fft变换,画出频谱图axis([0,4000,0,300]xlabel('f'ylabel('FFT'二、实验二: DTMF 信号的编码1、实验内容及要求1)把您的联系电话号码通过DTMF 编码生成为一个 .wav 文件。
dsp实验报告四
DSP 实验报告(实验四)班级:学号:姓名:实验四、正弦信号发生器一、 实验目的1. 掌握利用DSP 产生正弦信号的原理2. 熟悉子程序调用的程序结构以及堆栈的使用3. 掌握CCS 的图形输出操作二、 实验设备1. 集成开发环境Code Composer Studio (简称CCS )2. 实验代码Sin.s54、Lab.cmd 和Lab.gel三、实验内容1. 阅读理解多项式逼近正弦的文档2. 阅读和理解Sin.s543. 调试正弦波发生器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是在指令执行阶段判断条件,不存在这方面的问题。
dsp图像处理实验报告
dsp图像处理实验报告DSP图像处理实验报告一、引言数字信号处理(DSP)是一种用于处理数字信号的技术,广泛应用于各个领域。
图像处理是DSP的一个重要应用,通过对图像进行数字化处理,可以实现图像增强、边缘检测、目标识别等功能。
本实验旨在通过DSP技术对图像进行处理,探索图像处理算法的实际应用。
二、实验目的1. 了解数字信号处理在图像处理中的应用;2. 掌握DSP平台的基本操作和图像处理算法的实现;3. 进一步熟悉MATLAB软件的使用。
三、实验环境和工具本实验使用的DSP平台为TMS320C6713,开发环境为Code Composer Studio (CCS)。
图像处理算法的实现主要依赖于MATLAB软件。
四、实验步骤1. 图像采集与预处理首先,通过CCD摄像头采集一张待处理的图像,并将其转化为数字信号。
然后,对图像进行预处理,包括去噪、灰度化等操作,以提高后续处理的效果。
2. 图像增强图像增强是指通过一系列算法和技术,提高图像的质量、清晰度和对比度。
在本实验中,我们采用了直方图均衡化算法对图像进行增强。
该算法通过对图像像素值的统计分析,调整像素值的分布,使得图像的对比度更加明显,细节更加突出。
3. 边缘检测边缘检测是图像处理的重要环节,可以用于目标识别、图像分割等应用。
在本实验中,我们采用了Canny算法进行边缘检测。
Canny算法是一种经典的边缘检测算法,通过对图像进行多次滤波和梯度计算,得到图像的边缘信息。
4. 目标识别目标识别是图像处理中的关键任务之一,可以应用于人脸识别、车牌识别等领域。
在本实验中,我们以人脸识别为例,使用了Haar特征分类器进行目标识别。
Haar特征分类器是一种基于图像特征的分类器,通过对图像进行特征提取和分类器训练,可以实现对目标的快速准确识别。
五、实验结果与分析通过对图像进行处理,我们得到了增强后的图像、边缘检测结果和目标识别结果。
经过对比分析,我们发现图像增强算法能够有效提高图像的对比度和清晰度,使得图像更加易于观察和分析。
dsp实验报告4
一、实验目的1、加深对DFT算法原理和基本性质的理解;2、熟悉FFT算法原理和FFT子程序的应用;3、学习用FFT对连续信号和时域信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便在实际中正确应用FFT。
二、实验内容1.构建本次实验的软硬件环境系统;2.了解实验的硬件原理;3.掌握基2FFT(蝶型)运算的原理;4.调试并分析示例程序;5.撰写实验报告,实验报告包括:2FFT算法的基本原理,画出程序流程图,详细分析2FFT算法子程序,给出该段代码的详细注释。
三、实验步骤及结果1、复习DFT的定义、性质和用DFT作谱分析的有关内容;2、复习FFT算法原理与编程思想,并对照DIT-FFT运算流程图和程序框图,了解本实验提供的FFT子程序;3、阅读本实验所提供的样例子程序;4、运行CCS软件,对样例程序进行跟踪,分析结果;记录必要的参数。
实验截图:四、实验程序及流程图:蝶形算法计算公式:X(K) = X’(K) + X’(K+B) WKN ,X(K+B) = X’(K) - X’(K+B) WKN程序注释:void fft(double pr[], double pi[], int n, int k, double fr[], double fi[], int l, int il){int it,m,is,i,j,nv,l0;double p,q,s,vr,vi,poddr,poddi;for(it=0;it<=n-1;m=it++){is=0;for(i=0;i<=k-1;i++){j=m/2;is=2*is+(m-2*j);m=j;}fr[it]=pr[is];fi[it]=pi[is];}//-------------------该程序段的作用是另倒序存放pr[0]=1.0;pi[0]=0.0;p=6.283185306/n;pr[1]=cos(p);pi[1]=-sin(p);if (l)pi[1]=-pi[1];for(i=2;i<=n-1;i++){p=pr[i-1]*pr[1];q=pi[i-1]*pi[1];s=(pr[i-1]+pi[i-1])*(pr[1]+pi[1]);pr=p-q;pi=s-p-q;}计算WKN *X2(k),其中X2(k)是偶数部分,将其转换成c语言的形式r存实数部分,i 存虚数部分。
dsp实验报告-有限脉冲响应滤波器(FIR)实验
实验四.数字信号处理算法实验实验4.1 :有限脉冲响应滤波器(FIR )算法实验一.实验目的1.掌握窗函数法设计FIR 滤波器的Matlab 实现,为CCS 提供滤波系数。
2.掌握采用C 语言在VC5509开发板上实现混频信号的FIR 滤波。
二.实验设备计算机,ICETEK-VC5509-A 实验箱及电源。
三.实验原理1. 窗函数法设计FIR 滤波器(详细理论请看《数字信号处理》原理书籍) 本实验要求:设计一个低通滤波器,通带截止频率fp=10kHz ,阻带截止频率fs1=22kHz ,阻带衰减ap=75dB ,采样频率fs=50kHz,计算出滤波系数fHn,并对混频信号(高频+低频正弦波)fIn 进行滤波,得输出波形fOut 。
解:过渡带宽度=fs1-fp=12kHz ;截止频率:f1=fp+(过渡带宽度)/2=16kHz f1对应的数字频率:Ω1=2πf1/fs=0.64π(rad) -理想低通滤波器单位脉冲响应:hd[n]=sin(0.64π(n-a))/(π(n-a)) 其中a=(N-1)/2 (n=0~N-1)-根据阻带衰减要求选择布莱克曼窗,窗函数长度N 为: N=5.98fs/过渡带宽度≈25则窗函数为:w[n]=0.42-0.5cos(2πn/24)+0.08cos(4πn/24) 滤波器脉冲响应为:h[n]=hd[n]w[n] (n=0~N-1) <1>-根据上面各式计算出h[n]。
2. FIR 滤波FIR 滤波器的差分方程为:1()()N i i y n h x n i -==-∑ <2>其中,h i ----滤波器系数;x(n)---滤波器的输入;y(n)--- 滤波输出。
根据公式<1><2>,得本例对应FIR 滤波器的差分方程为: y[n]=-0.001x[n-2]-0.002x[n-3]-0.002x[n-4]+0.01x[n-5]-0.009x[n-6]-0.018x[n-7]-0.049x[n-8]-0.02x[n-9] +0.11x[n-10]+0.28x[n-11]+0.64x[n-12] +0.28x[n-13]-0.11x[n-14]-0.02x[n-15]+0.049x[n-16]-0.018x[n-17]-0.009x[n-18]+0.01x[n-19] -0.002x[n-20]-0.002x[n-21]+0.001x[n-22] (n=0,1,2,...)采用线性缓冲区法(原理见备课笔记)解此差分方程,得FIR 滤波结果y(n)。
DSP技术及应用实验报告 实验四
实验四 FIR 数字滤波器一、实验目的:1.学习数字滤波器的DSP 实现原理和C54X 编程技巧;2.通过CCS 的图形显示工具观察输入/输出信号波形以及频谱的变化。
二、实验原理:在数字信号处理中,滤波占有极其重要的作用。
数字滤波是谱分析、通信信号处理等应用中的基本处理算法,数字滤波是DSP 最基本的应用领域。
1. FIR 滤波器的基本原理数字滤波是将输入的信号序列,按规定的算法进行处理,从而得到所期望的输出序列。
一个线性位移不变系统的输出序列[]y n 和输入序列[]x n 之间的关系,应满足常系数线性差分方程。
FIR 滤波器的差分方程为:10()()N i i y n b x n i -==-∑FIR 滤波器的传递函数为: 10()()()N i i i Y z H z b z X z --===∑由上面的公式可知,FIR 滤波算法实际上是一种乘法累加运算。
它不断地从输入端读入样本值x [n ],经延时(1z -)后做乘法累加,输出滤波结果y [n ]。
2. FIR 滤波器的设计FIR 滤波器的设计方法主要有窗函数法和频率采样法,其中,窗函数法是最基本的方法。
具体设计方法可参见《数字信号处理》。
DSP 设计者可以利用功能强大的MATLAB 工具很方便的设计出逼近理想特性的FIR 滤波器,然后将此FIR 系数放入DSP 程序中。
3. FIR 滤波器的DSP 实现FIR 滤波器的输出表达式为011[][][1][1]n-y n b x n b x n b x n N =+-++-+式中,i b 为滤波器系数;[]x n 为滤波器在n 时刻的输入;[]y n 为n 时刻的输出。
可见,FIR 滤波器不断地对输入样本[]x n 进行n -1延时后,再进行乘法累加,最后输出滤波结果[]y n ,因此FIR 滤波器实际上是一种乘法累加运算。
在DSP 中FIR 是将待滤波的数据序列与滤波系数序列相乘后再相加,同时要模仿FIR 结构中的延迟线将数据在存储器中滑动。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验2.4 外中断一.实验目的1.通过实验熟悉VC5509A的中断响应过程。
2.学会C语言中断程序设计,以及运用中断程序控制程序流程。
二.实验设备计算机,ICETEK-VC5509-A实验箱及电源。
三.实验原理1.中断及中断处理过程:⑴中断简介:中断是一种由硬件或软件驱动的信号,DSP在接到此信号时,将当前程序悬挂起来,转去执行另外一个任务,这个任务我们称为中断服务程序(ISR)。
TMS320C55x DSP 可支持32个ISR,可由硬件或软件触发。
⑵DSP处理中断的步骤:①接收中断请求:由软件或硬件发出。
②响应中断请求:对于可屏蔽中断,需要满足若干条件,才发生响应;而对于不可屏蔽中断,则立即响应。
③准备执行中断服务程序。
- 完成当前正在执行的指令;将进入流水线但还未解码的指令清除。
- 自动保存若干寄存器的值到数据堆栈和系统堆栈。
- 取得用户定义的中断向量表中当前中断向量,中断向量指向中断服务程序入口。
④执行中断服务程序。
中断服务程序包含中断返回指令,这样返回时可以出栈以前保存的关键寄存器数据,从而恢复中断服务程序执行前的现场。
⑶中断向量表:中断向量表的构成请参见TI的文档sprs295d.pdf之3.11节。
中断向量表的地址可以由用户指定。
⑷外中断:TMS320C5509可以响应INT0-INT4五个外中断。
2.ICETEK-CTR板的键盘接口:显示/控制模块ICETEK-CTR通过接口P8连接小键盘,接收小键盘传送的扫描码,并在每个扫描码结束后保存,同时向DSP的INT2发送中断信号;当DSP读键盘时将扫描码送到数据总线上。
小键盘上每次按下一个键将产生2个扫描码,2次中断。
3.程序编制由一个不含中断处理程序的工程通过改写加入中断处理程序部分大致需要如下操作(假设使用INT2):⑴编制中断服务程序:参见实验程序,编写单独的一个函数XINT,此函数使用interrupt 修饰,没有参数和返回值。
⑵构造中断向量表:可以用汇编语言构造,编写一个汇编语言模块程序vector.asm。
⑶修改链接命令文件:在MEMORY小节中开辟单独的地址段用以存放中断向量表;在SECTIONS小节中指定.vectors段到前步开设的内存段中。
⑷主程序中进行初始化设置:定位中断向量表、使能中断、清中断等。
4.实验程序流程图:四.实验内容1.实验准备:⑴连接实验设备:请参看本书第二部分,第一章、二。
⑵连接实验箱附带的键盘的PS2插头到ICETEK-CTR的“键盘接口”P8。
⑶将ICETEK-CTR板的供电电源开关拨动到“开”的位置。
(4)设置Code Composer Studio 3.3在硬件仿真(Emulator)方式下运行:(5)启动Code Composer Studio 3.3,选择菜单Debug→Reset CPU。
2.打开工程文件:C:\ICETEK\VC5509AES60\VC5509AE\Lab0304-XINT\v60\XINT.pjt。
实验要求:(1)下载运行该程序,观察结果:运行程序,按一下小键盘上任意一个键,注意观察ICETEK-CTR板上指示灯闪烁的情况。
可发现:每次按下键盘均会发生2 次中断,当按下键不放时会产生连续的中断。
(2)观察中断函数的执行:选择“Debug”菜单中“Halt”暂停运行程序,在XINT程序中的语句上加软件断点,重新运行程序(选择Debug---Run),何时程序停留在断点上?产生外中断实验2.5 :单路/多路模数转换(AD)一.实验目的1.熟悉VC5509A的定时器。
2.掌握VC5509A片内A/D的控制编程方法。
二.实验设备计算机,ICETEK-VC5509-A实验箱及电源。
三.实验原理1.TMS320VC5509A模数转换模块特性:- 带内置采样和保持的10位模数转换模块ADC,最小转换时间为500ns,最大采样率为21.5kHz。
- 2个模拟输入通道(AIN0—AIN1)。
- 采样和保持获取时间窗口有单独的预定标控制。
2.模数转换工作过程:- 模数转换模块接到启动转换信号后,开始转换第一个通道的数据。
- 经过一个采样时间的延迟后,将采样结果放入转换结果寄存器保存。
- 转换结束,设置标志。
- 等待下一个启动信号。
3.模数转换的程序控制:模数转换相对于计算机来说是一个较为缓慢的过程,一般采用中断方式启动转换或保存结果,这样在CPU忙于其他工作时可以少占用处理时间。
设计转换程序应首先考虑处理过程如何与模数转换的时间相匹配,根据实际需要选择适当的触发转换的手段,也要能及时地保存结果。
由于TMS320VC5509A DSP芯片内的A/D转换精度是10位的,转换结果的低10位为所需数值,所以在保留时应注意将结果的高6位去除,取出低10位有效数字。
关于TMS320VC5509A DSP芯片内的A/D转换器的详细结构和控制方法,请参见文档spru568.pdf。
4.实验程序流程图:四.实验内容1.实验准备:⑴连接实验设备:请参看本书第二部分、第一章、二。
⑵准备信号源进行AD输入。
①取出2根实验箱附带的信号线(如下图,两端均为单声道语音插头)。
②用1根信号线连接实验箱左侧信号源的波形输出A端口和“A/D输入”模块的“ADCIN2”插座注意插头要插牢、到底。
则信号源波形输出A的输出波形即可送到ICETEK-VC5416-AR 板的AD输入通道0。
③用1根信号线连接实验箱左侧信号源的波形输出B端口和“A/D输入”模块的“ADCIN3”。
则信号源波形输出B的输出波形即可送到ICETEK-VC5416-AR板的AD输入通道1。
④设置波形输出A:(如下图)- 向内侧按波形频率选择旋钮,直到标有正弦波的指示灯点亮。
- 上下调节波形频率选择旋钮,直到标有100-1KHz的指示灯点亮。
- 调节幅值调整旋钮,将波形输出A的幅值调到最大。
⑤设置波形输出B:- 向内侧按波形频率选择旋钮,直到标有正弦波的指示灯点亮。
- 上下调节波形频率选择旋钮,直到标有1K-10KHz的指示灯点亮。
- 调节幅值调整旋钮,将波形输出B的幅值调到最大。
--设置CodeComposer Studio 3.3在硬件仿真(Emulator)方式下运行:--启动Code Composer Studio 3.3:选择菜单Debug→Reset CPU。
2.打开工程文件:C:\ICETEK\VC5509AE\VC5509AE\Lab0305-AD\AD.pjt。
//主程序main.c 中AD转换的关键语句:while ( 1 ){for ( i=0;i<256;i++ ) //采样256个值{ADCCTL=0x8000; // 启动AD转换,通道0do{uWork=ADCDA TA;} while ( uWork&0x8000 );//等待直到ADC数据可用时,uWork=ADCDA TA(将采样数据存入uWork)nADC0[i]=uWork&0x0fff;//屏蔽无效位,将有效位的采样数据存入缓冲区nADC0}for ( i=0;i<256;i++ ){ADCCTL=0x9000; // 启动A/D转换,选通道1do{uWork=ADCDA TA;} while ( uWork&0x8000 );nADC1[i]=uWork&0x0fff;// 屏蔽无效位,保留采样数据}asm( " nop"); // 方便在此设定断点}实验要求:(1)下载、运行该程序,在空格处填入注释。
(2)观察图形窗口:选择View->Graph->Time/Frequency…进行如下设置:设置软件断点:在main.c中有“break point”注释的语句上加软件断点,按“F5”键运行到断点。
显示AD转换产生的波形:(示例)(3)按“Alt+F5”键连续运行,并调整信号源A为方波(频率范围不变),信号源B为三角波(频率范围改为100-1KHz),显示实时AD采样波形:(4)选择File→workspace→save workspacs As…,输入文件名SY1.wks,保存该工程文件。
三.DSP实现外部控制实验实验3.1 :通用输入输出管脚应用一. 实验目的通过实验学习使用5509A DSP的通用输入/输出管脚直接控制外围设备的方法,了解发光二极管的控制编程方法。
二.实验设备计算机,ICETEK-VC5509-A实验箱三.实验原理1.TMS320C5509的通用输入/输出管脚:TMS320C5509DSP有7个专门的通用输入输出管脚,还有1个通用输出管脚XF。
这些通用输入输出管脚通过专用寄存器可以由软件控制,比如指定输入或输出值等。
另外,TMS320C5509DSP的许多其他管脚,在不使用于特定功能时也能配置成通用输入/输出管脚。
2.ICETEK-CTR指示灯的控制:GPIO与被控指示灯的连接:通过ICETEK-VC5509-A板的扩展插座,通用输出/控制模块ICETEK-CTR板直接连接了板上的一个指示灯和DSP的一个通用输入/输出管脚。
这个管脚属于McBSP1,可以设置成通用输入/输出管脚使用。
扩展原理如图:GPIO控制指示灯:如图,如果要点亮发光二极管,需要在GPIO1上输出低电平,如果输出高电平则指示灯熄灭。
若定时使GPIO1上的输出改变,指示灯将会闪烁。
受控指示灯: ICETEK-CTR板上只有一个指示灯可单独受DSP的GPIO控制,它是交通灯模块“北”侧的红色指示灯。
3.实验程序流程图四.实验内容1.实验准备:⑴连接实验设备:请参看本书第二部分、第一章、二。
⑵将ICETEK-CTR板的供电电源开关拨动到“开”的位置。
开关位置请参见第二部分、第一章、三、“扩展模块电源开关及其指示灯”。
2.设置Code Composer Studio 3.3在硬件仿真(Emulator)方式下运行:3.启动Code Composer Studio 3.3:选择菜单Debug→Reset CPU。
4.打开工程文件:C:\ICETEK\VC5509Ae\VC5509Ae\Lab0401-GPIO\V60\IOPin.pjt。
//源程序main.c中的关键语句:main(){PLL_Init(20); // 初始化DSP时钟SDRAM_init(); // 配置EMIFInitCTR(); // ICETEK-CTR控制板初始化InitMcBSP(); // McBSP初始化,McBsp.FSX(第15管脚)设置为GOIOCTRGR=2; // 使能IOwhile ( 1 ){PCR1^=8; // 对PCR1的第四位进行翻转,使指示灯闪烁Delay(256); // 延时}}5.下载运行该程序。