DSP课程设计(函数信号发生器)
DSP技术与应用实例
设计题目:基于TMS320C54x DSP的函数发生器的设计
指导老师:刘晋胜
班级:电信09-x
姓名:xxxxx
学号:09034030xxx
时间: 2012年6月11日~6月15日
2011 ~2012 学年度第二学期
广东石油化工学院计算机与电子信息学院
基于TMS320C54x DSP 的函数发生器的设计
一、 设计目的:
1、 了解数字波形产生的原理;
2、 学习用DSP 产生各种波形的基本方法和步骤;
3、 掌握DSP 与D/A 转换器接口的使用。
二、 设计设备
计算机、DSP 仿真器、ZYE1801B 实验箱、20M 示波器
三、 设计原理
波形产生是DSP 的重要应用之一。而正弦信号发生器的设计则是波形产生应用的一个重要方面,它在通信领域有着广泛的应用。利用DSP 产生正弦信号有三种方法:查表法(lookup table approach )、多项式逼近法(polynomial approximation )和迭代法(recursive algorithm )。这三种方式各有其应用范围。本设计题目以TMS320C54x DSP 为目标器件,设计并实现基于迭代法的“正弦序列生成”算法及其DSP 程序。
为了减少使用的存储器,可以采用正弦信号的对称性,复制90~180度的正弦值和180~360度的正弦值。
余弦信号的产生同样可以采用多种方法产生。一是采用公式计算得到,二是采用正弦信号变换得到。
方波信号产生可以通过轮流输出两个不同大小的数值通过A/D 转换得到。
由于实验设备的DA 转换不正常工作,故全部采用查表的方法来仿真。每个波形先计算出360个数,然后将内存中的值在坐标上显示出来。
四、 设计内容
本设计题目以TMS320C54x DSP 为目标器件,设计并实现基于迭代法的“正弦序列生成”算法及其DSP 程序。
设计步骤:
1、 熟悉正弦信号发生器的算法以及在DSP 系统的实现
2、 熟悉A/D 转换的原理及实验箱的链接
!9!7!5!3)sin(9753x x x x x x +-+-=))))9
*81(7*61(5*41(3*21(2222x x x x x ----=
3、掌握A/D转换的程序的编写
4、编写DSP的正弦信号发生器的程序
5、编写定时程序产生100HZ、1KHZ、10KHZ的正弦、余弦以及100K、1M的方波信
号,每种类型的波形单周期360个点。
6、编写按键程序,控制输出。用三个拨码开关对DSP进行输入,输入的0~7对应的8
种不同的波形。
7、用示波器观察各个波形
8、分析波形失真的原因。
五、软件设计
软件流程图:
开始
初始化定时计算正弦、主函数,不
定时器判断按键跳到相应中断返回
主要部分软件代码:1、主函数:
2、定时器0中断程序:
余弦波开产生:
方波波形产生:正弦波产生:
锯齿波产生:三角波产生:
仿真波形:
六、实验心得
通过本实验我了解数字波形产生的原理,学习用DSP产生各种波形的基本方法和步骤,掌握DSP与D/A转换器接口的使用。同时也认识到自已编写代码的不足,由于本实验产生的波形都是在中断里进行了,这样的话其它中断源可能得不能及时的响应,写代码时应该只在中断里设置一些标志位,让程序在主函数里运行。这样能提高效率。同时也学习了如何排查开发板的一些故障,由于实验设备得不到及时的维护,一些开发板的DA部分不正常,因此导致看不了输出的波形。