基于DDS的基本原理设计的低频信号发生器.doc
《基于DDS的基本原理设计的低频信号发生器.doc》由会员分享,可在线阅读,更多相关《基于DDS的基本原理设计的低频信号发生器.doc(14页珍藏版)》请在沃文网上搜索。
1、摘 要本课程设计是基于DDS的基本原理设计的低频信号发生器。以AT89C51单片机为核心。通过R-2R网络作为数模转换器件,将已经生成的数字信号进行数模转换,最终实现模拟信号的输出。本次课程设计使用了KILE软件对程序进行编译和PROTEUS软件对实验电路和结果进行仿真,波形的产生和相应的频率由软件编程来实现;波形类型选择和频率大小由按键来控制输出的信号经过滤波放大最后由输出终端输出。这个信号发生器最终可以产生正弦波、三角波、方波、锯齿波。关键词:信号发生器;AT89C51;R-2R;DDS目 录1 引言31.1设计目的31.2设计要求32 设计方案和原理32.1设计原理32.2主程序设计42
2、.3设计思想53 硬件设计53.1硬件原理框图53.2资源分配63.3振荡器特性63.4芯片擦除63.5 R-2R 网络63.6电路结构及原理74 软件设计74.1正弦波程序设计74.2三角波程序设计84.3方波程序设计84.4锯齿波程序设计85 仿真及调试95.1 R-2R网络的仿真95.2仿真结果96 总结107 参考文献11附录1 在PROTEUS下面的仿真图11附录2 源程序11基于51单片机的函数信号发生器1 引言1.1设计目的波形发生器是信号源的一种,主要给被测电路提供所需要的已知信号(各种波形),然后用其它仪表测量感兴趣的参数。可见信号源在各种实验应用和试验测试处理中,它的应用非
3、常广泛。它不是测量仪器,而是根据使用者的要求,作为激励源,仿真各种测试信号,提供给被测电路,以满足测量或各种实际需要。1.2设计要求本文是做基于R-2R网络的低频信号发生器的设计,将采用编程的方法来实现三角波、锯齿波、矩形波、正弦波的发生。根据设计的要求,对各种波形的频率和幅度进行程序的编写,并将所写程序装入单片机的程序存储器中。在程序运行中,当接收到来自外界的命令,需要输出某种波形时再调用相应的中断服务子程序和波形发生程序,经电路的数/模转换器和运算放大器处理后,从信号发生器的输出端口输出。制作低频信号发生器可以用八位的R-2R网络作为DA转换器来实现,将输出的模拟量通过低通滤波器,即可得到
4、频率稳定、失真度小的波形。 2 设计方案和原理2.1设计原理数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再转换成模拟信号的方法来获得所需要的波形。89C51单片机本身就是一个完整的微型计算机,具有组成微型计算机的各部分部件:中央处理器CPU、随机存取存储器RAM、只读存储器ROM、I/O接口电路、定时器/计数器以及串行通讯接口等,只要将89C51再配置键盘及其接口、数模转换及波形输出等部分,即可构成所需的波形发生器,其信号发生器构成原理框图如图1。滤波放大D/A转换器89C51单片机输出输出图1 信号发生器原理框图89C51是整个波形发生器的核心部分,通过程序的编写和执行
5、,产生各种各样的信号,并从键盘接收数据,进行各种功能的转换和信号幅度的调节。当数字信号经过接口电路到达转换电路,将其转换成模拟信号也就是所需要的输出波形。2.2主程序设计整个设计的流程图如图2。开始Key按一次正弦波Key按两次三角波Key按三次方 波Key按四次锯齿波Y是是是否否否否结束是图2 主程序流程图本设计过程中主要实现利用按键来控制不同波形的输出,当按键KEY1按下1次时,信号发生器就输出正弦波;当按键KEY1按下2次时,信号发生器就输出三角波;当按键KEY1按下3次时,信号发生器就输出方波;当按键KEY1按下4次时,信号发生器就输出锯齿波。通过按键可以以任意循环方式输出不同波形。按
6、键KEY4按下时复位。2.3设计思想(1)利用单片机产生方波、正弦波、三角波和锯齿波等信号波形,信号的频率和幅度可变。(2)将一个周期的信号分离成256个点(按X轴等分),每两点之间的时间间隔为T,用单片机的定时器产生,其表示式如下式1所示。 (1)如果单片机的晶振为12MHz,采用定时器方式0,则定时器的初值如下式2所示。 (2)定时时间常数如下式3和4所示。 (3) (4)MOD32表示除32取余数。(3)正弦波的模拟信号是D/A转换器的模拟量输出,其计算公式如下式5所示。 (5)其中(A=VREF t=NT N=1256) 那么对应着存放在计算机里的这一点的数据如下式所示。 (6) (4
7、)一个周期被分离成256个点,对应的四种波形的256个数据存放在以TAB1-TAB4为起始地址的存储器中。3 硬件设计3.1硬件原理框图硬件原理方框图如图3。89C51是整个低频信号发生器的核心部分,通过程序的编写和执行,产生各种各样的信号,并从键盘接收数据,进行各种功能的转换和信号幅度的调节。当数字信号经过接口电路到达转换电路,将其转换成模拟信号也就是所需要的输出波形。其工作原理为当分别每按下按键一次就会分别出现正弦波、三角波、方波、锯齿波。图3 硬件原理框图3.2资源分配软、硬件设计是设计中不可缺少的,为了满足功能和指标的要求,资源分配如下:(1)晶振采用12MHZ;(2)内存分配(4K字
8、节的ROM用来存储软件程序);(3)P0口与R-2R网络的八位数据输入端相连;(4)P1口用来接按键(key1、key2、key3)。3.3振荡器特性XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。3.4芯片擦除整个EPROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节
9、被重复编程以前,该操作必须被执行。此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。 3.5 R-2R 网络由于单片机产生的是数字信号,要想得到所需要的波形,就要把数字信号转换成模拟信号, 本文所使用的N位电压型R-2R梯形电阻网络。应用R-2R电阻网络实现DAC 功能,其优点是成本低、结构简单、分辨率高、容易实现、响应速度快,其电路结构及原理如下所述。3.6电路结构及原理 图4
10、为T型R-2R网络。(1)电阻网主要由R和2R两种电阻呈T型构成。 (2)模拟开关由两级CMOS反相器产生两路反相信号,各自控制一个NMOS开关管,实现模拟单刀双掷的开关功能。 (3)读出电路是一个求和放大器。(4)基准源V R 。图4 T形R-2R电阻网络4 软件设计软件设计上,根据功能分了几个模块编程。模块主要有:主程序模块、正弦波模块、三角波模块、方波模块、锯齿波模块等。4.1正弦波程序设计 正弦波产生的程序如下: if(fun=1) D1=tosinb; b+; 程序中的tosinb是正弦波的采样表,其包含了在一个周期内,正弦波的256个采样值。生成码表的过程中要注意四舍五入和溢出的问
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 DDS 基本原理 设计 低频 信号发生器