ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:504.61KB ,
资源ID:3462783      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-3462783.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(函数信号发生器设计报告Word文档格式.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

函数信号发生器设计报告Word文档格式.docx

1、1.4 硬件实现及单元电路设计 1.4.1 单片机最小系统的设计1.4.2 数模转换模块设计 1.4.3 显示模块的设计 1.5 软件设计流程1.6 源程序1.7. 输出波形的种类与频率的测试1.8 附录 1.81 参考文献 1.82 总体设计图1、 系统设计 经过考虑,我确定方案如下:利用AT89S52单片机采用程序设计方法产生正弦波、脉冲波两种波形,再通过D/A转换器DAC0832将数字信号转换成模拟信号,滤波放大,最终由示波器显示出来,通过另一块DAC0832控制幅度的调节,通过键盘来控制两种波形的类型选择、频率变化,幅度变化,最终输出显示其各自的类型以及数值。1.1、设计要求1、 基本

2、要求(1)正弦波信号源 信号频率:步进调整,步长为; 频率稳定度:优于非线性失真系数。 (2)脉冲波信号源上升时间和下降时间:平顶斜降:脉冲占空比: (3)上述两个信号源公共要求信号频率可预置;在负载为时,输出幅度为完成5位频率的数字显示。2、发挥部分(1)正弦波和脉冲波频率步长改为(2)正弦波和脉冲波幅度可步进调整,调整范围为,步长为(3)正弦波和脉冲波频率可自动步进,步长为(4)降低正弦波非线性失真系数。 1.2.1 信号发生电路方案论证 方案一:通过单片机控制D/A,输出三种波形。此方案输出的波形不够稳定,抗干扰能力弱,不易调节。但此方案电路简单、成本低。 方案二:使用传统的锁相频率合成

3、方法。通过芯片IC145152,压控振荡器搭接的锁相环电路输出稳定性极好的正弦波,再利用过零比较器转换成方波,积分电路转换成三角波。此方案,电路复杂,干扰因素多,不易实现。 方案三:利用MAX038芯片组成的电路输出波形。MAX038是精密高频波形产生电路,能够产生准确的三角波、方波和正弦波三种周期性波形。但此方案成本高,程序复杂度高。以上三种方案综合考虑,选择方案一。1.2.2 单片机的选择论证 AT89S52单片机是一种高性能8位单片微型计算机。它把构成计算机的中央处理器CPU、存储器、寄存器、I/O接口制作在一块集成电路芯片中,从而构成较为完整的计算机、而且其价格便宜。方案二:C8051

4、F005单片机是完全集成的混合信号系统级芯片,具有与8051兼容的微控制器内核,与MCS-51指令集完全兼容。除了具有标准8052的数字外设部件,片内还集成了数据采集和控制系统中常用的模拟部件和其他数字外设及功能部件,而且执行速度快。但其价格较贵以上两种方案综合考虑,选择方案一1.2.3 显示方案论证 采用LED数码管。LED数码管由8个发光二极管组成,每只数码管轮流显示各自的字符。由于人眼具有视觉暂留特性,当每只数码管显示的时间间隔小于1/16s时人眼感觉不到闪动,看到的是每只数码管常亮。使用数码管显示编程较易,占用时间较短。采用LCD液晶显示器1602。其功率小,效果明显,显示编程容易控制

5、,可以显示字母,但使用液晶显示,需要较长时间的软件延迟,影响产生波形的频率。以上两种方案综合考虑,选择方案一。1.2.4幅度控制方案论证:可以将送给DA的数字量乘以一个系数,这样就可以改变DA输出电流的幅度,从而改变输出电压;但是这样做有很严重的问题,单片机在做乘法运算时需要很长的时间,这样的话输出波形的频率就会很低,达不到至少500HZ的要求;并且该方案的输出电压做不到连续可调,当DA的输入数字量比较小时,输出的波形失真就会比较严重。将输出电压通过一个运算放大器的放大。这样还有个优点是幅度连续可调。方案三:用另外一片DA控制波形输出DA的参考电压值,以实现幅度控制。经比较,方案三既可满足课程

6、设计的基本要求,并且电路也挺简单1.3总体系统设计该系统采用单片机作为数据处理及控制核心,由单片机完成人机界面、系统控制、信号的采集分析以及信号的处理和变换,采用按键输入,利用液晶显示电路输出数字显示的方案。将设计任务分解为按键电路、液晶显示电路等模块。图(1)为系统的总体框图 图(1) 总体方框图1.4硬件实现及单元电路设计 1.4.1单片机最小系统的设计89C51是片内有ROM/EPROM的单片机,因此,这种芯片构成的最小系统简单可靠。用80C51单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,如图(2) 89C51单片机最小系统所示。由于集成度的限制,最小应用系统只能用

7、作一些小型的控制单元。其应用特点:(1) 有可供用户使用的大量I/O口线。(2) 内部存储器容量有限。(3) 应用系统开发具有特殊性。图(2) 89C51单片机最小系统1.4.2 波形产生模块设计 由单片机采用编程方法产生三种波形、通过DA转换模块DAC0832在进过滤波放大之后输出。其电路图如下:图(3) 数模转换模块如上图所示,单片机的P0口连接DAC0832的八位数据输入端,DAC0832的输出端接放大器,经过放大后输出所要的波形。DAC0832的为八位数据并行输入的,其结构图如下: 图(4)DAC0832的内部结构1.4.3 显示模块的设计图(5)数码管显示模块1.4.4 幅度控制模块

8、及滤波模块设计图(6)幅度控制模块图(6)滤波模块模块本系统采用AT89S52单片机,用编程的方法来产生三种波形,并通过编程来切换三种波形以及波形频率的改变。具体功能有:(1)各个波形的切换;(2)各种参数的设定;(3)频率增减等。软件调通后,通过编程器下载到AT89S52芯片中,然后插到系统中即可独立完成所有的控制。1.6源程序#includeabsacc.hintrins.hsbit k1=P30;sbit k2=P31;sbit k3=P33;sbit k4=P34;sbit k5=P35;sbit k6=P37;bit led=1;/sbit RS=P34;/sbit RW=P35;/

9、sbit E=P37;/*sbit LED0=P30;sbit LED1=P31;sbit LED2=P33;sbit LED3=P34;sbit LED4=P35;sbit LED5=P37;*/unsigned char i=0,k,f=14,g=255,n=0,m=0;unsigned int j=200,num=800,num1;unsigned char code sin16=135,176,218,245,254,243,213,170,121,72,24,3,2,20,55,102;unsigned char code mai2=255,0;unsigned char code

10、du=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;unsigned char code we=0x01,0x02,0x04,0x08,0x10,0x20;init() EA=1; EX0=1; IT0=1; ET0=1; TMOD=0x01; TH0=(65536-1)/256; TL0=(65536-1)%256; TR0=1;main() init(); XBYTE0xbfff=255; while(1) /num=16+j*16; if(k5=0&g0) g-; XBYTE

11、0xbfff=g; if(k6=0&g255) g+; XBYTE0xbfff=g; if(k1=0&j j-=30; if(led=1) XBYTE0x7fff=sin0; for(i=0;ij;i+); XBYTE0x7fff=sin1; XBYTE0x7fff=sin2; XBYTE0x7fff=sin3; XBYTE0x7fff=sin4; for(i=0; XBYTE0x7fff=sin5; XBYTE0x7fff=sin6; XBYTE0x7fff=sin7; XBYTE0x7fff=sin8; XBYTE0x7fff=sin9; XBYTE0x7fff=sin10; XBYTE0

12、x7fff=sin11; XBYTE0x7fff=sin12; XBYTE0x7fff=sin13; XBYTE0x7fff=sin14; XBYTE0x7fff=sin15; if(led=0) if(k4=0&f f-; for(k=0;kf;k+) XBYTE0x7fff=mai0;(15-f); XBYTE0x7fff=mai1; for(i=0; void int0() interrupt 0 led=led;void jsq() interrupt 1 P2=P2&0xc0; P2=P2|we5-n; if(n6) m=num1%10; num1=num1/10; P1=dum; n+; if(n=6) n=0; num1=num; 图(7)4000HZ正弦波输出图(8)4000HZ脉冲波输出1.8附录 1.81 参考文献 1 戴仙金主编 51单片机及其C语言汇编程序开发实例 清华大学出版社,20082 高吉祥主编 全国大学生电子设计竞赛培训系列教程 电子工业出版社,20073 杨素行主编 模拟电子技术基础简明教程 高等教育出版社,20074 蒋辉平主编 单片机原理与应用设计 北京航空航天大学出版社 2007 1.82 总体设计图

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2