毕业设计(论文)基于51单片机的函数发生器的设计

上传人:仙*** 文档编号:29184699 上传时间:2021-09-30 格式:DOC 页数:47 大小:482.03KB
收藏 版权申诉 举报 下载
毕业设计(论文)基于51单片机的函数发生器的设计_第1页
第1页 / 共47页
毕业设计(论文)基于51单片机的函数发生器的设计_第2页
第2页 / 共47页
毕业设计(论文)基于51单片机的函数发生器的设计_第3页
第3页 / 共47页
资源描述:

《毕业设计(论文)基于51单片机的函数发生器的设计》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于51单片机的函数发生器的设计(47页珍藏版)》请在装配图网上搜索。

1、扬州工业职业技术学院毕业设计学年第学期毕业设计课题名称: 基于51单片机的函数发生器的设计 设计时间: 系 部: 班 级: 姓 名: 指导教师: 总目录第一部分 任务书 第二部分 开题报告 第三部分 毕业设计正文 第 一 部 分任务书扬州工业职业技术学院毕业设计任务书系 部指导老师职称讲师学生姓名班级学号设计题目基于51单片机的函数发生器的设计设计内容目标和要求1.毕业设计内容:波形发生器亦称函数发生器,作为实验用信号源,是现今各种电子电路实验设计应用中必不可少的仪器设备之一。目前,市场上常见的波形发生器多为纯硬件的搭接而成,且波形种类有限,多为锯齿波、正弦波、方波、三角波等波形。本文是做基于

2、单片机的信号发生器的设计,将采用编程的方法来实现三角波、锯齿波、矩形波、正弦波的发生。根据设计的要求,对各种波形的频率和幅度进行程序的编写,并将所写程序装入单片机的程序存储器中。在程序运行中,当接收到来自外界的命令,需要输出某种波形时再调用相应的中断服务子程序和波形发生程序,经电路的数/模转换器和运算放大器处理后,从信号发生器的输出端口输出。2毕业设计要求:1)采用AT89C52及DAC0832设计函数波形发生器;2)输出函数信号为正弦波或三角波或方波波;3)输出信号频率可调;教研室审核系部审核第 二 部 分开题报告扬州工业职业技术学院 电子信息工程 系10届毕业设计(论文)开题报告书(表1)

3、学生姓名专业班级学号题 目基于51单片机的函数发生器的设计指导教师职称讲师学 位题目类别 工程设计 基础研究 应用研究 其它【课题的内容与要求】1.本方案利用4个按钮,分别用来控制调整波形,调整频率。2.利用DAC0832实现幅度可调的信号源3.频率范围:正弦波频率范围10-100Hz三角波频率范围50-500Hz方波波频率范围200-2000Hz【前言】波形发生器亦称函数发生器,作为实验用信号源,是现今各种电子电路实验设计应用中必不可少的仪器设备之一。目前,市场上常见的波形发生器多为纯硬件的搭接而成,且波形种类有限,多为锯齿、正弦、方波、三角等波形。【方案的比较与评价】方案一:采用单片函数发

4、生器(如8038),8038可同时产生正弦波、方波等,而且方法简单易行,用D/A转换器的输出来改变调制电压,也可以实现数控调整频率,但产生信号的频率稳定度不高。方案二:采用锁相式频率合成器,利用锁相环,将压控振荡器(VCO)的输出频率锁定在所需频率上,该方案性能良好,但难以达到输出频率覆盖系数的要求,且电路复杂。方案三:采用单片机编程的方法来实现。该方法可以通过编程的方法来控制信号波形的频率和幅度,而且在硬件电路不变的情况下,通过改变程序来实现频率的变换。此外,由于通过编程方法产生的是数字信号,所以信号的精度可以做的很高。鉴于方案一的信号频率不够稳定和方案二的电路复杂,频率覆盖系数难以达标等缺

5、点,所以决定采用方案三的设计方法。它不仅采用软硬件结合,软件控制硬件的方法来实现,使得信号频率的稳定性和精度的准确性得以保证,而且它使用的几种元器件都是常用的元器件,容易得到,且价格便宜,使得硬件的开销达到最省。【预期的效果及指标】整个设计过程中,硬件方面利用proteus完成硬件电路原理图的绘制和仿真,软件方面利用Keil软件完成C语言程序的编写、编译及调试。【进度安排】2010年9月20日-2010年9月31日 选题、调研、收集资料2010年10月1日-2010年10月15日 论证、开题2010年10月16日-2010年11月30日 设计(写作初稿)2010年12月1日-2010年12月2

