DSP课程设计报告数据采集处理和控制系统设计_第1页
DSP课程设计报告数据采集处理和控制系统设计_第2页
DSP课程设计报告数据采集处理和控制系统设计_第3页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据采集处理和控制系统设计一 课程设计要求基本DSP硬件系统设计要求 基本DSP硬件系统以TMS320C54X系列为核心处理器,包括最小系统、存储器扩展、显示器、键盘、AD、DA等电路模块; 硬件设计画出主要芯片及电路模块之间的连接即可,重点考查电路模块方案设计与系统地址分配; 设计方案以电路示意图为主,辅以必要的文字说明。1. 基本软件设计要求 看懂所给例程,画出例程输出波形示意图; 修改例程程序,使之输出其它波形,如方波、三角波、锯齿波等均可; 设计方案以程序实现为主,辅以必要的文字说明。2. 课程设计报告要求 硬件系统设计:设计思路、设计系统功能、主要芯片选型及使用方法、设计方案说明、电

2、路示意图 软件系统设计:示例程序功能解读及输出波形示意图、设计软件功能、设计思路、实现源码(带程序注释) 报告总结系统分析利用实验箱的模拟信号产生单元产生不同频率的信号,或者产生两个频率的信号的叠加。在DSP中采集信号,并且对信号进行频谱分析,滤波等。通过键盘或者串口命令选择算法的功能,将计算的信号频率或者滤波后信号的频率在LCD上显示。主要功能如下:对外部输入的模拟信号采集到DSP内存,会用CCS软件显示采集的数据波形。(2)对采集的数据进行如下算法分析: 频谱分析:使用fft算法计算信号的频率。 对信号进行IIR滤波或FIR滤波,并且计算滤波前后信号的频率。 外部键盘或者从计算机来的串口命

3、令选择算法功能,并且将结果在LCD上显示。绘制出DSP系统的功能框图、使用AD(AltiumDesigner)绘制出系统的原理图和PCB版图。在DSP中采集信号,用CCS软件显示采集的数据波形,以及对采集的数据进行算法分析。二 硬件设计3.1硬件总体结构CLKSD15.O16A19.O20CONTROLPower(73HD3XX)111MX16BITFLASHWEOE复位电路TMS32054XRESETCErz>16XDS510JTAG-«£EE-z-一二-s-31&r=2£rEprFr=s-I-EE""-<ei-13HHa

4、-87V«j3.3电源模块设计3UaAL11=3!IKESF7KStaOCTIiJi-:GKDIAT将5V电源电压转换为3.3V和1.6V电源3.4时钟模块设计此处由外部晶振提供时钟信号GNDGNDCLKX23OUTVCCJGND11lCLK5UJGN1>0IuFLI3.5存储器模块设计DSP上只有一个读写控制信号引脚,而FLASHt两个引脚,将读、写分开,-1TV-1TV備匸VI曙7E卯42d-An-flBfljD-1*-Jfl-s忙故在0E上接一个非门电路,实现高时读,低时写。FLASH上的地址线和数据线与DSP上的地址线、数据线相连3.6JATG模块设计GNDGND板上包

5、括了支持TMS320VC541独立运行的时钟电路、复位电路、Flash模块、JTAG仿真接口电路以及电源模块等。为节省空间和材料,部分器件放在了反面。四软件设计4.1正弦波信号发生器所给例程输出波形为正弦波,波形如下图所示:4&0040003&0030002S002000150010QQ5000s1015202530354.2三角波(方波)信号发生器*三角波信号发生程序(括号内为方波)*.mmregs.defstartk1.usect"k",1outdatal.set0800h(0800h)outdata2.set09ffh(0fffh)outdata3.s

6、et0affh(0fffh)outdata4.set0bffh(0fffh)outdata5.set0cffh(0fffh)outdata6.set0dffh(0fffh)outdata7.set0effh(0fffh)outdata8.set0fffh(0fffh)outdata9.set1000h(0fffh)outdata10.set0fffh(0fffh)outdata11.set0effh(0fffh)outdata12.set0dffh(0fffh)outdata13.set0cffh(0fffh)outdata14.set0bffh(0fffh)outdata15.set0aff

7、h(0fffh)outdata16.set09ffh(0fffh)outdata17.set08ffh(0800h)outdata18.set07ffh(0000h)outdata19.set06ffh(0000h)outdata20.set05ffh(0000h)outdata21.set04ffh(0000h)outdata22.set03ffh(0000h)outdata23.set02ffh(0000h)outdata24.set01ffh(0000h)outdata25.set00ffh(0000h)outdata26.set01ffh(0000h)outdata27.set02ff

8、h(0000h)outdata28.set03ffh(0000h)outdata29.set04ffh(0000h)outdata30.set05ffh(0000h)outdata31.set06ffh(0000h)outdata32.set07ffh(0000h)/定义输出数据.textstart:stm2000h,sp/置堆栈指针stm#k1,ar2/将操作数#k1装入ar2st#outdata1,*ar2/将数据送到*ar2nopnopbegin:st#outdata1,*ar2portw*ar2,0bfffh/将*ar2内容从D/A转换器输出rpt#7fffh/等待一段时间nopst#

