1、 湖 南 工 业 大 学 课 程 设 计 资 料 袋 计算机与通信 学院(系、部) 20112012 学年第 一 学期 课程名称: DSP 应用技术 指导教师: 职称 学生姓名: 专业班级 通信 082 班 学号 设计题目: 基于 TMS320C5402的 FSK调制器设计与实现 成 绩: 起止日期: 2011 年 11 月 28 日 至 2011 年 12 月 9 日 目录清单 序号 材料名称 资料数量 备注 1 课程设计任务书 1 2 课程设计说明书 1 3 4 5 6 湖南工业大学 课程设计任务书 2011 2012 学年第 1 学期 计算机与通信 学院 通信工程 专业 通信 082 班
2、级 课程名称: DSP 应用技术 设计题目: 基于 TMS320C5402 的 FSK 调制器设计与实现 完成期限:自 2011 年 11 月 28 日至 2011 年 12 月 9 日共 2 周 内 容 及 任 务 一、基本要求 熟悉 FSK 调制器的原理与 FSK 信号产生的方法,掌握其 DSP 的实现过程。 二、设计任务 主要内容: ( 1) 编写程序; ( 2) 程序要完善、优化,能运行于 C5402 开发板 ,能演示输入输出数据的完整图形,显示结果,并对程序或相关设计予以解释。 主要任务: 1、 算法设计; 2、 程序设计; 3、 程序的调试与各项性能的测试。 三、设计工作量 2 周
3、完成 进 度 安 排 起止日期 工作内容 11 月 28 日 分组、任务分配、课题理解 11 月 29 日 -12 月 4 日 功能分析、 程序设计、系统 设计和实现 12 月 4 日 -12 月 5 日 实验验证和 考核 12 月 9 日 总结、书写实验报告 参 考 资 料 (1) 李 利 等 . DSP 原理及应用 .中国水利出版社 .2010.1 (2) 张卫宁 . DSP 原理 与应用教程 .科学 出版社 .2008.4 指导教师 (签字): 年 月 日 系 ( 教 研 室) 主任 ( 签字): 年 月 日 DSP 应用技术 课程设计说明书 基于 TMS320C5402 的 FSK 调
4、制器设计与实现 起止日期: 2011 年 11 月 28 日 至 2011 年 12 月 9 日 学 生 姓 名 班级 学号 成绩 指导教师 ( 签 字 ) 计算机与通信学院 2011 年 12 月 9 日 课题名称 基于 TMS320C5402 的 FSK 调制器设计与实现 人 数 8 人 组 长 陈潇逸 同组人员 刘婵、朱文军、苏洋、胡鹏、 王鹏程、肖文炎、陈红波 课 题 的 主 要 内 容 和 要 求 一、基本要求 熟悉 FSK 调制器的原理与 FSK 信号产生的方法,掌握其 DSP 的实现过程。 二、设计任务 主要内容 1、编写程序 2、程序要完善、优化,能运行于 C5402 开发板,
5、能演示输入输出数据的完整图形,显示结果,并对程序或相关设计予以解释。 主要任务 1、 算法设计 2、 程序设计 3、 程序的调试与各项性能的测试 三、设计工作量 2 周完成 具体任务 分析课题并查找相关资料 讨论相关程序编写 执行程序并调测程序 观察并记录结果 总结并书写报告 时间安排 11 月 28 日 课题理解,任务分配 11 月 29 日至 30 日 功能分析并查阅相关的资料进行初步设计 12 月 1 日至 2 日 编写 编写源程序 FSK.asm 12 月 3 日 编写相关的中断向量表文件和连接配置文件 12 月 4 日至 5 日 建立工程文件、波形 文件 12 月 6 日 建立输入、
6、输出文件并进行程序的调试 12 月 7 日 精简优化程序,完善程序设计功能 12 月 8 日 观察程序运行结果并记录 12 月 9 日 总结并书写设计报告 一、设计目的 1、熟悉 FSK 调制器的原理、特点和应用; 2、掌握 FSK 信号产生的方法; 3、熟悉使用 DSP 实现 FSK 信号产生器的设计过程。 通过该设计,熟悉 FSK 调制器的原理和方法,掌握其 DSP 程序设计与实现过程,以及程序的调试技巧,是对 DSP 应用技术理论学习的总 结和补充,为 DSP 应用系统的开发设计打下基础 。 二、仪器与设备 1、 PC微机 1台,安装 CCS3.3 2、 DSP 仿真器 TDS510-U
7、SB2.0, 1 套 3、 TI C54x 开发板 1套 三、设计原理 1、 FSK 概述 FSK 是移频键控的简称,故二进制移频键控常简写为 2FSK。在实际应用中,应用最为泛的是 2FSK,故 FSK 常泛指为 2FSK。 2FSK 信号是 0 符号对应于载频为 W1,而 1符号对应于载频 W2,而且两者之间的改变是瞬间完成的。容易想到, 2FSK 信号可利用一个矩形脉冲序列对一个载波进行调频而获得。这正 是频率键控通信方式早期采用的实现方法,也是利用模拟调频法实现数字调频的方法。 2FSK 信号的另一产生方法便是采用键控法,即用受矩形脉冲序列控制的开关电路对两个不同的独立频率源进行选通。
8、 2、本实验采用的方法 本实验是纯数字的调制方法:先把两种频率的波形数据存储起来,当调制数据为 1时选择 W1 的波形输出;当调制数据为 0时,选择频率为 W2(事先已设置成 W1=2*W2)的波形输出。显然这与上述的键控法是一致的。当然可以采用其它的调制方法,但此方法最简单、运算速度也最快。 四、设计内容 1、编写程序,实现对数字信号 的 FSK 调制; 2、程序完善、优化,在 C5402 开发板调试; 3、能演示输入输出数据的完整图形,显示结果,并对程序或相关设计予以解释。 五、设计步骤 1、用仿真机将计算机与 ZY13DSP12BD 实验箱连接好,并依次打开实验箱电源、仿真机电源,然后运
9、行 CCS 软件。 2、新建一个项目:点击 Project New,将项目命名为 FSK,并将项目保存在自己定义的文件夹下,注意文件夹一定要用英文名,不要将文件夹取名为中文名,因为 CCS 软件不能识别以中文命名的文件夹。 3、新建一个源文件:点击 File New Source File 可以打开一个文本编辑窗口,点击保存按键,保存在和项目相同的一个文件夹下面 (FSK),保存类型选择 FSK.asm(本实验中的程序是使用汇编语言编写的 ,所以后缀名为 .asm ) 4、在项目中添加源文件:在新建立了一个源文件以后,要想使用 CCS 编译器对该源文件进行编译还需要将源文件添加到项目中去。添加
10、方法是在工程管理器中右键单击 FSK.pjt,在弹出的菜单中选择 Add Files,然后将刚才建立的FSK.asm 文件添加到该项目中去。 5、编写源程序: 在工程管理器中双击 FSK.asm ,将出现 文本编辑窗口,在该文本编辑窗口中输入如下内容: * *FSK 调制程序 F0 为 64 个点,一个周期波形; F1 为 64 个点,两个周期波形 * .title “FSK.asm“ .mmregs .copy “FSKCOEFF.inc“ .copy “FskBitTxt.Inc“ .def start indata .usect “buffer“,1 outdata .usect “bu
11、ffer“, 512 * .text start: LD #Bit, DP STM #Bit, AR1 STM #outdata,AR4 * input: nop LD *AR1,A ;读入数据 BC A1,AGT ;if A0,then goto A1 STM #F0,AR3 ;A=0 B OUT A1: STM #F1,AR3 ;A=1 B OUT * OUT: RPT #63 MVDD *AR3+,*AR4+ nop B input .end 6、编写链接配置文件( FSK.cmd) vectors.obj FSK.obj -o FSK.out -m FSK.map -estart ME
12、MORY PAGE 0: EPROM: org=0100H,len=0F70H VECS: org=0080H,len=0080H PAGE 1: DARAM: org=1000H,len=2000H SECTIONS .text : EPROM PAGE 0 F0 : EPROM PAGE 0 F1 : EPROM PAGE 0 .bss : DARAM PAGE 1 STACK : DARAM PAGE 1 buffer : DARAM PAGE 1 .vectors : VECS PAGE 0 7、 编写中断向量表文件( vectors.asm) /* vectors.asm */ .t
13、itle “vectors.asm“ /*/ .ref start /*/ .sect “.vectors“ /*/ B start /* start*/ .end 8、 建立波形文件( FSKCOEFF.inc) F0: .word 0, 3211, 6392, 9512, 12539, 15446, 18204, 20787 .word 23170, 25330, 27245, 28898, 30273, 31357, 32138, 32610 .word 32767, 32610, 32138, 31357, 30273, 28898, 27245, 25330 .word 23170,
14、 20787, 18204, 15446, 12539, 9512, 6392, 3211 .word 0, -3211, -6392, -9512,-12539,-15446,-18204,-20787 .word -23170,-25330,-27245,-28898,-30273,-31357,-32138,-32610 .word -32768,-32610,-32138,-31357,-30273,-28898,-27245,-25330 .word -23170,-20787,-18204,-15446,-12539, -9512, -6392, -3211 F1: .word 0
15、, 6352, 12464, 18102, 23054, 27131, 30178, 32081 .word 32766, 32208, 30428, 27493, 23515, 18645, 13067, 6994 .word 655, -5708,-11855,-17552,-22584,-26758,-29917,-31941 .word -32753,-32322,-30665,-27844,-23967,-19180,-13665, -7632 .word 0, 6352, 12464, 18102, 23054, 27131, 30178, 32081 .word 32766, 3
16、2208, 30428, 27493, 23515, 18645, 13067, 6994 .word 655, -5708,-11855,-17552,-22584,-26758,-29917,-31941 .word -32753,-32322,-30665,-27844,-23967,-19180,-13665, -7632 9、 建立输入波形文件( FskBitTxt.Inc) Bit: .word 1 .word 1 .word 0 .word 1 .word 1 .word 0 .word 1 .word 1 .word 1 .word 1 .word 0 .word 1 .wor
17、d 1 .word 1 .word 1 .word 0 .word 0 .word 1 .word 1 .word 0 .word 1 .word 1 .word 1 .word 1 .word 1 .word 1 .word 1 .word 1 .word 1 .word 0 .word 0 .word 0 10、 对项目进行编译和链接 把 FSK.asm、 vectors.asm、 FSK.cmd、 FSKCOEFF.inc 依次添加到项目后,点击 Project Compile File,在项目编译成功之后点击 Project Build 选项对该项目进行链接,生成 FSK.out 文件
18、。 11、 装载可执行文件 要让程序代码在 DSP 内部运行必需将生成的 FSK.out 文件装载到 DSP 内部,装载方法是点击: File Load Programe 再选择生成的 FSK.out 文件就可以将程序装载到 DSP 的内部存储器中。 12、 运行程序并查看结果 a)点击 View Graph Time/Frequence,出现“ Graph Property Dialog” ,按下图所示设置,然后点击 OK,即会出现一个图形窗口 此步骤用于观察调制信号。 b)点击 View Graph Time/Frequence,出现“ Graph Property Dialog”,按下图
19、所示设置,然后点击 OK,即会出现一个图形窗口 此步骤用于观察调制后的信号。 c)按 F11 运行程序(注意不要直接运行程序)。此时即可看到如下图所示的结果,且图形不断闪烁(在更新)。 d)运行完程序后会生成调制后的 FSK 信号,数据保存在工程项目中的out.dat 中(此文件可作为 FSK 解调程序的输入数据);建议采用单步执行的方法来查看调制后的数据波形是否正确。 六、心得体会 我们刚接到这个课程设计题目时,确实不知道如何下手,甚至觉得不可能完成,不过经过老师的讲解和我们组员之间的讨论,还是觉得有点眉目。不过还是有疑惑,我们决定分工, 对 每个问题进行深入的了解和突破,我们分别在网上和图
20、书馆查找资料,实在没办法解决的就请教龙老师,他就很耐心的给我们讲解,从中我们不仅能学到书本上的知识,更重要的是老师把他的亲身遇到的问题和他的解 决办法也给我们讲,让我们学到更多书本上没法学到的东西,在以后的路上也少走了些弯路,还是 得感谢龙永新老师在这次课程设计中给我们很多的问题讲解,让我们能在规定的时间内完成此次课程设计。 总而言之, 通过 此次课程设计让我明白了合作的重要性,精诚合作就能达到事半功倍的效果。也 让我感受到只有在充分理解课本知识的前提下,才能更好运用 ,这让我在今后的学习中有了更加浓厚的兴趣,也更加明白了学习的目标。同时,在这次设计让 提升了 我 遇到问题、 分析问题 、 动手解决问题 的能力 , 也 提高了分析和动手实践能力。 也对 dsp 的有关软件有了更进一步 的理解。 我相信,通