6、0日 修改、定稿、打印【参考文献】1穆 兰.单片微型机计算机原理及接口技术.北京:机械工业出版社,2006.22张毅刚.MCS-51单片机应用设计.哈尔滨:哈尔滨工业大学出版社,1996.63蒋智勇.单片微型计算机原理及应用.沈阳:辽宁科学技术出版社,2006.74何立民.单片及应用文集(1).北京:北京航天航空大学出版社,2001.15石宗义电路原理图与电路板设计教程北京:北京希望电子出版社,1999.86沈德金等. MCS-51单片机接口电路与应用程序实例.北京航空航天大学出版社,1997.4 7陈光东.单片机微型计算机原理与接口技术(第二版).武汉:华中理工大学出版社,1998.38李

7、华.MCU-51系列单片机实用接口技术.北京:北京航空航天大学出版社,2001.1【指导教师意见】(有针对性地说明选题意义及工作安排是否恰当等)同意提交开题论证 修改后提交 不同意提交(请说明理由)指导教师签章: 年 月 日【系部意见】同意指导教师意见 不同意指导教师意见(请说明理由) 其它(请说明)队系(部)主任签章: 年 月 日第 三 部 分毕业设计正文基于51单片机的函数发生器的设计摘 要信号发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。目前使用的信号发生器大部分是利用分立元件组成的体积大,可靠性差,准确度低。课程设计需要各个波形的基本输出,这些波形的实现

8、的具体步骤:正弦波的实现是非常麻烦的。它的实现过程是通过定义一些数据,然后执行时直接输出定义的数据就可以了。而三角波,则每次累加1,当达到初值时,每次累减1,算出延时时间,也就达到要求了,阶梯波和三角波类似!该设计使用的是AT89S51单片机构成的发生器,可产生三角波、方波、正弦波等多种波形,波形的频率可用程序控制改变。在单片机上加外围器件独立式开关,通过开关控制波形的选择。在单片机的输出端口接DAC0832进行DA转换,再通过运放进行波形调整,最后输出波形接在示波器上显示。关键词:信号发生器 单片机 波形调整Function Generator Design Based on 51 MCUA

9、bstract:Signal generator is a common signal source, widely used in electronic circuits, automatic control systems and experiments in areas such as teaching. Currently used by most of the signal generator is composed of discrete components use bulky, poor reliability, low accuracy. Curriculum design

10、of the basic needs of all the output waveform, the waveform of the specific steps to achieve: the realization of sine wave is very troublesome. It is through the implementation of the definition of some data, and then direct the output when the definition of the implementation of the data on it. The

11、 triangle wave, then add 1 each time, when the initial value to reach every tired by 1, calculate the delay time, they meet the requirement, the ladder-wave and triangular wave similar! The design is composed of single-chip AT89S51 generator can produce the triangular wave, square wave, sine wave, e

12、tc., waveform control can be used to change the frequency. Increase in single-chip peripheral devices on stand-alone switch, switch control through the choice of waveform. Output ports in the MCU access to DA converter DAC0832, and then through the operational amplifier to adjust the waveform, then

13、the final output waveform in the oscilloscope display.Key words:Signal Generator MCU Wave-Form Adjustment目 录第一章 绪论11.1单片机概述11.2信号发生器的分类11.3信号发生器的用途及发展趋势11.4研究内容11.5课题背景2第二章 方案论证32.1 方案比较32.1.1 方案一DDS信号发生器32.1.2 方案二555信号发生器32.1.3 方案三单片机信号发生器32.2 设计原理42.3 设计思想42.4 设计功能5第三章 系统的硬件设计63.1 单片机最小应用系统63.2 波形

14、发生电路73.2.1 DAC0832简介73.2.2 LM324简介83.2.3 MC1403简介93.2.4 波形发生电路93.3 LM016L资料10第四章 系统的软件设计134.1软件设计思想134.2主程序的设计134.3子程序的设计144.3.1延时子程序的设计144.3.2中断程序的设计144.3.3三角波模块的设计164.3.4正弦波模块的设计174.3.5方波模块的设计17第五章 系统仿真185.1 proteus仿真软件的介绍185.1.2Proteus 7 Professional界面简介185.1.2总电路图仿真205.2正弦波仿真215.3三角波的仿真225.4方波的仿

