ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:121.89KB ,
资源ID:20858254      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20858254.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(DSP课程设计报告Word下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

DSP课程设计报告Word下载.docx

1、3.3 电源模块设计将5V电源电压转换为3.3V和1.6V电源3.4 时钟模块设计此处由外部晶振提供时钟信号3.5 存储器模块设计DSP上只有一个读写控制信号引脚,而FLASH有两个引脚,将读、写分开,故在OE上接一个非门电路,实现高时读,低时写。FLASH上的地址线和数据线与DSP上的地址线、数据线相连3.6 JATG模块设计3.7 TMS320VC5416 最小系统 PCB 版图板上包括了支持TMS320VC5416独立运行的时钟电路、复位电路、Flash模块、JTAG仿真接口电路以及电源模块等。为节省空间和材料,部分器件放在了反面。四 软件设计4.1正弦波信号发生器所给例程输出波形为正弦

2、波,波形如下图所示:4.2三角波(方波)信号发生器 *三角波信号发生程序(括号内为方波)* .mmregs .def start k1 .usect k,1outdata1 .set 0800h(0800h)outdata2 .set 09ffh(0fffh)outdata3 .set 0affh(0fffh)outdata4 .set 0bffh(0fffh)outdata5 .set 0cffh(0fffh)outdata6 .set 0dffh(0fffh)outdata7 .set 0effh(0fffh)outdata8 .set 0fffh(0fffh)outdata9 .set

3、1000h(0fffh)outdata10 .set 0fffh(0fffh)outdata11 .set 0effh(0fffh)outdata12 .set 0dffh(0fffh)outdata13 .set 0cffh(0fffh)outdata14 .set 0bffh(0fffh)outdata15 .set 0affh(0fffh)outdata16 .set 09ffh(0fffh)outdata17 .set 08ffh(0800h)outdata18 .set 07ffh(0000h)outdata19 .set 06ffh(0000h)outdata20 .set 05f

4、fh(0000h)outdata21 .set 04ffh(0000h)outdata22 .set 03ffh(0000h)outdata23 .set 02ffh(0000h)outdata24 .set 01ffh(0000h)outdata25 .set 00ffh(0000h)outdata26 .set 01ffh(0000h)outdata27 .set 02ffh(0000h)outdata28 .set 03ffh(0000h)outdata29 .set 04ffh(0000h)outdata30 .set 05ffh(0000h)outdata31 .set 06ffh(

5、0000h)outdata32 .set 07ffh(0000h)/定义输出数据 .textstart: stm 2000h,sp /置堆栈指针 stm #k1,ar2 /将操作数#k1装入ar2 st #outdata1,*ar2 /将数据送到*ar2 nopbegin: st #outdata1,*ar2 portw *ar2,0bfffh /将*ar2内容从D/A转换器输出 rpt #7fffh/等待一段时间 st #outdata2,*ar2 st #outdata3,*ar2 st #outdata4,*ar2 st #outdata5,*ar2 st #outdata6,*ar2

6、st #outdata7,*ar2 st #outdata8,*ar2 st #outdata9,*ar2 st #outdata10,*ar2 st #outdata11,*ar2 st #outdata12,*ar2 st #outdata13,*ar2 st #outdata14,*ar2 st #outdata15,*ar2 nop st #outdata16,*ar2 st #outdata17,*ar2 st #outdata18,*ar2 st #outdata19,*ar2 st #outdata20,*ar2 st #outdata21,*ar2 st #outdata22,

7、*ar2 st #outdata23,*ar2 st #outdata24,*ar2 st #outdata25,*ar2 st #outdata26,*ar2 st #outdata27,*ar2 st #outdata28,*ar2 st #outdata29,*ar2 st #outdata30,*ar2 st #outdata31,*ar2 st #outdata32,*ar2 b begin /循环输出32个数据 .end/代码段结束4.3 本系统软件总体流程4.4 核心模块及实现代码 FFT算法程序:void kfft(double prLength,double piLength

8、,int n,int k,double frLength,double fiLength,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; it+) m=it; is=0; for (i=0; i=0; l0-) m=m/2; nv=2*nv;=(m-1)*nv; it=it+nv) for (j=0; j=(nv/2)-1; j+) p=prm*j*frit+j+nv/2; q=pim*j*fiit+j+nv/2; s=prm*j+pim*j; s=s*(frit+j

9、+nv/2+fiit+j+nv/2); poddr=p-q; poddi=s-p-q; frit+j+nv/2=frit+j-poddr; fiit+j+nv/2=fiit+j-poddi; frit+j=frit+j+poddr; fiit+j=fiit+j+poddi;=0) fri=fri/(1.0*n); fii=fii/(1.0*n); if (il! pri=sqrt(fri*fri+fii*fii); if (fabs(fri)0) pii=90.0; else pii=-90.0; else 卷积程序:void Convolveok( /卷积函数 double *x, / 原始

10、输入数据 double *h, / 冲击响应 double *y, / 卷积输出结果 UINT16 Leng, / 序列长度 UINT16 h_Len) UINT16 m,p,j; double r,rm; double xmean = 0.0; double xmid100; for(m=0;mh_Len;m+) xmidm = 0.0; for (m=0; mLeng; m+) xmean = xm + xmean; xmean = 1.0*xmean/Length; xm = xm - xmean; for (p=0; p p+) xmidh_Len-p-1 = xmidh_Len-p-

11、2; xmid0 = xm; r = 0.0; rm= 0.0; for (j=0; r = xmidj * hj; rm = rm + r; ym = rm; 求最大值和次大值函数:void max() int k1,k2; /k1 最大值,k2 次最大值 int r; for(r=0;r16;r+) if(prk1prr) k1=r; for(r=20;64; if(prk2 k2=r; f0=250000.0/256*k1; f1=250000.0/256*k2; fc=(f0+f1)/2;归一化函数:void avg() int j; sum= 0.0; for(j=0;j256;j+

12、) sum+=(data_buffj/256.0); prj=data_buffj-sum; pij=0.0;FIR滤波器设计函数:void firdes(double npass)/求h(n) int t; for (t=0; tFLen; t+) ht=sin(t-(FLen-1)/2.0)*npass*3.1415926)/(3.1415926*(t-(FLen-1)/2.0); if (t = (FLen-1)/2) ht=npass;外部中断2服务函数:void interrupt ExtInt2(void) int i1,j;*(unsigned int*)IFR=0xFFFF;

13、/清除所有中断标志 data_buffi1 = port8002 & 0x00ff; i1+; if(i1 = 256) avg(); kfft(pr,pi,256,8,fr,fi,0,1); max(); npass=fc/250000.0; firdes(npass); Convolveok(data_buff,h,y,256,51); yrj=yj; yij=0.0; kfft(yr,yi,256,8,Yr,Yi,0,1); flag=1; i1 = 0;4.5 程序运行效果采集的数据及其FFT计算结果51阶滤波器H(n)波形滤波前后信号频谱图:由滤波前后高低频分量的相对大小证明低通滤波

14、器对高频分量的衰减作用比较强,但没有完全滤出去采集数据波形与滤波后波形比较由图可见滤波后信号中的高频分量得到了较大的衰减,滤波后波形变得平滑。五 课程设计总结 DSP芯片有更适合于数字信号处理的软件和硬件资源,非常适合于通用数字信号处理的开发,为数字信号处理的应用打开了新局面。学好DSP技术具有非常重要的意义。通过此次课程设计,我学习到了一个实际的电子系统的完整的设计流程,基本掌握了PCB设计软件Altium Designer的使用方法,学会了绘制系统的功能框图、原理图以及PCB版图。同时掌握了CCS软件的使用和基于TMS320VC5416的DSP程序的编写。此次课程设计首先绘制系统功能框图,

15、使用AD软件绘制原理图和PCB版图。在绘制系统功能框图过程中,要设计一个功能完备,能够独立运行的精简 DSP 硬件系统。然后再基于此系统功能框图绘制原理图和PCB版图。在原理图的绘制过程中要充分考虑到所使用的器件及管脚的网络标号,总线的链接等。因为要绘制PCB版图,故要合理选择各个器件的封装,合理安排各个器件和线的位置,尤其是滤波电容要安放在靠近各个管脚的位置,真正起到滤波的作用。在使用CCS软件编写程序时要注意变量定义以及函数声明。通过查阅资料和与老师同学交流后完善了各部分程序。DSP程序相对难一些,在编写时需要从系统整体来考虑,不断调整算法且保持思路清晰,熟悉各个子程序的功能。通过此次课程设计,使我对TMS320C54x系列DSP的硬件结构有了较为深刻的认识,也学习到了实际的电子系统的完整的设计流程,熟悉了AD软件和CCS软件的使用方法,对于数字信号处理有了更深刻的认识。数字信号处理无处不在,这样的课程设计很有意义,对于我们今后的学习与工作都会产生深远影响,为我们独立完成其他DSP设计打下基础。通过查阅资料以及老师同学的帮助,解决了课程设计中遇到的难题,也学习到了很多知识,将理论运用于实践。感谢老师和同学的大力帮助,使我顺利完成了此次课程设计。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1