dsp课程设计Word格式文档下载.docx
《dsp课程设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《dsp课程设计Word格式文档下载.docx(37页珍藏版)》请在冰豆网上搜索。
2.掌握长时间间隔的定时器的处理。
3.掌握内设外设的设置方法。
1.系统初始化。
2.DSP的初始设置。
3.定时中断的编写。
TMS320F28335片上有3个32位的CPU定时器,分别被称为定时器0、1和2.每个定时器均有一个32位减计数器,当计数器减到0时,产生一个中断。
其中,CPU定时器0的中断TINTO位PIE中断,CPU定时器1的中断TINT直接连到CPU中断的INT13,CPU定时器2的中断TINT2直接连到CPU中断的INT14,CPU定时器2保留位实时操作系统使用,而CPU定时器0、1则可被用户使用,SEED-DEC28335未使用CPU定时器0,用户可以根据应用的需要灵活使用。
四、实验要求
通过本实验。
熟悉中断的结构及用中断程序控制程序流程,掌握定时器的应用。
六、实验步骤
1.进入CSS环境
2.装入pjt工程文件,添加28335.gel文件。
3装入.Out文件,进行调试。
4.设置断点
5.运行程序,观察指示灯D3。
6.继续运行程序,再观察指示灯D3。
7.
取消断点,连续运行程序会看到SEED-DEC28335板上D3闪烁。
七、实验结果
八、实验分析与思考
更改寄存器的值后,可以明显看到等的闪烁频率加快了
实验三AD采集实验
1.了解TMS
2.熟悉片上AD的使用。
3.利用片上AD进行数据采集。
1.初始化系统。
2.初始化片上AD,进行通道的选则。
3.AD数据采集。
TMS320F28335片内AD简介
1.ADC带SH的12BIT的ADC。
2.模拟量输入范围:
0~3V
3.16路AD转换通道。
4.自动排序功能可以提供一次触发转化16路AD,每次转化能够编程选择16路通道的任何一个。
5.排序可以选择2个独立的8路通道排序或者是一个大的16通道排序。
6.有多重触发AD转换方式,软件启动,EVA和EVB。
7.中断方式灵活,可以在每次转换结束或者间隔一次转换结束触发中断。
四、实验步骤
1.进入CSS环境。
2.装入ad.pjt工程文件,添加28335.gel文件,装载程序AD.out。
3.打开AD.c文件,到185行”ConversionCount=0”设置断点。
4运行程序观察实验结果和显示的图像。
五、实验思考和分析
改进过后为方波
实验四SCI数据传递实验
1.了解TMS320F28335片上外设SCI。
2.熟悉片上SCI通道的使用。
3.利用片上SCI通道进行数据采集。
2.初始化片上SCI通道。
3.SCI数据传递。
在SEED-DEC28335模板直接采用F28335片上的2通道SCI作为异步收发UART。
SEED-DEC28335采用MAX3232多协议收发器,是的异步串口接口电平可配置为RS232/RS485多种接口电平标准,采用4线制,其中RTS和CTS由UART控制/状态寄存器实现。
而在RS485接口标准时,采用2线制(A、B)。
SEED-DEC28335上设计一个UART工作模式控制寄存器用来产生信号,这些UART工作模式的控制可通过F28335编程设置。
流程图如下:
1.进入CCS环境
2.装入uart工程文件,添加28835.gel。
3.打开uart.c,到第95行,可以修改宏定义
4.运行程序
5.观察结果
五、实验分析与反思
实验五交通灯实验
1.掌握DSP扩展数字I/O口的方法;
2.了解SEED320C28335的硬件系统。
1.DSp的初始化
2.TNS320C28335的扩展数字I/O口使用。
3.交通灯实现程序。
1.DSP系统中数字I/O的实现。
DSP系统中一班只有少量的数字I/O资源,而一些控制中经常需要大量的数字量的输入与输出。
因而,在外部扩展I/O资源是非常有必要的,在扩展I/O资源时一般占用DSP的I/O空间。
其实现方法一般有两种:
其中一种为锁存器像74LS273、74LS373之类的集成电路;
另一类是采用CPLD在其内部做锁存逻辑,我们采用的是后者。
3.数字I/O所占用的资源
NG:
方向北的绿灯控制位。
NY:
方向北的黄灯控制位。
NR:
方向北的红灯控制位。
WG:
方向西的绿灯控制位。
ER:
方向东的红灯控制位。
WY:
方向西的黄灯控制位。
EY:
方向东的黄灯控制位。
EG:
方向东的绿灯控制位。
WR:
方向西的红灯控制位。
SG:
方向南的绿灯控制位。
SY:
方向南的黄灯控制位。
SR:
方向南的红灯控制位。
通过本实验,了解DSP对I/O口的操作,完成交通灯的控制,熟悉使用CCS对程序进行调试。
1.进入CCS环境。
2.装入IO.Pjt工程文件。
添加28335.gel文件。
开始进行调试;
3.打开IO.c文件,到25行,修改TESTMMAND的宏定义。
装载程序IO.out。
4.运行和观察
设置TESTCOMMAND的值为1
观察到的现象是:
自动运行模式
设置TESTCOMMAND的值为2
夜间模式
设置TESTCOMMAND的值为3
交通灯东西通
设置TESTCOMMAND的值为4
交通灯南北通
设置TESTCOMMAND的值为5
禁止通行
六、实验分析和思考
更改的程序:
case6:
iostatus=IOCHANGE;
*p_trafficaddr=iostatus;
while
(1)
{
for(i=0;
i<
12;
i++)
{
DELAY_US(0x40000);
iostatus=LED_pin<
<
i;
*p_trafficaddr=iostatus;
}
DELAY_US(0x60000);
LED_pin=0x001;
}
break;
实验六步进电机控制实验
1.了解步进电机驱动的原理
2.了解步进电机的控制原理
3.熟悉使用PWM控制步进电机的运行。
1.DSP的初始化。
2.EV初始化与配置。
3.步进电机的驱动程序。
1、电机采用15V直流电源供电。
4路控制信号由SEED-DTK—MBoard提供,信号CMOS标准电平;
通过排线接入下拉位。
使用达灵顿管TIP31C代替IRL540作为点击驱动开关,基极串口接100Ω电阻。
快速使用二极管1N4007完成保护功能,以免烧坏电机。
使用50Ω限流电阻。
2步进电机的驱动接口:
EVA的PWM1、PWM2、PWM3、PWM4引脚。
他们分别为电机的控制端。
按一定的频率循环置高电平即可使步进电机转动。
通过电机试验,了解步进电机的驱动基本原理。
2.载入stepmotor.pjt工程文件,添加28335.gel文件。
3.装载stepmotor.out文件。
4.运行程序,观察试验箱上电机运行状态。
六、实验分析与思考:
修改定时器的周期以及PWM的比较功能调整电机的运行方向和状态。
实验结果
电机顺时针旋转。
更改定时器时间,可以改变转机的速度
试验七同步串口实验
1.熟悉CCS的开发环境。
2.了解DSP的MCBSP外设的使用。
3.实现通过MCBSP发送数字和文字。
2.MCBSP的初始化与配置。
3.MCBSP的发送。
4.MCBSP的接受。
1.MCBSP是DSP的片上外设资源,它可以与其他的DSP、CODEC和带有SPi接口的器件进行连接,在TMS320VC5416上有一个MCBSP。
串口同步通信的信号:
FSR、CLKR、DR和FSX、CLKX、DX。
帧同步信号:
FSR、FSX。
位-时钟:
CLKR、CLKX。
串行数据流:
DR、DX。
2.串行同步通信协议
3.同步串口实验中使用MCBSPA作为SEED-DTK——MBOARD通讯的同步串口。
4.在同步实验中,将MCBSP设置成为单通道的方式使用。
通过本实验,熟悉对MCBSP的各个寄存器的功能和设置方法,掌握DSP对二次寄存器的访问,熟悉同步串口通讯的编程方法,实现两个DSp通讯。
2装入mcbsp.Pjt工程文件,添加28335.gel文件。
4.装载MCBSP.out进行调试。
5.在68行“Test=0”和72行“test=0”处打断点。
6.运行程序得到结果。
同步串口中使用的MCBSPA作为同步串口,他的好处有处理时间快,通信稳点
试验八有限冲击响应滤波器(FIR)算法实验
1.掌握数字滤波器的设计过程;
2.了解FIR的原理和特性;
3.熟悉设计FIR数字滤波器的原理和方法。
1.DSP的初始化;
2.A/D采样;
3.FIR运算,观察滤波前后波形的变化。
1.FIR滤波器是一种非递归系统,其冲击响应h(n)是有限长序列,其差分方程表达式:
y(n)=
其中n为FIR滤波器的阶数。
2实验中的公式:
R[j]=
x[j-k]j∈[0,nx]
1.进入CSS环境。
2.载入FIR-Filter.pjt工程文件,添加28335.gel文件。
开始调试;
3.载入程序Filter.out;
4.本实验和FFT实验,Ad实验都需要设置试验箱信号源,通过液晶显示和按键,设置信号源,自检成功后,通道设置为“0”,信号类型根据需要选择,振幅1000左右,频率300左右。
信号发生器开关设为开启。
5.打开Filter.c,在117行和118行设置断点。
6.运行程序并观察
五、实验结果
六、实验分析与反思
改进后的结果:
实验九无限冲击响应滤波器(IIR)算法实验
一.实验目的
1.掌握数字滤波器的设计过程
2.了解IIR的原理和特性
3.熟悉设计IIR数字滤波器的原理和方法
二.实验内容
1.DSP初始化
2.A/D采样
3.IIR运算,观察滤波前后的波形变换
三.实验背景知识
1.IIR滤波器直接型结构
数字滤波器的输入与输出之间的关系可以用线性差分方程及其Z变换表示。
从系统的传输函数可以看出它具有N个零点和N个极点,如果任何一个极点在Z平面单位圆外,则系统不稳定。
如果系数全部为0,滤波器成为非递归的FIR滤波器,这时系统没有极点,因此FIR滤波器总是稳定的,对于IIR滤波器,有系数量化敏感的缺点。
由于系统对序列施加的算法是由加法,延时,常系数乘三种基本运算的组合,所以可以用不同结构的数字滤波器实现而不影响系统总的传输函数。
2.IIR数字滤波器的设计
数字滤波器设计的出发点是从熟悉的模拟滤波器的频率响应出发,IIR滤波器的设计有两种方法:
第一种方法先设计模拟低通滤波器,然后通过频带变换而成为频带选择滤波器,最后通过滤波器变换得到数字域的IIR滤波器。
第二种方法先设计模拟低通滤波器,然后通过滤波器变换而得到数字域的低通滤波器,最后通过频带变换得到期望的数字滤波器。
四.实验说明
(一)实验准备
1.将DSP仿真器与计算机连接
2.将DSP仿真器的JTAG插头与SEED-DEC28335的J18想连接
3.打开SEED-DEC28335的电源,观察SEED-DTK-MBoard单元的电源指示灯。
若有不亮的,请断开电源,检查电源。
(二)实验步骤
2.装入IIR-FILTER.pjt工程文件,添加28335.gel文件,开始进行调试
3.装载FILTER.out
4.进行“信号源设置”
5.打开FILTER.C的第124行和第125行设置断点
6.分别运行到断点观察实验结果
实验十快速傅里叶变换算法实验
1.加深对DFT算法原理和基本性质的理解
2.熟悉FFT的算法原理与应用
3.学习用FFT对连续信号和时域信号进行频谱分析
1.DSP初始化
2.A/D采样
3.FFT运算
傅里叶变换是一种将信号从时域到频域的变换形式,是一种很重要的处理分析工具,DFT是连续傅里叶变换在离散系统的表现形式,由于DFT的计算量很大,因此在很长的时间内无法广泛使用,FFT是离散傅里叶变换的一种高仿运算方法,它使运算简化,运算速度大大提高。
FFT就是利用了旋转因子的对称性和周期性来减少运算量的。
FFT算法将长序列DFT分解为短序列。
FFT算法分为时间抽取法和频域抽取法,分别在时域和频域中进行计算。
(一)实验准备
1.将DSP仿真器与计算机连接
2.将DSP仿真器的JTAG插头与SEED-DEC28335的J18想连接
3.打开SEED-DEC28335的电源,观察SEED-DTK-MBoard单元的电源指示灯。
(二)实验步骤
1.进入CSS环境
2.装入FFT.pjt工程文件,添加28335.gel文件,开始进行调试
3.打开FFT.C文件。
在第34行修改宏定义
4,装载FFT.out
5.分别在程序的第165.176行设置断点
6.进行“信号源设置”
7.运行程序,观察图像
8.实验分析与思考:
从第六行开始重新执行,改变采样长度和输入信号类型,观察实验结果,分析波形的变化特点。
实验十一卷积算法实验
1.掌握卷积算法的原理和实验计算方法
2.熟悉卷积算法特性
1.设置断点和探针
2.卷积的运算
卷积的基本运算包含四个部分。
翻转:
以m=0为轴将h(m)翻转
移位:
将h(-m)移位n得到h(n-m)
相乘:
将h(n-m)与x(m)相乘
相加:
把以上对应点的乘积叠加得到y(n)
公式为
Y(n)=
=X(n)*h(n)
2.装入convolve.pjt工程文件,添加28335.gel文件,开始进行调试
3.装载convolve.out
4.进行“信号源设置”
5.打开volume.C的第91行和第95行设置断点
6.分别运行到断点观察实验结果
将volume.c文件的第88,89行待复制的波形文件修改为目标波形文件,例如可以将下图中数组sin44[]换成sin22[]或其他波形。
实验十二自适应滤波器算法实验
1.掌握自适应数字滤波器的原理和实现方法
2.掌握LMS自适应算法及其实现
3.了解自适应数字滤波器的程序设计方法
1.设置断点
2.设置图形显示窗口
3.分析实验结果
1.自适应滤波
自适应滤波是仅需对当前观察的数据作处理的滤波算法,它能自动调节本身冲激响应的特性,或者说自动调节数字滤波器的系数,以适应信号变换的特性,从而达到最佳滤波,由于自适应滤波不需要关于输入信号的知识,计算量小,特别适用于实时处理,近年得到广泛应用
2.自适应滤波的原理
自适应滤波器由两部分组成:
系数可调的数字滤波器和自适应算法。
实质是一个噪声抵消器,如果得到对淹没信号的噪声的最佳估计就能得到索要提取信息的最佳估计。
E(n)有两个作用:
一是得到信号的最佳估计,二是调整滤波器系数的误差信号。
四.实验说明
4.打开volume.C的第91行和第95行设置断点
5.分别运行到断点观察实验结果
实验分析与思考:
将输入波形文件改成其他的波形,观察图像。
实验十三回声实验
1.回音的原理
2.了解AIC23的工作原理
3.掌握AIC和McBSP之间的配置
1.系统初始化
2.数据采集
3.数据存放、发送
1.数字回声原理
在实际生活中,当声源遇到物体时,会发生反射,反射的声波和声源声波一起传输,听者会发现发射声波部分比声源声波慢一些,类似人们面对山体高声呼喊后可以在过一会儿听到回声的现象。
声音遇到较远的物体产生的反射会比遇到较近的物体的反射波晚些到达声源位置,所以回声和原声的延迟随反射物体的距离大小改变。
同时,反射声音的物体对声波的反射能力,决定了听到的回声的强弱和质量。
另外,生活中的回声的成分比较复杂,有反射、漫反射、折射,还有回声的多次反、折射效果。
当已知一个数字音源后,可以利用计算机的处理能力,用数字的方式通过计算模拟回声效应。
2.实现过程简介
简单地讲,可以在原声音流中叠加延迟一段时间后的声流,实现回声效果。
当然通过复杂运算,可以计算各种效应的混响效果。
如此产生的回声,我们称之为数字回声。
初始化配置:
DSP通过I2C总线将配置命令发送到AIC23,配置完成后AIC23工作。
语音信号的输入:
AIC23通过其中的AD转换采集输入的语音信号,每采集完一个信号后,将数据发送到DSP的McBSP接口上,DSP可以读取到语音数据,每个数据为16位无符号整数,左右通道各有一个数值。
语音信号的输出:
DSP可以将语音数据通过McBSP接口发送给AIC23,AIC23的DA器件将它们变成模拟信号输出。
通过本实验,熟悉AIC23与DSP之间的配置,掌握通过DSP实现回音效果。
五、实验程序功能与结构说明
(一)混响实验,包含文件:
1.Main.c:
实验的主程序
2.Echo.c:
音频数据的采集和放送程序
3.Linker.cmd:
声明了系统的存储器配置与程序各段的连接关系
4.DEC6437.gel:
系统初始化程序
1.打开CCS,进入CCS的操作环境
2.打开3.5.1mp3echo文件夹,装入echo.pjt工程文件
3.装载程序echo.out,进行调试
4.在DSP程序运行前,应在PC机上播放音乐作为Codec的输入
5.在运行程序之后,可在耳机中听到带数字回声的音乐放送
6.实验分析与思考:
回声在我们现实生活中海油哪些应用?
在我们本专业研究范围内有什么具体应用?
实验十四音频滤波实验
1.熟悉FIR滤波器工作原理及其编程
2.学习使用CCS图形观察窗口观察和分析语音波形及其频谱
2.AIC23的初始化
3.McBSP的初始化
FIR滤波的原理和TLV320AIC23芯片性能指标及控制方法分别参看实验3.4.1有限冲击响应滤波实验
通过对音频滤波实验,熟悉对AIC23的各个寄存器的设置;
掌握TMS320DM6437的McBSP设置;
理解滤波算法
(一)音频滤波实验,包含文件:
1.MP3FIR.c:
AIC23的设置,以及音频数据的采集、滤波和放送程序
2.Main.c:
实验的主程序,包含了系统初始化
3.Link.cmd:
声明了系统的存储器配置与程序各段的连接关系
系统初始化程序
1.打开CCS,进入CCS的操作环境
2.打开3.5.2mp2fir文件夹,装入echo.pjt工程文件,添加DEC6437.gel文件
3.装载程序MP3FIR.out,进行调试
4.在DSP程序运行之前,应在PC机上播放音乐作为AIC23的输入
5.运行程序
6.观看sample1[]、sample2[]的时域和频域波形
7.实验分析与思考:
观看分别与sample1[]、sample2[]对应的out1[]、out2[]的时域和频域的图像设置,分析波形
实验十五图像反色实验
1.熟悉视频显示程序的运行过程、控制过程,搞清楚数据处理、传输途径
2.结合实例学习如何在视频显示程序中增加图像处理算法
3.了解图像反色的算法和用途
2.反色算法实验
将图像按像素进行求反,取得类似照相底片效果。
求反处理的图像与原始图“黑白颠倒”,可以看清原始图中灰黑区域的情况。
求反的图像一般用于数字图像的初步处理。
设DA表示输入图像的灰度,DB表示输出图像的灰度。
灰度变换方程为:
DB=F(DA)=255-DA
四、程序简介
实验例程实现食品的采