15、真22总 结24致谢25参考文献26扬州工业职业技术学院毕业设计第一章 绪论1.1单片机概述随着大规模集成电路技术的发展,中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、(I/O)接口、定时器/计数器和串行通信接口,以及其他一些计算机外围电路等均可集成在一块芯片上构成单片微型计算机,简称为单片机。单片机具有体积小、成本低,性能稳定、使用寿命长等特点。其最明显的优势就是可以嵌入到各种仪器、设备中,这是其他计算机和网络都无法做到的。1.2信号发生器的分类信号发生器应用广泛,种类繁多,性能各异,分类也不尽一致。按照频率范围分类可以分为:超低频信号发生器、低频信号发生器、视频信号

16、发生器、高频波形发生器、甚高频波形发生器和超高频信号发生器。按照输出波形分类可以分为:正弦信号发生器和非正弦信号发生器,非正弦信号发生器又包括:脉冲信号发生器,函数信号发生器、扫频信号发生器、数字序列波形发生器、图形信号发生器、噪声信号发生器等。按照信号发生器性能指标可以分为一般信号发生器和标准信号发生器。前者指对输出信号的频率、幅度的准确度和稳定度以及波形失真等要求不高的一类信号发生器。后者是指其输出信号的频率、幅度、调制系数等在一定范围内连续可调,并且读数准确、稳定、屏蔽良好的中、高档信号发生器。1.3信号发生器的用途及发展趋势信号发生器是一种常用的信号源,广泛应用于科学研究、生产实践和教

17、学实验等领域。特别是在通信系统的科研实验中,常常需要用到多种不同频率和相位的信号,如正弦波、三角波、方波和锯齿波等,因此多功能信号发生器应用十分广泛。在数字化时代的今天,经典的由模拟电路组成的信号发生器已经渐渐远离了人们,取而代之的是电路简洁、功能多样、功耗低的数字电路。在以后的时间里,将会有越来越多的数字化的信号发生器运用在各种科学技术领域和工程实践中,给人们的日常生活带来更多的便利。1.4研究内容本文是做基于单片机的信号发生器的设计,将采用编程的方法来实现三角波、锯齿波、矩形波、正弦波的发生。根据设计的要求,对各种波形的频率和幅度进行程序的编写,并将所写程序装入单片机的程序存储器中。在程序

18、运行中,当接收到来自外界的命令,需要输出某种波形时再调用相应的中断服务子程序和波形发生程序,经电路的数/模转换器和运算放大器处理后,从信号发生器的输出端口输出。1.5课题背景当今世界,各种先进的科学技术飞速发展,给人们的生活带来了深远的影响,它极大的改善我们的生活方式。目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制

19、领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。第二章 方案论证2.1 方案比较2.1.1 方案一DDS信号发生器利用专用直接数字合成芯片的函数发生器:能产生任意波形并达到很高的频率。但成本较高。产生所需参数的电测试信号仪器。按其信号波形分为四大类:正弦信号发生器。主要用于测量电路和系统的频率特性、非线性失真、增益及灵敏度等。按其不同性能和用途还可细分为低频(20赫至10兆赫)信号发生器、高频(100千赫至300兆赫)信号发生器、微波信号发生器、扫频和程控信号发生器、频率合成式信号发生器等。函数(波形)信号发生器。能产生某些特

20、定的周期性时间函数波形(正弦波、方波、三角波、锯齿波和脉冲波等)信号,频率范围可从几个微赫到几十兆赫。除供通信、仪表和自动控制系统测试用外,还广泛用于其他非电测量领域。脉冲信号发生器。能产生宽度、幅度和重复频率可调的矩形脉冲的发生器,可用以测试线性系统的瞬态响应,或用作模拟信号来测试雷达、多路通信和其他脉冲数字系统的性能。随机信号发生器。通常又分为噪声信号发生器和伪随机信号发生器两类。噪声信号发生器主要用途为:在待测系统中引入一个随机信号,以模拟实际工作条件中的噪声而测定系统性能;外加一个已知噪声信号与系统内部噪声比较以测定噪声系数;用随机信号代替正弦或脉冲信号,以测定系统动态特性等。当用噪声

21、信号进行相关函数测量时,若平均测量时间不够长,会出现统计性误差,可用伪随机信号来解决。2.1.2 方案二555信号发生器采用555定时器制作的信号发生器,其外围电路相对复杂。这种方法能实现快速频率变换,具有低相位噪声以及所有方法中最高的工作频率。但由于采用大量的倍频、分频、混频和滤波环节,导致直接频率合成器的结构复杂、体积庞大、成本高,而且容易产生过多的杂散分量,难以达到较高的频谱纯度。2.1.3 方案三单片机信号发生器采用单片机AT89S52可同时方便的产生访波、正弦波、三角波、负向锯齿波和正向锯齿波(除正弦波形不太理想外,其它波形较好)而且方法简单易行。在用DA转换器的输出来电压,在外围电