9、outdata5,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata6,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata7,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata8,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata9,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata10,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata11,*ar2portw*ar2,0bfffhrpt#7

10、fffhnopst#outdata12,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata16,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata17,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata18,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata19,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata20,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata21,*ar2portw*

11、ar2,0bfffhrpt#7fffhnopst#outdata22,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata23,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata27,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata28,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata29,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata30,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outda

12、ta31,*ar2portw*ar2,0bfffhrpt#7fffhnopst#outdata32,*ar2portw*ar2,0bfffhrpt#7fffhnopbbegin/循环输出32个数据.end/代码段结束4.3本系统软件总体流程4.4核心模块及实现代码piLength,intn,intpiLength,intn,intk,doubleFFT算法程序:voidkfft(doubleprLength,doublefrLength,doublefiLength,intl,intil)intit,m,is,i,j,nv,IO;doublep,q,s,vr,vi,poddr,poddi;fo

13、r(it=0;it<=n-1;it+)m=it;is=0;for(i=0;i<=k-1;i+)j=m/2;is=2*is+(m-2*j);m=j;frit=pris;fiit=piis;pr0=1.0;pi0=0.0;p=6.6/(1.0*n);pr1=cos(p);pi1=-sin(p);if(l!=0)pi1=-pi1;for(i=2;i<=n-1;i+)p=pri-1*pr1;q=pii-1*pi1;s=(pri-1+pii-1)*(pr1+pi1);pri=p-q;pii=s-p-q;for(it=0;it<=n-2;it=it+2)vr=frit;vi=fii

14、t;frit=vr+frit+1;fiit=vi+fiit+1;frit+1=vr-frit+1;fiit+1=vi-fiit+1;m=n/2;nv=2;for(l0=k-2;l0>=0;l0-)m=m/2;nv=2*nv;for(it=0;it<=(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+nv/2+fiit+j+nv/2);poddr=p-q;poddi=s-p-q;frit+j+nv/2=frit+j-

15、poddr;fiit+j+nv/2=fiit+j-poddi;frit+j=frit+j+poddr;fiit+j=fiit+j+poddi;if(l!=0)for(i=0;i<=n-1;i+)fri=fri/(1.0*n);fii=fii/(1.0*n);if(il!=0)for(i=0;i<=n-1;i+)pri=sqrt(fri*fri+fii*fii);if(fabs(fri)<0.000001*fabs(fii)if(fii*fri)>0)pii=90.0;elsepii=-90.0;elsepii=atan(fii/fri)*360.0/6.6;卷积程序:v

16、oidConvolveok(/卷积函数double*x,/原始输入数据double*h,/冲击响应double*y,/卷积输出结果UINT16Leng,/序列长度UINT16h_Len)UINT16m,p,j;doubler,rm;doublexmean=0.0;doublexmid100;for(m=0;m<h_Len;m+)xmidm=0.0;for(m=0;m<Leng;m+)xmean=xm+xmean;xmean=1.0*xmean/Length;for(m=0;m<Leng;m+)xm=xm-xmean;for(m=0;m<Leng;m+)for(p=0;p

17、<h_Len;p+)xmidh_Len-p-1=xmidh_Len-p-2;xmid0=xm;r=0.0;rm=0.0;for(j=0;j<h_Len;j+)r=xmidj*hj;rm=rm+r;ym=rm;求最大值和次大值函数:voidmax()intk1,k2;/k1最大值,k2次最大值intr;for(r=0;r<16;r+)if(prk1<prr)k1=r;for(r=20;r<64;r+)if(prk2<prr)k2=r;f0=250000.0/256*k1;f1=250000.0/256*k2;fc=(f0+f1)/2;归一化函数:voidavg

18、()intj;sum=0.0;for(j=0;j<256;j+)sum+=(data_buffj/256.0);for(j=0;j<256;j+)prj=data_buffj-sum;pij=0.0;FIR滤波器设计函数:求h(n)voidfirdes(doublenpass)/intt;for(t=0;t<FLen;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服务函数:voidinterruptExtlnt2(void

19、)inti1,j;*(unsignedint*)IFR=0xFFFF;/清除所有中断标志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);for(j=0;j<256;j+)yrj=yj;yij=0.0;kfft(yr,yi,256,8,Yr,Yi,0,1);flag=1;i1=0;4.5程序运行效果采集的数据及其FFT计算结果51阶滤波器H(n)波形滤波前后信号频谱图:由滤波前后高低频分量的相对大小证明低通滤波器对高频分量的衰减作用比较强,但没有完全滤出去采集数据波形与滤波后波形比较由图可见滤波后信号中的高频分量得到了较大的衰减,滤波后波形变得平滑。由图可见滤波后信号中的高频分量得到了较大的衰减,滤波后波形变得平滑。五课程设计总结DSP芯片有更适合于数字信号处理的软件和硬件资源,非常适合于通用数字信号处理的开发,为数字信号处理的应用打开了新局面。学好DSP技术具有非常重要的意义。通过此次课程设计,我学

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论