《DSP原理与应用专业课程设计.doc》由会员分享,可在线阅读,更多相关《DSP原理与应用专业课程设计.doc(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、DSP原理与应用专业课程设计苏 州 市 职 业 大 学课程设计任务书 课程名称: DSP原理与应用课程设计 起讫时间: 2013年1月7日至2013年1月11日 院 系: 电子信息工程系 班级: 10应用电子技术5 指导教师: 范海健 系 主 任: 张红兵 一、 课程设计课题基于泰勒级数算法正弦信号的C54实现二、 课程设计要求1. 掌握CCS集成开发环境的使用方法。2. 理解正弦信号的泰勒级数算法的原理。3. 理解实现正弦信号的软件程序流程。4. 调试程序,生成相应的正弦波数据。5. 利用CCS集成开发环境的软件作图程序,生成正弦波形。6. 将结果向指导教师演示,由教师提问验收通过;7. 打
2、印程序清单,撰写程序说明,完成课程设计报告书,进行分组讨论设计心得。三、 课程设计工作量1. 周一:明确课程设计任务和目标,从理论上理解设计的原理。 2. 周二:明确设计指标,调试程序 ,记录得到的数据。3. 周三、周四:学生演示设计结果,教师提问评分。 4.周四、五:打印程序清单,撰写程序说明,完成课程设计报告书。四、 课程设计说明书内容1. 掌握CCS集成开发环境的使用方法项目建立、程序加载、调试的步骤2. 正弦函数泰勒级数算法的原理3. 软件设计、调试过程4. 软件清单与注释5. 设计心得与体会苏 州 市 职 业 大 学课程设计说明书 名称 DSP原理与应用课程设计 2013年 1 月
3、7 日至 2013 年 1 月 11 日共 1 周院 系 电子信息工程系 班 级 10应用电子技术5 学 号 姓 名 系主任 张红兵 教研室主任 陆春妹 指导教师 范海健 目录第1章 绪论1第2章CCS简介3 CCS集成开发环境简介3 CCS工作模式3 CCS的组成3 CCS的主要功能4 CCS的安装及设置5 系统配置要求5第3章 实现原理66 正弦信号发生器的实现7第4章 系统仿真1515 调试16 仿真结果16第5章 心得体会18参考文献19第1章 绪论数字信号处理是20世纪60年代,随着信息学科和计算机学科的高速发展而迅速发展起来的一门新兴学科。它的重要性日益在各个领域的应用中表现出来。
4、其主要标志是两项重大进展,即快速傅里叶变换(FFT)算法的提出和数字滤波器设计方法的完善。数字信号处理是把信号用数字或符号表示成序列,通过计算机或通用(专用)信号处理设备,用数值计算方法进行各种处理,达到提取有用信息便于应用的目的。例如:滤波、检测、变换、增强、估计、识别、参数提取、频谱分析等。数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。因此在进行数字信号处理之前需要将信号从模拟域转换到数字域,这通常通过模数转换器实现。而数字信号处理的输出经常也要变换到模拟域,这是通过数模转换器实现的。数字信号处理的算法需要利用计算机或专用处理设备如数字信号处理器(DSP)和专用集成电路(AS
5、IC)等。数字信号处理的研究方向应该更加广泛、更加深入特别是对于谱分析的本质研究,对于非平稳和非高斯随机信号的研究,对于多维信号处理的研究等,都具有广阔前景。数字信号处理技术发展很快、应用很广、成果很多。多数科学和工程中遇到的是模拟信号。以前都是研究模拟信号处理的理论和实现。模拟信号处理缺点:难以做到高精度,受环境影响较大,可靠性差,且不灵活等。数字系统的优点:体积小、功耗低、精度高、可靠性高、灵活性大、易于大规模集成、可进行二维与多维处理。随着大规模集成电路以及数字计算机的飞速发展,加之从60年代末以来数字信号处理理论和技术的成熟和完善,用数字方法来处理信号,即数字信号处理,已逐渐取代模拟信
6、号处理。数字信号处理是利用计算机或专用处理设备,以数字形式对信号进行采集、变换、滤波、估值、增强、压缩、识别等处理,以得到符合人们所需要的信号形式。数字信号处理是将信号以数字方式表示并处理的理论和技术。数字信号处理与模拟信号处理是信号处理的子集。数字信号处理技术及设备具有灵活、精确、抗干扰强、设备尺寸小、造价低、速度快等突出优点,这些都是模拟信号处理技术与设备所无法比拟的。数字信号处理(Digital Signal Processing,简称DSP)是一门涉及许多学科而又广泛应用于许多领域的新兴学科。数字信号处理是围绕着数字信号处理的理论、实现和应用等几个方面发展起来的。数字信号处理在理论上的
7、发展推动了数字信号处理应用第2章CCS简介 CCS集成开发环境简介利用CCS集成开发环境,用户可以在一个开发环境下完成工程定义、程序编辑、编译链接、:(1)(C或汇编)、目标文件、库文件、连接命令文件和包含文件.(2)(.h文件),命令文件(.cmd文件)和源程序(.c,.asm文件).(3),将在构建(Build),更改错误.(4)排除程序的语法错误后,用户可以对计算结果/输出数据进行分析,、图形显示、性能测试等工具来分析数据、评估性能. CCS工作模式CCS是TI公司针对TMS320系列DSP的集成开发环境,在Windows操作系统下,采用图形接口界面,提供有环境配置、源文件编辑、程序调试
8、、跟踪和分析等工具。CCS有两种工作模式,即:软件仿真器模式:可以脱离DSP芯片,在PC机上模拟DSP的指令集和工作机制,主要用于前期算法实现和调试。硬件在线编程模式:可以实时运行在DSP芯片上,与硬件开发板相结合在线编程和调试应用程序。 CCS的组成CCS的开发系统主要由以下组件构成1. TMS320C54x集成代码产生工具 用来对C语言、汇编语言或混合语言编程的DSP源程序进行编译汇编,并链接成为可执行的DSP程序。主要包括汇编器、链接器、C/C+编译器和建库工具等。 2. CCS集成开发环境 集编辑、编译、链接、软件仿真、硬件调试和实时跟踪等功能于一体。包括编辑工具、工程管理工具和调试工
9、具等。 3. DSP/BIOS实时内核插件及其应用程序接口API主要为实时信号处理应用而设计。包括DSP/BIOS的配置工具、实时分析工具等。 可对目标系统数据进行实时监视,实现DSP与其他应用程序的数据交换。 5. 由TI公司以外的第三方提供的应用模块插件 CCS的主要功能 CCS的功能十分强大,它集成了代码的编辑、编译、链接和调试等诸多功能,而且支持C/C+和汇编的混合编程,其主要功能如下 具有集成可视化代码编辑界面,用户可通过其界面直接编写C、汇编、.cmd文件等; 含有集成代码生成工具,包括汇编器、优化C编译器、链接器等,将代码的编辑、编译、链接和调试等诸多功能集成到一个软件环境中;
10、高性能编辑器支持汇编文件的动态语法加亮显示,使用户很容易阅读代码,发现语法错误; 工程项目管理工具可对用户程序实行项目管理。在生成目标程序和程序库的过程中,建立不同程序的跟踪信息,通过跟踪信息对不同的程序进行分类管理; 基本调试工具具有装入执行代码、查看寄存器、存储器、反汇编、变量窗口等功能,并支持C源代码级调试; 断点工具,能在调试程序的过程中,完成硬件断点、软件断点和条件断点的设置; 探测点工具,可用于算法的仿真,数据的实时监视等; 分析工具,包括模拟器和仿真器分析,可用于模拟和监视硬件的功能、评价代码执行的时钟; 数据的图形显示工具,可以将运算结果用图形显示,包括显示时域/频域波形、眼图
11、、星座图、图像等,并能进行自动刷新; 提供GEL工具。利用GEL扩展语言,用户可以编写自己的控制面板/菜单,设置GEL菜单选项,方便直观地修改变量,配置参数等; 支持多DSP的调试; 支持RTDX技术,可在不中断目标系统运行的情况下,实现DSP与其他应用程序的数据交换; 提供DSP/BIOS工具,增强对代码的实时分析能力。 CCS的安装及设置 在使用CCS之前,必须首先按照CCS的产品说明安装CCS软件;其次创建CCS系统配置,进行环境设置;最后,按照具体使用的仿真器,安装目标板和驱动程序。 系统配置要求 机器类型:IBM PC及兼容机; 操作系统:Microsoft Windows 95/9
12、8/2000或Windows ; 机器资源配置要求:机器部件最低配置推荐配置内存32MB128MB剩余硬盘空间100MB200MBCPUPentiumPentium以上显示分辨率SVGA 800600SVGA 1024768主板插槽一条空余EISA插槽一条空余EISA插槽图2-1 机器资源配置图第3章 实现原理正弦波信号发生器已被广泛地应用于通信、仪器仪表和工业控制等领域的信号处理系统中。通常有两种方法可以产生正弦波,分别为查表法和泰勒级数展开法。查表法是通过查表的方式来实现正弦波,主要用于对精度要求不很高的场合。泰勒级数展开法是根据泰勒展开式进行计算来实现正弦信号,它能精确地计算出一个角度的
13、正弦和余弦值,且只需要较小的存储空间。本次主要用泰勒级数展开法来实现正弦波信号。 产生正弦波的算法 正弦函数和余弦函数可以展开成泰勒级数,其表达式:取泰勒级数的前5项,得近似计算式:递推公式: sin(nx) = 2cos(x)sin(n-1)x-sin(n-2)x cos(nx) = 2cos(x)sin(n-1)x-cos(n-2)x 由递推公式可以看出,在计算正弦和余弦值时,需要已知cos(x)、sin(n-1)x、sin(n-2)x和cos(n-2)x。 正弦信号发生器的实现先计算045()的sin和cos值,在利用sin2a=2sina*cosa求出0-90sin值(间隔为1)。然后
14、,通过复制,获得0359的正弦值。重复向PA0口输出,便可得到正弦波。程序如下: .title .mmregs .def _c_int00 .ref sinx,d_xs,d_sinx,cosx,d_xc,d_cosxsin_x: .usect sin_x,360STACK: .usect STACK ,10k_theta .set 286 PA0 .set 0_c_int00: .text STM #STACK + 10, SP STM k_theta, AR0 STM 0,AR1 STM #sin_x, AR6 STM #90, BRC RPTB loop1-1 LDM AR1, A LD
15、# d_xs, DP STL A,d_xs STL A, d_xc CALL sinx CALL cosx LD #d_sinx,DP LD d_sinx,16,A MPYA d_cosx STH B,1, *AR6+ MAR *AR1+0loop1: STM #sin_x+89, AR7 STM #88, BRC RPTB loop2-1 LD *AR7-,A STL A, *AR6+loop2: STM #179 , BRC STM #sin_x, AR7 RPTB loop3-1 LD *AR7+, A NEG A STL A, *AR6+loop3: STM #sin_x, AR6 S
16、TM #1, AR0 STM #360,BKloop4: PORTW *AR6+0%, PA0 B loop4sinx: .def d_xs,d_sinx .datatable_s .word 01c7h .word 030bh .word 0666h .word 1556h d_coef_s .usect coef_s,4d_xs .usect sin_vars ,1d_squr_xs .usect sin_vars ,1d_temp_s .usect sin_vars ,1d_sinx .usect sin_vars ,1c_1_s .usect sin_vars ,1 .text SSB
17、X FRCT STM #d_coef_s, AR5 RPT #3 MVPD #table_s, *AR5+ STM #d_coef_s, AR3 STM #d_xs, AR2 STM #c_1_s, AR4 ST #7FFFh, c_1_s SQUR *AR2+, A ST A, *AR2 | LD *AR4, B MASR *AR2+, *AR3+, B, A MPYA A STH A, *AR2 MASR *AR2-, *AR3+, B, A MPYA *AR2+ ST B, *AR2 | LD *AR4, B MASR *AR2- , *AR3+, B, A MPYA *AR2+ ST
18、B, *AR2 | LD *AR4, B MASR *AR2- , *AR3+ , B, A MPYA d_xs STH B, d_sinx RETcosx: .def d_xc,d_cosxd_coef_c .usect coef_c , 4 .datatable_c .word 0249h .word 0444h .word 0aabh .word 4000h d_xc .usect cos_vars,1d_squr_xc .usect cos_vars,1d_temp_c .usect cos_vars,1d_cosx .usect cos_vars,1c_1_c .usect cos_
19、vars,1 .text SSBX FRCT STM #d_coef_c, AR5 RPT #3 MVPD #table_c, *AR5+ STM #d_coef_c, AR3 STM #d_xc, AR2 STM #c_1_c, AR4 ST #7FFFh,c_1_c SQUR *AR2+, A ST A, *AR2 | LD *AR4,B MASR *AR2+, *AR3+,B,A MPYA A STH A, *AR2 MASR *AR2-, *AR3+,B,A MPYA *AR2+ ST B, *AR2 | LD *AR4, B MASR * AR2-, * AR3+,B,A SFTA
20、A,-1,A NEG A MPYA *AR2+ MAR *AR2+ RETD ADD *AR4,16,B STH B, *AR2 RET .end .title .ref _c_int00 .sect .vectors B _c_int00 .endMEMORY PAGE 0: EPROM: org=0E000h, len=1000h VECS: org=0FF80h, len=0080h PAGE 1: SPRAM: org=0060h, len=0020h DARAM1: org=0080h, len=0010h DARAM2: org=0090h, len=0010h DARAM3: o
21、rg=0200h, len=0200hSECTIONS .text : EPROM PAGE 0 .data : EPROM PAGE 0 STACK : SPRAM PAGE 1 sin_vars : DARAM1 PAGE 1 coef_s : DARAM1 PAGE 1 cos_vars : DARAM2 PAGE 1 coef_c : DARAM2 PAGE 1 sin_x :align(512) DARAM3 PAGE 1 .vectors : VECS PAGE 0 (4),输出数据文件是一个空文件。分别存放输入的单位冲击数据和输出的单位冲击数据。,第一个为0x7FFF,:0x7f
22、ff0x00x00x0第4章 系统仿真(1)打开Setup CCStudio ,选择C5402芯片并加载 (2)选择ProjectNew命令,打开建立工程项目对话框,在Project框中键入要创建的工程项目名为sin。工程项目建立以后,就可以选择ProjectAdd File to Project命令,向工程项目添加以下文件: ; (3)选择ProjectBuild或ProjectRebuild All命令,对工程项目中的文件进行编译、汇编和链接,生成可以在目标系统中运行的、可执行的输出文件()(4)选择FileLoad Program命令,之后就可以进入到调试阶段了。 调试定义配置I/O口端
23、的GEL函数,:GEL_MapAdd(0x0001u,2,0x0001u,1,0);GEL_MapAdd(0x0000u,2,0x0001u,0,1);以设置I/O口:将数据文件与I/O口相关联。方法是:选择Tool PortConnect命令,打开连接对话框。单击Connect按钮,在弹出的Connect按钮,在弹出的Connect对话框中,选择Port;1;Length:1;Page:Read,,在Connect对话框中,选择Port;0;Length:1;Page:Read,. Connect对话框显示的数据文件与I/O口地址相关联的情况如图4-1所示。图4-1数据文件与I/O口地址相关
24、联情况 仿真结果选择ViewGraphTime/Frequency命令,在弹出的对话框中设置参数如图4-2所示图4-2显示滤波器单位冲击响应图形参数设置对话框运行结果如图4-3所示图4-3正弦波波形第5章 心得体会此次课程设计,基于课程理论知识和网上资料,使我对数字信号处理课程有了更深一步的了解和掌握,对利用CCS软件编程的数字信号处理方法有了进一步的了解。在理论课的基础上进行实验实习,是对本门课程的深入学习和掌握,在以后的工作学习中,数字信号的处理都是采用计算机仿真的方法进行测试,因此,掌握基于计算机的数字信号处理方法对以后的工作和学习有很大的帮助。这样一个课程设计对我们的发展有着极大的帮助
25、!基于DSP实现的这种信号发生器充分发挥了DSP器件的主要性能优势,它比传统的信号发生器具有一定的独到之处,它编程灵活、操作简单,体积小巧,电路结构简单,使用方便,而且还有许多可扩展的功能,故其使用面更加宽广,鉴于DSP具有较高的性价比,且利用DSP作为主控制器来提高传统产品的性能已成为大势所趋。因此,本系统的应用对提高工程及教学实验水平具有重要的意义。作为一名专业学生掌握一门或几门专业软件同样是必不可少的,对专业学习十分有利。另外,课堂上也有部分知识不太清楚,于是我又不得不边学边用,时刻巩固所学知识,这也是我作本次课程设计的第二大收获。整个设计我基本上还满意,由于水平有限,难免会有错误。我会在以后的学习中不断进步!参考文献1 M.北京:航空工业出版社,1988 2 张伟雄,陈亮,M.北京:电子工业出版社,2002。