22、路不变的情况下用汇编的程序改变输出的电压的幅值和频率。由于单片机产生的是数字信号,可以做的很高。其产生的信号的精度其性价比更加优异,集成度更高,体积更小,可靠性更高,控制功能更强,需求电压低,耗能更低。采用方法一能产生精度和质量相对较高的信号用于试验科研和生产,但其价格较高在要求不高的场合我给与摒弃。与方法一相比较方法二虽说在价格方面比前者要低,但是其外围电路相对复杂,且调试不方便,应用时不便于操作。结合了前两者考虑我选择了第三种方法它不仅采用软硬件结合,软件控制硬件的方法来实现,使得信号频率的稳定性和精度的准确性得以保证,而且它使用的几种元器件都是常用的元器件,容易得到,且价格便宜,使得硬件

23、的开销达到最省。2.2设计原理数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再转换成模拟信号的方法来获得所需要的波形。AT89S52单片机本身就是一个完整的微型计算机,具有组成微型计算机的各部分部件:中央处理器CPU、随机存取存储器RAM、只读存储器ROM、I/O接口电路、定时器/计数器以及串行通讯接口等,只要将AT89S52再配置键盘及其接口、显示器及其接口、数模转换及波形输出、指示灯及其接口等四部分,即可构成所需的波形发生器,其信号发生器构成原理框图如图2.1所示。图2.1 信号发生器原理框图AT89S52是整个波形发生器的核心部分,通过程序的编写和执行,产生各种各样的

24、信号,并从键盘接收数据,进行各种功能的转换和信号幅度的调节。当数字信号经过接口电路到达转换电路,将其转换成模拟信号也就是所需要的输出波形。2.3 设计思想(1)利用单片机产生方波、正弦波、三角波和锯齿波等信号波形,信号的频率和幅度可变。(2)将一个周期的信号分离成256个点(按X轴等分),每两点之间的时间间隔为T,用单片机的定时器产生,其表示式为:T=T/256。如果单片机的晶振为12MHz,采用定时器方式0,则定时器的初值为:X=213-T/Tmec定时时间常数为:TL=(8192-T)MOD256TH=(8192T)/256MOD32表示除32取余数(3)正弦波的模拟信号是D/A转换器的模

25、拟量输出,其计算公式为:Y=(A/2sint)+A/2(其中A=VREF)t=NT(N=1256)那么对应着存放在计算机里的这一点的数据为:(4)一个周期被分离成256个点,对应的四种波形的256个数据存放在以TAB1-TAB4为起始地址的存储器中。2.4 设计功能1.本方案利用4个按钮,分别用来控制调整波形,调整频率。2. 利用DAC0832实现幅度可调的信号源3.频率范围:正弦波频率范围10-100Hz三角波频率范围50-500Hz矩形波频率范围200-2000Hz第三章 系统的硬件设计系统整体硬件电路如图3-1所示,包括主控电路,晶振电路,复位电路以及波形发生电路。主控电路主要是以单片机

26、AT89C52来控制。晶振电路主要采用的是内部时钟方式,即AT89C52内部有一个用于构成震荡器的高增益反相放大器。复位电路主要是由AT89C52外部的复位电路来实现的。波形发生电路是单片机控制DAC0832,产生正弦波、三角波和方波。图3-1系统整体硬件电路图3.1 单片机最小应用系统单片机最小应用系统有单片机、电源、晶振电路以及复位电路组成。AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,

27、片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合。AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,但不可以在线编程(S系列的才支持在线编程)。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。兼容MCS51指令系统8k可反复擦写(1000次)Flash ROM32个双向I/O口256x8bit内部RAM3个16位可编程定时/计数器中断

28、时钟频率0-24MHz2个串行中断可编程UART串行通道2个外部中断源共6个中断源2个读写中断口线3级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功能AT89C52P为40脚双列直插封装的8位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52相同,其主要用于会聚调整时的功能控制。功能包括对会聚主IC内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。主要管脚有:XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHz晶振。RST/Vpd(9脚)为复位输入端口,外接电

