您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 廖林 函数信号发生器的设计
重庆电力高等专科学校信息0911廖林第1页共24页重庆电力高等专科学校计算机科学系设计报告课程名称电子产品设计开发设计名称函数信号发生器的设计班级信息0911姓名廖林学号200903020243教师徐纯新日期2011-06-30地点机房及教室设计成绩评定:重庆电力高等专科学校信息0911廖林第2页共24页目录1、设计概况...............................3设计背景……………………………………3基本原理…………………………………….4提出解决问题的方案及选取…………………4波形的确定…………………………………..72、波形说明...........73、其他说明.............9单片机……………………………………..9数模转换及运放部分………………………….11显示部分………………………………………..13按键部分………………………………………….13电源部分…………………………………………..144、心得体会..............155、附录............16程序………………………………………….16原理图…………………………………………24重庆电力高等专科学校信息0911廖林第3页共24页一、设计概况:1.1设计背景函数信号发生器是一种能能够产生多种波形的设备(电路),,如三角波、锯齿波、矩形波(含方波)、正弦波的电路被称为函数信号发生器。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。现在我们通过对函数信号发生器的原理以及构成设计一个能变换出三角波、正弦波、方波的简易函数信号发生器。在自动控制系统设计、调试和电子实验过程中,经常会遇到需要不同频率的正弦波、方波和三角波等信号作为信号源。虽然有很多方法可以产生出方波还有正弦波,我们可以用数字电路的方法,也可以用模拟电路的方法。常规的方法多采用分立元件达成非稳态的多谐振荡器,然后根据具体需要加入积分电路等构成正弦、方形和三角波等波形发生器。这种信号发生器输出频率范围窄且电路设计参数设定比较繁琐,其频率大小的测量往往需要通过硬件电路的切换来实现不同范围值的测量,电路设计复杂,操作不便,这些方法在实际应用时很不方便,例如想要使频率可调或使相位差可调,就很麻烦,最主要就是通过很多硬件连接而成,这样就投入了很高的成本,同时遥控起来也很不方便。而如果用单片机的话,这些就很可能很简单,通过对单片机的编程,我们不需要深入研究电路的复杂的连线,只需用C语言写出程序,在写入单片机,连上硬件电路。就可以产生频率和相位都可调的方波。所以这里就采用了软件编程的方式来进行波形的产生,利用编写波形数据表的方式来实现波形的产生。我们通过对电路的分析,参数的确定选择出一种最适合本课题的方案。在达到课题要求的前提下保证最经济、最方便、最优化的设计策略。按照设计的方案选择具体的原件,焊接出具体的实物图,并在实验室对焊接好的实物图进行调试,观察效果并与课题要求的性能指标作对比。最后分析出现误差的原因以及影响因素。重庆电力高等专科学校信息0911廖林第4页共24页1.2基本原理函数发生器的组成是指能自动产生正弦波、方波、三角波的电压波形的电路或者仪器。电路形式可以采用由运放及分离元件构成;也可以采用单片集成函数发生器。根据用途不同,有产生三种或多种波形的函数发生器,本课题介绍方波、三角波、正弦波函数发生器的方法。1.3提出解决问题的方案及选取方案一:用运算放大器,粹的硬件电路来实现由运算放大器单路及分立元件构成,方波——三角波——正弦波函数发生器电路组成如图所示,由于技术难点在三角波到正弦波的变换,故以下将详细介绍三角波到正弦波的变换。重庆电力高等专科学校信息0911廖林第5页共24页以上那个是利用差分放大电路实现三角波——正弦波的变换,波形变换的原理是利用差分放大器的传输特性曲线的非线性,波形变换过程我们可以推算出,传输特性曲线越对称,线性区域越窄越好;三角波的幅度也是更加的合适,这样不断的调节就达到了要求,但是似乎太繁琐了。方案二:利用软件编程,利用AD9850来实现。重庆电力高等专科学校信息0911廖林第6页共24页选用单片机作为实验课程的主控芯片,通过键盘输入所需信号的频率数值,该数值经单片机芯片处理后,形成控制字,输送给AD9850芯片,经AD9850芯片接受,识别,处理,产生我们需要的频率的正弦波,方波,三角波。单片机与AD9850的接口既可采用并行方式,也可采用串行方式,这里采用的是并行方式。为了充分发挥芯片的高速性能和节约单片机资源,本设计选择并行方式将AT89S52的P0口直接接至DDS的并行输入控制端(D0~D7)。AD9850外接50MHz的有源晶振,产生的正弦信号经低通滤波器(LPF)去掉高频谐波后即可得到波形良好的模拟信号。这样,将D/A转换器的输出信号经低通滤波后,接到AD9850内部的高速比较器上,即可直接输出一个抖动很小的方波。另外,也可通过键盘编辑任意波形的输出信号。但是在protues当中找不到这种芯片,所以放弃了这种方案。方案三:利用软件编程,利用DAC0832来实现。设计中采用的是DAC0832型芯片.它是一种使用较多的8位D/A转换器,其转换时间为1μs,工作电压为+5V~+15V,基准电压为±5V或±10V.由于其内部有两个8位寄存器和一个8位D/A转换器,故可进行两级缓冲操作,使操作重庆电力高等专科学校信息0911廖林第7页共24页有很大的灵活性。当中用到的DA0832是电流输出型的DA转换IC,所以要接运算放大器,转换成电压输出。1.4波形的确定1、从电路的设计过程来看电路分为三部分:①正弦波部分②方波部分③三角波部分,但是由于使用的是利用软件编程,采用波形数据来实现的所以,这里就和为了一体。2、波形产生部分上图只是DAC0832的一部分,最主要的参上波形的是在程序里面,通过波形的数据来产生,这里只是为了将单片机传送出来的数字信号转换为模拟的连续波形信号,以至于在示波器上显示出来。以上频率并未完全到达要求的指标范围,最主要的问题就是频率的调节还没有达到要求,同时最主要是阻抗方面还有很大的不足。最严重的一个问题就是,在进行切换到方波时有一点失真,并不是完整的,规则的方波。(当然这是运放部分的问题大一点)二、波形说明:正弦波、方波、三角波:在本次设计当中,本来是希望采用硬件的波形发生和运算放大器、比较器等重庆电力高等专科学校信息0911廖林第8页共24页来实现对正弦波、方波、三角波的产生和调整,但是最后考虑到要用到红外遥控来进行选择,所以就采用了软件的方式产生波形,但是这样就带来了很大的麻烦,比如在程序当中该怎么来控制产生的波形还有就是怎么选择波形,经过查找资料,原来可以通过波形数据的方式来实现波形的数字信号的发住,然后经过DAC0832的芯片来进行数模转换,最后经过运放来调节频率和振幅等相关数据参数。重庆电力高等专科学校信息0911廖林第9页共24页三、其他说明:1、单片机:本次实验采用的单片机是AT89C52,那么就该芯片做一个简单的介绍。89C52是INTEL公司MCS-51系列单片机中基本的产品,属于标准的MCS-51的HCMOS产品,由于开发使用的时间比较久,所以更加的稳定,同时对于我们来说也是比较熟悉的,不需要再去学习,所以开发时间就大大缩短了。它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,它基于标准的MCS-51单片机体系结构重庆电力高等专科学校信息0911廖林第10页共24页和指令系统,属于80C51增强型单片机版本,集成了时钟输出和向上或向下计数器等更多的功能。89C52内置8位中央处理单元、256字节内部数据存储器RAM、8k片内程序存储器(ROM)32个双向输入/输出(I/O)口、3个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高,这样就需要外接一个排阻,具体多大的电阻值,看运用而定,一般接的是1K到7.5K。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口还可以作为AT89C52的一些特殊功能口。以上的P2口在这一次设计当中是作为地址线而用的,就是为了给重庆电力高等专科学校信息0911廖林第11页共24页DAC0832提供片选地址。P2口在这一次设计当中是作为数据线而用的,就是为了给DAC0832传输数据信号,以达到输出波形的作用。P3口在此次设计当中是作为独立按键的控制端口的。P1口则是为了给共阴极数码管驱动器而输出数据的端口,这里用了共阴极数码管驱动器最主要是由于只在单片机上实现这样的功能端口还不够。2、数模转换及运放部分:本次实验采用的芯片是DAC0832,那么就该芯片做一个简单的介绍。DAC0832是8分辨率的D/A转换集成芯片。与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。DA转换器是由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。*D0~D7:8位数据输入线,TTL电平,有效响应时间大于90ns(否则锁存器的数据会出错);*ILE:数据锁存允许控制信号输入线,高电平有效;*CS:片选信号输入线(选通数据锁存器),低电平有效;*WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;重庆电力高等专科学校信息0911廖林第12页共24页*XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效;*WR2:DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。由WR2、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。*IOUT1:电流输出端1,其值随DAC寄存器的内容线性变化;*IOUT2:电流输出端2,其值与IOUT1值之和为一常数;*RBF:反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度;*VCC:电源输入端,Vcc的范围为+5V~+15V;*VREF:基准电压输入线,VREF的范围为-10V~+10V;*AGND:模拟信号地*DGND:数字信号地本次实验采用的芯片是OPAMP,那么就该芯片做一个简单的介绍。OPAMP是一种直流耦合,差动模式输入、通常为单端输出的高增益电压放大器,因为刚开始主要用于加法,乘法等运算电路中,
本文标题:廖林 函数信号发生器的设计
链接地址:https://www.777doc.com/doc-5392447 .html