29、阻电容组成的复位电路。VCC(40脚)和VSS(20脚)为供电端口,分别接+5V电源的正负端。P0P3为可编程通用I/O脚,其功能用途由软件定义,在本设计中,P0端口(3239脚)被定义为N1功能控制端口,分别与N1的相应功能管脚相连接,13脚定义为IR输入端,10脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12脚、27脚及28脚定义为握手信号功能端口,连接主板CPU的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。3.2 波形发生电路3.2.1 DAC0832简介主要由8位输入寄存器、8位DAC寄存器、8位D/A转换器以及输入控制

30、电路四部分组成。8 位输入寄存器用于存放主机送来的数字量,使输入数字量得到缓冲和锁存,由加以控制;8位DAC寄存器用于存放待转换的数字量,由加以控制;8位D/A转换器输出与数字量成正比的模拟电流;由与门、非与门组成的输入控制电路来控制2个寄存器的选通或锁存状态。具体引脚示意图如图3-4所示。图3-4 DAC0832管脚图1、管脚功能介绍(1)DI7DI0:8位的数据输入端,DI7为最高位。(2)IOUT1:模拟电流输出端1,当DAC寄存器中数据全为1时,输出电流最大,当DAC寄存器中数据全为0时,输出电流为0。(3)IOUT2:模拟电流输出端2,IOUT2与IOUT1的和为一个常数。(4)RF

31、B:反馈电阻引出端,DAC0832内部已经有反馈电阻,所以RFB端可以直接接到外部运算放大器的输出端,这样相当于将一个反馈电阻接在运算放大器的输出端和输入端之间。(5)VREF:参考电压输入端,此端可接一个正电压,也可接一个负电压,它决定0至255的数字量转化出来的模拟量电压值的幅度,VREF范围为(+10-10)V。VREF端与D/A内部T形电阻网络相连。(6)Vcc:芯片供电电压,范围为(+515)V。(7)AGND:模拟量地,即模拟电路接地端。(8)DGND:数字量地。2、工作特性当WR2和XFER同时有效时,8位DAC寄存器端为高电平“1”,此时DAC寄存器的输出端Q跟随输入端D也就是

32、输入寄存器Q端的电平变化;反之,当端为低电平“0”时,第一级8位输入寄存器Q端的状态则锁存到第二级8位DAC寄存器中,以便第三级8位DAC转换器进行D/A转换。一般情况下为了简化接口电路,可以直接接地,使第二级8位DAC寄存器的输入端到输出端直通,只有第一级8位输入寄存器置成可选通、可锁存的单缓冲输入方式。特殊情况下可采用双缓冲输入方式,即把两个寄存器都分别接成受控方式。3.2.2 LM324简介LM324时四运放集成电路 ,它采用14脚双列直插塑料封装,外形如图3-4所示。他的内部包含四组形式完全相同的运算放大器,除电源共用外,四组运放相互独立。每一组运算放大器可用图中所示的符号来表示,它有

33、5个引出脚,其中“+”、“-”为两个信号输入端,“V+”、“V-”为正、负电源端,“OUT”为输出端。两个信号输入端中,“-”为反相输入端,表示运放输出端OUT的信号与该输入端的为相反;“+”为同相输入端,表示运放输出端OUT的信号与输入端的相位相同。由于LM324四运放电路具有电源电压范围宽,静态功耗小,价格低廉等优点,因此被广泛应用在各种电路中。在本设计中用了LM324的三组运放,分别置于第一级输出,第一、二级之间,第二级输出。管脚示意图如图3-5所示。图3-5 LM324管脚图3.2.3 MC1403简介MC1403是低压基准芯片。一般用作8到12bit的D/A芯片的基准电压等一些需要基

34、本精准的基准电压的场合。输出电压:2.5V+/-25MV输入电压范围:4.5V40V输出电流:10MA因为输出是固定的,所以电路很简单。就是Vin接电源输入,GND接地,Vout加一个0.1uf到1uf的电容就可以了。Vout一般用于8到12bit的D/A芯片的基准电压。在此项目里MC1403起到了稳压的作用,它基准了DAC0832的8脚需要的2.5V。使其DAC0832能够正常工作。管脚示意图如图3-6所示。图3-6 MC1403管脚图3.2.4 波形发生电路制作低频信号发生器有许多方案:主要有单缓冲方式,双缓冲方式和直通方式。由于单缓冲方式使用方便,程序简单,易操作,所以选择其使用。DAC

35、0832与反相比例放大器相连,实现电流到电压的转换,因此输出模拟信号的极性与参考电压的极性相反,数字量与模拟量的转换关系为Vout1=-Vref(数字码/256)若D/A转换器输出为双极性,如图3-7所示图3-7 D/A转换器双极性输出电路图3-7中,运算放大器A2的作用是把运算放大器A1的单向输出电压转换成双向输出电压。其原理是将A2的输入端通过电阻R1与参考电压VREF相连,VREF经R1向A2提供一个偏流I1,其电流方向与I2相反,因此运算放大器A2的输入电流为I1、I2之代数和。则D/A转换器的总输出电压为:VOUT2=-(R3/R2)VOUT1+(R3/R1)VREF设R1=R3=2

36、R R2=R,则VOUT2=-(2VOUT1+VREF)单片机控制DAC0832,产生正弦波、锯齿波、三角波和方波。由于D/A转换器与AT89S52接口时,AT89S52是靠指令输出数字量供数模转换之用,而指令送出的数据在数据总线上的时间是短暂的,所以在DAC和AT89S52之间,需要有数据寄存器来保持AT89S52计算机输出的数据,供DAC转换使用。目前生产的DAC芯片分为两类,一类芯片内部设置有数据寄存器,不需要外加电路就可以直接与微型计算机接口。另一类芯片内部没有数据寄存器,输出信号随数据输入线的状态变化而变化,因此不能直接与微型计算机接口,必须通过并行接口与微型计算机接口。DAC083

37、2X是具有20条引线的双列直插式CMOS器件,它内部具有两级数据寄存器,完成8位电流D/A转换。故不需要外加电路。3.3 LM016L资料1602LCD分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,两者尺寸差别如下图3-8所示:图3-8 1602LCD尺寸图1602LCD主要技术参数:显示容量:162个字符芯片工作电压:4.55.5V工作电流:2.0mA(5.0V)模块最佳工作电压:5.0V字符尺寸:2.954.35(WH)mm引脚功能说明1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表10-13

38、所示:编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极表10-13:引脚接口说明表第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电

39、平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极第四章 系统的软件设计调试软件采用keil uVison2是众多单片机应用开发软件中优秀软件之一,界面友好,易写易操作。在调试程序中,软件仿真功能也很强,软件调通,再通过编程器下载到AT89c52中,然后插到系统中即可独立完成所有的控制。软件设计上,根据功能分了几个模块编

40、程。模块主要有:主程序模块、三角波模块、正弦波模块、方波模块、延时子程序模块等。4.1软件设计思想本文中子程序的调用是通过按键调节频率来实现,启动计时器和相应的中断服务程序,再直接查询程序中预先设置的数据值,通过转换输出相应的电压,从而形成所需的各种波形。4.2主程序的设计void main()uchar i=0;DA_S2=0;/使DAC寄存器处于直通状态DAdata=0;DA_S1=1;/关闭8位输入寄存器init_lcd();waveform=0;TMOD=0x01;/设置定时器0为16位工作方式IT0=1;/设置外部中断0为下降沿触发ET0=1;/开定时器中断EX0=1;EA=1;wh

41、ile(1)/DAout(0xff);/可输出TTL波形/DAout(0x80);/T_temp=32;4.3子程序的设计4.3.1延时子程序的设计void delay(uchar z)uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);4.3.2中断程序的设计void timer0()interrupt 1TH0=THtemp;TL0=TLtemp;if(waveform=0)sine_out();else if(waveform=1)triangle_out();else if(waveform=2)square_out();void key_int0()int

42、errupt 0uchar keytemp;uint total_freq;/总频率EA=0;TR0=0;/关总中断与定时器delay(5);/延时够吗?if(key=0)/确实有按键按下而引发中断keytemp=P3&0xf0;/获取P3口高四位的值switch(keytemp)case 0xe0:/选择波形waveform+;if(waveform2)waveform=0;break;case 0xd0:/频率按规定单位依次增加wavefreqwaveform+;if(wavefreqwaveform10)wavefreqwaveform=1;/*这边要用“10”,因为它比“=11”可靠b

43、reak;/性更高,使加数有个上限,不会一直加下去*/case 0xb0:/频率按规定单位依次衰减wavefreqwaveform-;if(wavefreqwaveform1)wavefreqwaveform=10;/这边要用“64)wavecount=0;DA_S1=0;/打开8位输入寄存器DA_S1=1;/关闭8位输入寄存器4.3.4正弦波模块的设计void sine_out()/正弦波输出DAdata=sine_tabwavecount+;DA_S1=0;/打开8位输入寄存器DA_S1=1;/关闭8位输入寄存器4.3.5方波模块的设计void square_out()/方波输出judge

44、=judge;if(judge=1)DAdata=0xff;else DAdata=0x00;DA_S1=0;/打开8位输入寄存器DA_S1=1;/关闭8位输入寄存器第五章 系统仿真5.1 proteus仿真软件的介绍5.1.1该软件的特点:全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC

45、16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。支持大量的存储器和外围芯片。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大,是其他任何一款软件不能相比的。5.1.2Proteus 7 Professional界面简介安装完Proteus后,运行ISIS 7 Professional,会出现以下窗口界面:图5-1 Proteus仿真软件主界面1原理图编辑窗口(The Editing Window):顾名思义,它是用来绘制原理图的。蓝色方框内为可编辑区,元件要放到它里面。注意,这个窗口是没有滚动条的,你可用预览窗口来改变原理图的可视范围。2预览窗口(T

46、he Overview Window):它可显示两个内容,一个是:当你在元件列表中选择一个元件时,它会显示该元件的预览图;另一个是,当你的鼠标焦点落在原理图编辑窗口时(即放置元件到原理图编辑窗口后或在原理图编辑窗口中点击鼠标后),它会显示整张原理图的缩略图,并会显示一个绿色的方框,绿色的方框里面的内容就是当前原理图窗口中显示的内容,因此,你可用鼠标在它上面点击来改变绿色的方框的位置,从而改变原理图的可视范围。3模型选择工具栏(Mode Selector Toolbar):主要模型(Main Modes):1)选择元件(components)(默认选择的)2)放置连接点3)放置标签(用总线时会用

47、到)4)放置文本5)用于绘制总线6)用于放置子电路7)用于即时编辑元件参数配件(Gadgets):1)终端接口(terminals):有VCC、地、输出、输入等接口2)器件引脚:用于绘制各种引脚3)仿真图表(graph):用于各种分析,如Noise Analysis4)录音机5)信号发生器(generators)6)电压探针:使用仿真图表时要用到7)电流探针:使用仿真图表时要用到8)虚拟仪表:有示波器等2D图形(2D Graphics):1)画各种直线2)画各种方框3)画各种圆4)画各种圆弧5)画各种多边形6)画各种文本7)画符号8)画原点等4元件列表(The Object Selector)

48、:用于挑选元件(components)、终端接口(terminals)、信号发生器(generators)、仿真图表(graph)等。举例,当你选择“元件(components)”,单击“P”按钮会打开挑选元件对话框,选择了一个元件后(单击了“OK”后),该元件会在元件列表中显示,以后要用到该元件时,只需在元件列表中选择即可。5方向工具栏(Orientation Toolbar):旋转:旋转角度只能是90的整数倍。翻转:完成水平翻转和垂直翻转。使用方法:先右键单击元件,再点击(左击)相应的旋转图标6仿真工具栏仿真控制按钮1)运行2)单步运行3)暂停4)停止5.1.2总电路图仿真如图5-2系统整

49、体硬件电路图如图5-3示波器图5-2 系统整体硬件电路图图5-3 示波器5.2正弦波仿真按调节波形按钮,液晶屏上出现SELECT WAVE时,此时为正弦波。调节频率曾加减小按钮可以改变正弦波的振幅,周期等。如图5-4所示,此波形为幅度为4.9V,频率为10HZ的正弦波。图5-4正弦波仿真5.3三角波的仿真按调节波形按钮,液晶屏上出现TRIANRLE WAVE时,此时为三角波。调节频率曾加减小按钮可以改变三角波的振幅,周期等。如图5-5所示,此波形为幅度为4.9V,频率为50HZ的三角波图5-5三角波仿真5.4方波的仿真按调节波形按钮,液晶屏上出现SQUARE WAVE时,此时为方波。调节频率曾

50、加减小按钮可以改变方波的振幅,周期等。如图5-6所示,此波形为幅度为4.8V,频率为200HZ的方波图5-6方波仿真总 结经过近半年的锻炼和学习,我们学到了许多书本上没有的知识,从方案的论证、课题的选择、电路原理、程序的编写,一步步,我们收获很大。在设计中,我们力求硬件电路简单,充分发挥软件灵活方面的特点,满足系统设计要求。这中间,我们也遇到了许多困难,在老师的帮助下,一个个也都战胜了。感谢学院和电子系给我们的支持。经过一个学期理论知识的学习,这次毕业设计就是一次很好的机会,我们不仅在理论上掌握单片机这门课程的知识,而且理论联系实际,培养了我们的动手能力,同时也增强了分析问题、解决问题的能力。

51、在自己的努力和同学的帮助下一起顺利完成了本次设计的要求,实现了多种波形(正弦波、三角波、锯齿波、方波)的函数发生器,在这期间,可以说遇到了很多困难,但通过坚持不懈的努力,最终还是实现了毕业设计的要求。总之,通过这次毕业设计,使我更加了解这门课程,同时也增强了面对实际问题怎么去解决的能力,而且在考虑实际问题时应该一步一步来调试,而不要太心急,这样遇到问题解决起来也就方便,总的来说在这次设计中还是学到了不少东西。致谢毕业论文的完成要感谢很多人。首先要感谢学校给我提供了做这个系统的机会,感谢学校的各位领导和老师一直以来对我的教导和帮助。特别要感谢我的指导老师,给我进行了很多的辅导,不仅在技术上给了我

52、很大帮助,也在系统需求和设计方面给予了我很大帮助。老师的谆谆教导,使我受益匪浅。感谢学校其他老师和同学给予的帮助和支持。经过近半年的锻炼和学习,我们学到了许多书本上没有的知识,从方案的论证、课题的选择、电路原理、程序的编写,一步步,我们收获很大。在设计中,我们力求硬件电路简单,充分发挥软件灵活方面的特点,满足系统设计要求。这中间,我们也遇到了许多困难,在老师的帮助下,一个个也都战胜了。参考文献1穆 兰.单片微型机计算机原理及接口技术.北京:机械工业出版社,2006.22张毅刚.MCS-51单片机应用设计.哈尔滨:哈尔滨工业大学出版社,1996.63蒋智勇.单片微型计算机原理及应用.沈阳:辽宁科

53、学技术出版社,2006.74何立民.单片及应用文集(1).北京:北京航天航空大学出版社,2001.15石宗义电路原理图与电路板设计教程北京:北京希望电子出版社,1999.86沈德金、陈粤初等. MCS-51单片机接口电路与应用程序实例.北京:北京航空航天大学出版社,1997.4 7陈光东.单片机微型计算机原理与接口技术(第二版).武汉:华中理工大学出版社,1998.38李 华.MCU-51系列单片机实用接口技术.北京:北京航空航天大学出版社,2001.19徐煜明主编.C51单片机及应用系统设计.北京:电子工业出版社,1999.210李朝青主编.单片机原理及接口技术 .北京:北京航空大学出版社,

54、2001.511李顺增主编.微机原理及接口技术.北京:机械工业出版社,2006.712冯博琴主编.微型计算机原理及接口技术.北京:清华大学出版社,2003.613王远主编.模拟电子技术.北京:机械工业出版社,1999.814刘守义,钟苏主编.数字电子技术.西安:西安电子科技大学出版社,2001.915祝慧芳,黄洁主编.数字电子技术基础.北京:中国地质大学出版社,2003.10附录一附录二#include#define uchar unsigned char#define uint unsigned int/#define Fosc 24000000/12000000/12分频后的频率#defi

55、ne DAdata P0/DA数据端口sbit DA_S1=P20;/控制DAC0832的8位输入寄存器,仅当都为0时,可以输出数据(处于直通状态),否则,输出将被锁存sbit DA_S2=P21;/控制DAC0832的8位DAC寄存器,仅当都为0时,可以输出数据(处于直通状态),否则,输出将被锁存sbit key=P32;uchar wavecount;/抽点计数uchar THtemp,TLtemp;/传递频率的中间变量/uint T_temp;uchar judge=1;/在方波输出函数中用于简单判别作用uchar waveform;/当其为0、1、2时,分别代表三种波uchar cod

56、e freq_unit3=10,50,200;/三种波的频率单位uchar idata wavefreq3=1,1,1;/给每种波定义一个数组单元,用于存放单位频率的个数uchar code lcd_hang1=Sine WaveTriangle WaveSquare WaveSelect Wave:press No.1 key!;uchar idata lcd_hang216=f=Hz;/*uchar code wave_freq_adjust=/频率调整中间值0xff,0xb8,0x76,0x56,0x43,0x37,0x2e,0x26,0x20,0x1c,/正弦波频率调整中间值0xff,

57、0x8e,0x5a,0x41,0x32,0x28,0x20,0x1b,0x17,0x0e,/三角波频率调整中间值0xff,0x8e,0x5a,0x41,0x32,0x28,0x20,0x1b,0x17,0x0e;uint code wave_freq_adjust=/频率调整中间值380,184,118,86,67,55,46,28,38,32,295,142,90,65,50,40,32,27,23,14,295,142,90,65,50,40,32,27,23,14;*/*uchar code waveTH=0xfc,0xfe,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xfe,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!