多功能函数信号发生器

上传人:ra****d 文档编号:210331512 上传时间:2023-05-16 格式:DOC 页数:48 大小:4.40MB
返回 下载 相关 举报
多功能函数信号发生器_第1页
第1页 / 共48页
多功能函数信号发生器_第2页
第2页 / 共48页
多功能函数信号发生器_第3页
第3页 / 共48页
点击查看更多>>
资源描述
湖 南 涉 外 经 济 学 院本科毕业论文设计题目多功能函数信号发生器作者石晓亮学院信息科学与工程学院专业电子信息工程学号09430322155866指导教师胡凤忠二一三 年 五 月 十五 日湖南涉外经济学院毕业论文设计任务书学生姓名: 石晓亮 学号: 09430322155866 专业班级: 电子信息工程0904 毕业论文设计题目: 多功能函数信号发生器 题目类型: 实验研究 毕业论文设计时间: 自 2021 年 12 月 1 日开始至 2021 年 5 月 15 日止1. 毕业论文设计内容要求: 1目标与任务 系统运用本专业理论知识和技能,基于单片机和D/A芯片研究设计一个简易函数信号发生器,要求能产生方波、三角波和正弦波,频率可调。2具体要求1可以通过按键选择方波、三角波、正弦波信号。2波形的周期可用程序改变。3可根据需要选择单极性输出或双极性输出。3论文内容要求内容应包括引言课题背景、研究意义、研究内容等、系统设计方案含论证、硬件设计及分析、软件设计及程序框图、仿真或实验与调试、结论等,字数应不少于8000字。按?湖南涉外经济学院本科毕业论文(设计)撰写标准?撰写,提交打印版2份和光盘版1份。1题目类型:(1)理论研究(2)实验研究(3)工程设计(4)工程技术研究(5)软件开发2.主要参考资料(1)楼然苗,李光飞. 单片机课程设计指导. 北京航空航天大学出版社,2007.7.(2)杨居义. 单片机课程设计指导实例教程. 清华大学出版社, 2021.08.(3)李华. MCS-51系列单片机实用接口技术. 北京航空航天大学出版社,1993.8.(4)单片机Proteus仿真实例有很多书。(5)上网查资料。3.毕业论文设计进度安排阶段阶 段 内 容起止时间开题阶段选题、完成开题报告12月1日-12月31日收集资料阶段搜集资料1月1日-2月26日编写初稿阶段撰写论文初稿2月27日4月14日修改定稿阶段修改、定稿4月15日4月28日论文辩论阶段论文评阅、辩论4月29日5月15日指导教师签章:_ 日期:_系(教研室)主任(签章) :_ 日期:_二级学院院长(签章) :_ 日期:_湖南涉外经济学院毕业论文设计指导教师评语建议成绩: 指导教师: 签章年 月 日湖南涉外经济学院毕业论文设计评阅教师评语建议成绩: 评阅教师: 签章年 月 日湖南涉外经济学院毕业论文设计辩论记录日期: 2021年5月11日 学生姓名: 石晓亮 学号: 09430322155866 专业班级: 电子信息工程0904 题目: 多功能函数信号发生器 毕业论文设计辩论委员会小组意见:辩论成绩: 评定等级: 辩论委员会(小组)负责人: 签章委员小组成员: 签章 签章 签章 签章 二级学院审查意见: 论文设计最终评定等级:_ 负责人: 签章 _年_月_日摘 要信号发生器是一种能产生模拟电压波形的设备,这些波形能够校验电子电路的设计。它广泛用于电子电路、自动控制系统和教学实验等领域。本文设计了简易低频信号发生器,通过键盘输入选择信号类型和信号频率,以AT89C52单片机为核心,采用D/A转换芯片输出相应的波形,同时以LCD显示器实时显示信号相关信息。软件采用C语言进行编程,可实现方波,三角波和正弦波三种波形的产生,且波形的频率可调。经测试该设计方案线路优化,结构紧凑,性能优越,满足设计要求。关键词:信号发生器;单片机;D/A转换;ABSTRACT Signal generator can generate is an analog voltage waveform of the equipment, the waveform can check the electronic circuit design. It is widely used in electronic circuits, automatic control system and the teaching experiment, etc. This paper designed A simple low frequency signal generator, signal type and the signal frequency, through keyboard input selection with AT89C52 single-chip computer as the core, using D/A conversion chip output corresponding waveform, at the same time to LCD real-time display signal information. Software using C language programming, can achieve square wave, triangle wave, sine wave and three kinds of waveform, frequency and waveform is adjustable. By testing the design route optimization, compact structure, superior performance, meet the design requirements.Keywords: signal generator;Single chip microcomputer;D/Aconversion;目 录摘要IABSTRACTII第一章 前言11.1 课题背景11.2 信号发生器的现状和开展趋势11.3 论文主要内容2第二章 信号发生器方案论证与选择32.1 方案的论证与选择32.2 设计原理简介32.3 设计功能4第三章 硬件设计53.1 主要元器件介绍53.1.1 AT89C52 单片机53.1.2 DAC083263.1.3 LCD液晶屏:83.2硬件原理框图93.3 单片机AT89C52外围电路的设计93.3.1 时钟电路103.3.2 复位电路103.3.3 键盘接口电路113.4 LCD 显示电路123.5 数/模转换及放大电路123.6 电源电路13第四章 软件设计154.1 软件设计流程154.2 信号产生子程序16三角波程序模块16正弦波程序模块16方波程序模块17第五章 系统仿真与电路测试195.1软件仿真19方波仿真195.1.2 三角波仿真图21正弦波仿真图225.2硬件电路测试235.3结果分析24结论25参考文献26致谢27附录A 源代码28附件B 主要元器件清单36附件C 系统电路图37第一章 前 言1.1 课题背景随着电子测量及其他部门对各类信号发生器的广泛需求及电子技术的迅速开展,促使信号发生器种类增多,性能提高。尤其随着70年代微处理器的出现,更促使信号发生器向着自动化、智能化方向开展。现在,许多信号发生器带有微处理器,因而具备了自校、自检、自动故障诊断和自动波形形成和修正等功能,可以和控制计算机及其他测量仪器一起方便的构成自动测试系统。当前信号发生器总的趋势是向着宽频率覆盖、低功耗、高频率精度、多功能、自动化和智能化方向开展1。在科学研究、工程教育及生产实践中,如工业过程控制、教学实验、机械振动试验、动态分析、材料试验、生物医学等领域,常常需要用到低频信号发生器。而在我们日常生活中,以及一些科学研究中,锯齿波和正弦波、矩形波信号是常用的根本测试信号。譬如在示波器、电视机等设备中,为了使电子按照一定规律运动,以利用荧光屏显示图像,常用到锯齿波产生器作为时基电路。信号发生器作为一种通用的电子仪器,在生产、科研、测控、通讯等领域都得到了广泛的应用。但市面上能看到的仪器在频率精度、带宽、波形种类及程控方面都已不能满足许多方面实际应用的需求。加之各类功能的半导体集成芯片的快速生产,都使我们研制一种低功耗、宽频带,能产生多种波形并具有程控等低频的信号发生器成为可能2。1.2 信号发生器的现状和开展趋势信号发生器是指产生所需参数的电测试信号的仪器。因其应用广泛,种类繁多,特性各异,分类也不尽一致。按信号波形可分为正弦信号、函数信号、脉冲信号和随机信号发生器等四大类;按频率覆盖范围分为低频信号发生器、高频信号发生器和微波信号发生器;按输出电平可调节范围和稳定度分为简易信号发生器、标准信号发生器和功率信号发生器;按频率改变的方式分为调谐式信号发生器、扫频式信号发生器、程控式信号发生器和频率合成式信号发生器等。信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。二十一世纪,随着集成电路技术的高速开展,出现了多种工作频率可过GHz的DDS 芯片,同时也推动了函数波形发生器的开展,2003年,Agilen的产品33220A能够产生17 种波形,最高频率可到达20M,2005年的产品N6030A能够产生高达500MHz的频率,采样的频率可达1.25GHz。由上面的产品可以看出,函数波形发生器开展很快。1.3 论文主要内容本次试验实现利用单片机AT89C52和8位D/A转换芯片DAC0832共同实现方波、锯齿波、三角波、正弦波这四种常用波形的发生。根据设计的要求,对各种波形的频率和幅度进行程序的编写,并将所写程序装入单片机的程序存储器中。在程序运行中,当接收到来自外界的命令,需要输出某种波形时再调用相应的中断效劳子程序和波形发生程序,经电路的数/模转换器和运算放大器处理后,从信号发生器的输出端口输出。并且可以通过数码管和键盘显示模块,键盘可以实现对几种波形的切换。第二章 信号发生器方案论证与选择信号发生器是指产生所需参数的电测试信号的仪器。按信号波形可分为正弦信号、波形信号、脉冲信号和随机信号发生器等四大类。本文利用单片机构造低频信号发生器,可产生正弦波,方波,三角波三种波形,再通过D/A转换器DAC0832把数字信号转变为模拟信号,经OP07放大输出到示波器,与此同时外接LCD显示输出信号的类型和频率。2.1 方案的论证与选择方案一:采用单片函数发生器可产生正弦波、方波等,操作简单易行,用D/A 转换器的输出来改变调节电压,可以实现数控调整频率,但产生信号的频率稳定度不高。方案二:利用芯片组成的电路输出波形,MAX038是MAXIM公司生产的一个只需要很少外部元件的精密高频波形产生器,他能产生准确的高频正弦波、三角波、方波。输出频率和占空比可以通过调整电流、电压或电阻来分别地控制3。所需的输出波形可由在A0和A1输入端设置适当的代码来选择,且具有输出频率范围宽、波形稳定、失真小、使用方便等特点。方案三:采用Atmel 公司的AT89C52单片机编程方法实现,该方法的可以通过编程的方法控制信号波形的频率和幅度,而在硬件电路不便的情况下,通过程序实现频率的变化和输出波形的选择,并同时在显示器显示相应的结果。方案一输出信号频率不够稳定;方案二本钱高,程序复杂度高;方案三,软硬件结合,硬件本钱低,软件起点低,优化型相比照拟好,容易实现,且满足设计要求。综合考虑,我们采用了方案三,用AT89C52单片机设计低频信号发生器,能够满足信号的频率稳定性和精度的准确行。2.2 设计原理简介 本设计采用AT89C52单片机,用软件实现信号的输出。该单片机是一个微型计算机,包括中央处理器CPU,RAM,ROM、I/O接口电路、定时计数器、串行通讯等,是波形设计的核心。该信号发生器原理框图如图2.1,总体原理为:利用AT89C52单片机构造低频信号发生器,可产生正弦波,方波,三角波三种波形,通过C语言对单片机的编程即可产生相应的波形信号,并可以通过键盘进行各种功能的转换和信号频率的控制,当输出的数字信号通过数模转换成模拟信号也就得到所需要的信号波形,通过运算放大器的放大输出波形,同时让显示器显示输出的波形信息。 LCD显示屏 键盘输入AT89C52单片机数/模转换器 D/AC0832 运算放大器 输出 图2.1 信号发生器原理框图本方案其主要模块包括键盘输入、单片机模块、D/A转化、LCD显示及运算放大器模块。键盘输入主要控制频率和波形的选择,然后通过AT89C52单片机外围电路,DAC0832数、模转换,再通过运算放大器放大,最后在LCD显示屏上显示。2.3 设计功能 当程序下进去时经过初始化,液晶屏的上只显示“wave:和“f:“,当开关三按一下是此时输出波形为正弦波,按两下时输出为方波,按三下时输出为三角波。另外两个开关可以调节频率,三种波形的频率可调范围不同,分别如下: 正弦波:1280HZ 方 波:13.3KHZ 三角波:1280HZ根据示波器的波形频率的显示计算出三种波形的频率计算公式如下:正弦波:f=(1000/(9+3*ys)方 波:f=(100000/(3*ys)三角波:f=(1000/(15+3*ys)其中ys为延时的变量。第三章 硬件设计3.1 主要元器件介绍3.1.1 AT89C52 单片机AT89C52是一种带4K字节FLASH存储器的低电压、高性能CMOS 8位微处理器,俗称单片机。该芯片具有优异的性价比,集成度高,体积小,可靠性强,控制功能强等优点。其外形及引脚排列如图3.1所示。图3.1 AT89C52 引脚图 主要特性:1. 兼容性能强2. 4K 字节可编程FLASH存储器3. 全静态工作:0Hz-24MHz4. 1288位内部RAM5. 32 可编程I/O线6. 两个16位定时器/计数器7. 5个中断源 8. 可编程串行通道9. 低功耗的闲置和掉电模式 管脚功能说明:1. VCC:供电电压46V典型值5V;2. GND:接地;3. REST:复位引脚输入高电平使89C52复位,返回低电平退出复位;4. EA/Vpp:运行方式时,EA为程序存储器选择信号,EA接地时CPU总是从外部存储器中取指令,EA 接高电平时CPU 可以从内部或外部取指令;FLASH 编程方式时,该引脚为编程电源输入端Vpp=5V 或12V;PSEN :外部程序存储器读选通信号,CPU从外部储存器取指令时,从PSEN引脚输出读选通信号负脉冲ALE /PROG :运行方式时,ALE为外部储存器低8位地址锁存信号,FLASH编程方式时,该引脚为负脉冲输入端;5. XTAL1,XTAL2为内部振荡器电路(反相放大器)的输入端和输出端,外接晶振电路4;6. P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH 编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高;7. P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH 编程和校验时,P1口作为第八位地址接收;8. P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能存放器的内容。P2口在FLASH 编程和校验时接收高八位地址信号和控制信号;9. P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流ILL这是由于上拉的缘故。P3口也可作为AT89C52 的一些特殊功能口如下: P3.0RXD串行输入口 P3.4T0记时器0外部输入 P3.1TXD串行输出口 P3.5T1记时器1外部输入 P3.2/INT0外部中断0 P3.6/WR外部数据存储器写选通 P3.3/INT1外部中断1 P3.7/RD外部数据存储器读选通3.1.2 DAC0832 DAC0832如图3.2是8分辨率的D/A转换集成芯片,由8位输入锁存器、8位DAC存放器、8位D/A 转换器及转换控制电路四局部构成。8位输入锁存器用于存放主机送来的数字量,使输入数字得到缓冲和锁存,并加以控制;8位DAC 存放器用于存放存放待转换的数字量,并加以控制;8位D/A转换器输出与数字量成正比的模拟电流,由与门、与非门组成的输入控制的输入电路来控制2个存放器的选通或锁存状态。 WR2和XFER同时有效时,8位DAC 存放器端为高电平“1,此时DAC 存放器的输出端Q跟随输入端D也就是出入存放器Q端得电平变化,反之,当端为低电平“0时,第一级8位输入存放器Q端得状态那么锁存到第二级8位DAC存放器中,以便第三极8位DAC转换器进行D/A转换5。 DAC0832的主要特性参数:1. 分辨率为8位;电流稳定时间1us;2. 可单缓冲、双缓冲或直接数字输入;3. 只需在满量程下调整其线性度;4. 单一电源供电+5V+15V;5. 低功耗,20mW。 DAC0832 引脚功能简介:1. D0D7:8位数据输入线,TTL电平,有效时间应大于90ns(否那么锁存器的数据会出错);2. ILE:数据锁存允许控制信号输入线,高电平有效;3. CS:片选信号输入线选通数据锁存器,低电平有效;4. WR1:数据锁存器写选通输入线,负脉冲脉宽应大于500ns有效。由ILE5. CS、WR1的逻辑组合产生LE1,当LE1 为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;6. XFER:数据传输控制信号输入线,低电平有效,负脉冲脉宽应大于500ns有效;7. WR2:DAC存放器选通输入线,负脉冲脉宽应大于500ns有效;8. IOUT1:电流输出端1,其值随DAC存放器的内容线性变化;9. IOUT2:电流输出端2,其值与IOUT1值之和为一常数;10. Rfb:反应信号输入线,改变Rfb端外接电阻值可调整转换满量程精度;11. Vcc:电源输入端,Vcc的范围为+5V+15V;12. VREF:基准电压输入线,VREF的范围为-10V+10V;13. AGND:模拟信号地;14. DGND:数字信号地。图3.2 DAC0832引脚图3.1.3 LCD液晶屏: 引脚功能简介,如图3.3。1. VSS为电源地;2. VDD接5V电源;3. VO需要与地短接显示屏工作;4. RS为存放器选择,高电平1时选择数据存放器、低电平0时选择指令存放器;5. RW为读写信号线,高电平1时进行读操作,低电平0时进行写操作;6. E端是液晶的使能端;7. D0D7为8位双向数据端;8. VCC电源;9. GND地。图3.3 LCD16023.2硬件原理框图 对于该低频信号发生器的设计,我们采用了以AT89C52单片机芯片作为核心处理器,编程实现各种不同类型信号的产生,最后通过DA 转换输出到示波器。结构简单,思路仅仅有条,而根据设计的根本要求,我们又把其细分为不同的功能模块,各个功能模块相互联系,相互协调,通过单片机程序构成一个统一的整体,其整体电路原理框图如图3.4所示:LCD显示 单片机 AT89C52键盘输入波形显示放大电路D/A转换时钟复位图3.4 硬件原理框图3.3 单片机AT89C52外围电路的设计89C52单片机是该信号发生器的核心,具有2个定时器,32个并行I/O 口,1个串行I/O 口,5个中断源。由于本设计功能简单,数据处理容易,数据存储空间也足够,因为我们采用了片选法选择芯片,进行芯片的选择和地址的译码。在单片机最小最小系统中,单片机从P1口接收来自键盘的信号,并通过P0口输出控制信号,通过DA转换芯片最终由示波器显示输出波形,P2控制显示器段选码,P3口通过74LS138译码器控制位选码,输出显示信息。如果有键盘按下,那么在控制器端产生一个读信号,使单片机读入信号,如果有信号输出,那么在写控制端产生一个写信号,并通过示波器和显示器显示相应的信息。 单片机引脚分配如下:1. XTAL1,XTAL2:外接晶振,产生时钟信号;2. RST:复位电路;3. P0 口:键盘输出信号。具体为:P1.0、P1.1 波形选择;P1.2、P1.3、P1.4 频率个位,十位,百位调节;P1.5频率加减控制;P1.6跳出循环。4. P1 口:8位数字信号输出输出,外接DAC0832;5. P2 口:LED显示器段选码;6. P3 口:P3.0锁存器74HC573片选信号;P3.2中断控制;P3.4-P3.6 74LS138 输入信号,译码控制LED 显示器位选。P3.7为74LS138片选码。3.3.1 时钟电路时钟信号是产生单片机工作的时钟信号,控制着计算机的工作节奏,可以通过提高时钟频率来提高CPU的速度。89C52内部有一个可控的反相放大器,引脚XTAL1、XTAL2为反相放大器输入端和输出端,在XTAL1、XTAL2上外接12MHZ晶振和30pF电容便组成振荡器。时钟信号常用于CPU定时和计数。单片机的时钟信号通常用两种电路形式得到:内部振荡和外部振荡方式。在引脚XTAL1和XTAL2外接晶体振荡器,构成了内部振荡方式。由于单片机内部有一个高增益的反相放大器,当外接晶振后,就构成了自激振荡,并产生振动时钟脉冲。晶振通常选用6MHZ、12MHZ、24MHZ。 图3.5 时钟电路 本设计中时钟电路图如图3.5,我们选择了12MHZ和晶振分别接引脚XTAL1 和XTAL2,电容C1,C2 均选择为30pF,对振荡器的频率有稳定作用,当频率较大时,正弦波、方波、三角涉及锯齿波中每一点的延时时间为几微妙,故延时时间还要加上指令时间才能获得较大的频率波形。3.3.2 复位电路复位电路是为单片机复位使用,使单片机接口初始化;89C52等CMOS52系列单片机的复位引脚RET 是施密特触发输入脚,内部有一个上拉低电阻,当振荡器起振以后,在RST 引脚上输出2个机械周期以上的高电平,器件变进入复位状态开始,此时ALE、PSEN、P0、P1、P2、P4输出高电平,RST上输入返回低电平以后,变退出复位状态开始工作。该方案采用的是人工开关复位,在系统运行时,按一下开关,就在RST断出现一段高电平,使器件复位。复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,在每个机器周期的S5P2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。复位电路通常采用上电自动。 图3.6 复位电路复位和按钮复位两种方式。本设计选择了按键复位如图3.6, 在系统运行时,按一下开关,就在RST 断出现一段高电平,使图3.6时钟电路图器件复位。此时ALE、PSEN、P0、P1、P2、P4 输出高电平,RST上输入返回低电平以后,变图3.6复位电路,退出复位状态开始工作。3.3.3 键盘接口电路 键盘模块是是用于控制信号输入的类型,当按键按下时,可以通过单片机编程读取闭合的键号,实现相应的信号输出。其步骤主要是a、判断是否有键按下;b、去抖动,延时20ms左右;c、识别被按下的键号;d、处理,实现功能。如图3.7所示,常用的键盘电路一般为矩阵式,但是对于此设计,为了方便程序的简单化,我们采用了一般的键盘接口,键盘输出信号。具体为:P1.0、P1.1波形选择,其中当P1.0=0,P1.1=0 输出正弦波,当P1.0=0,P1.1=1 输出三角波,当P1.0=1,P1.1=0输出锯齿波;当P1.0=1,P1.1=1 输出方波。;P1.2、P1.3、P1.4 频率个位,十位,百位调节;P1.5频率加减控制;P1.6跳出循环。图3.7 键盘接口电路3.4 LCD 显示电路 如图3.8所示,1602的八位数据端接单片机的P1口,其三个使能端RS、RW、E分别接单片机的P3.2P3.4。通过软件控制液晶屏可以显示波形的种类以及波形的频率。图3.8 显示电路3.5 数/模转换及放大电路D/A转换也称为数模转换,是把数字量变换成模拟量的线性电路。单片机产生的数字信号通过DAC0832转化成模拟信号,输出相应的电流值,通过OP07集成运算放大器可以取出模拟量得电压值,最后利用示波器获得输出的模拟信号的波形;衡量数模转换的性能指标有分辨率、转换时间、精度、线性度等。LED显示器用由假设干个发光二极管按一定的规律排列而成,是一种能够将电能转化为可见光的固态的半导体器件,它可以直接把电转化为光用于是显示相关输出波形的信息,包括信号的类型和频率。由于单片机输出的是数字信号,要得到模拟信号的波形就必须对其进行数模转换。我们采用了DAC0832数模转换器,该芯片具由8位输入锁存器、8位DAC 存放器、8位D/A转换器及转换控制电路四局部构成。由于其输出为电流输出,因此外加运算放大器OP07使之装换为电压输出,最后通过示波器显示输出的波形,如图3.9所示。图3.9 D/A转换电路3.6 电源电路因为本设计单片需要提供+5V电源,放大器需要用到15V电源,所以设计了5V的电源模块如图3.10和15V的电源模块,如图3.11。图3.10 稳压电路原理图图3.11 15V稳压电路原理图第四章 软件设计4.1 软件设计流程本系统采用AT89C52单片机,用编程的方法来产生三种波形,并通过编程来切换三种波形以及波形频率的改变。具体功能有:1各个波形的切换;2各种参数的设定;3频率增减等。软件调通后,通过编程器下载到AT89C52芯片中,然后插到系统中即可独立完成所有的控制。首先对程序初始化,再判断假设有按键按下,那么计算相关参数,一方面利用定时中断查表输出波形,另一方面送段选口和位选口数据,使LCD显示相关波形类型和频率,最后反应回去构成循环,判断按键相关信息,如图4.1。 开 始 初始化有按键按下?S1按下S3按下S2按下延时减f增大延时增f减小S1num+S1num=0S1num=2S1num=1S1num=3液晶显示 f液晶显示f无输出S1num=0输出: 三角波液晶显示 Train:输出: 方波液晶显示 Squart:输出: 正弦波液晶显示 Sine:图4.1 程序流程图4.2 信号产生模块本设计将各种波形的数据通过P1.0口选择,送往在单片机的程序储存器里,通过调节P1.1和P1.2口来改变这个频率,然后计算其技术初值,开启中断,通过改变D/A转换器输出波形。电路较为简单,本钱较低。三角波程序模块三角波产生首先将DAC0832口地址至为7FFFH,通过A中数值的加一递升,当A中的内容为0时,与0FFH相比,相等时A中的内容减一递减,从而循环产生三角波。给A设置初值00HMOV DPTR,#7FFFHMOVX DPTR,AINC A判断A是否满?否是DEC A判断是否等于初值?是开 始否图4.2 三角波程序流程图4.2.2正弦波程序模块计算0Pi/2区间N/4个离散的正弦值,根据对称关系,复制Pi/2 Pi区间的值,将0Pi区间各点根据求补即得Pi2Pi区间各值,将得到的这些数据根据所用DAC的位数进行量化,得到相应的数字值,正弦波波形通过查表指令得出。 开 始MOV R0,#6DHMOV A,#R0MOVE DPTR,#SINMOVC A,#A+DPTRMOV DPTR,#7FFF HMOVXDPTR,AINC R0判断是否等于7FH是图4.3正弦波程序流程图4.2.3方波程序模块方波产生首先将DAC0832口地址至为7FFFH,当A中的内容为0时,输出对应模拟量,然后延时,当A中的内容为0FFH时,同样输出对应模拟量,再延时相同时间,从而得到方波。 开 始给A设置初值FFHMOV DPTR,#7FFFHMOVX DPTR,A调用延时子程序再给A设置00HMOVX DPTR,A调用延时子程序图4.4方波程序流程图第五章 系统仿真与电路测试简单系统硬件的调试通常采用载入简单的测试程序并运行,使用数字表或示波器观察;对有些硬件例如键盘可直接编入程序观察程序执行状态。 5.1软件仿真对于键盘是,我们应当首先确定每个按键的作用,只有当我们确定键之后,才可以对我们所要设置的按键的功能通过真正做到使软硬件相结合在一起,实现我们的目标功能。 对于设计的八个按键及功能见表5.1。表 5.1KEY作用K0三角波K1方波K2锯齿波K3正弦波K4幅值1VK5幅值2VK6幅值3VK7幅值4V对整个系统用proteus仿真后得到的结果如下:方波仿真如图5.1(a)所示 如图5.1(b) 所示输出幅值为1V 输出幅值为2V周期为250ms 周期为250ms时间档为 100ms 时间档为 100ms幅值档为 1V 幅值档为 1V 图5.1(a) 图5.1(b)如图5.1(c)所示 如图5.1(d)所示输出幅值为3V 输出幅值为4V周期为250ms 周期为250ms时间档为 100ms 时间档为 100ms幅值档为 1V 幅值档为 1V 图5.1(c) 图5.1(d)如图5.1(e)所示输出幅值为5V周期为250ms时间档为 100ms幅值档为 1V 图5.1(e)5.1.2 三角波仿真图 如图5.2(a)所示 如图5.2(b)所示 输出幅值为1V 输出幅值为2V 周期为2.5ms 周期为2.5ms 时间档为 1ms 时间档为 1ms 幅值档为1V 幅值档为 1V 图5-2(a) 图5-2(b) 如图5.2(c)所示 如图5.2(d)所示 输出幅值为3V 输出幅值为4V 周期为2.5ms 周期为2.5ms 时间档为 1ms 时间档为 1ms 幅值档为 1V/格 幅值档为 1V 图5.2(c) 图5.2(d)如图5.2(e)所示输出幅值为5V周期为2.5ms时间档为 1ms幅值档为 1V 图5.2(e)正弦波仿真图 如图5.3(a)所示 如图5.3(b)所示 输出幅值为1V 输出幅值为2V 周期为0.5ms 周期为0.5ms 时间档为 0.2ms 时间档为 0.2ms 幅值档为 1V 幅值档为 1V 图5.3(a) 图5.3(b) 如图5.3(c)所示 如图5.3(d)所示 输出幅值为3V 输出幅值为4V 周期为0.5ms 周期为0.5ms 时间档为 0.2ms 时间档为 0.2ms 幅值档为 1V 幅值档为 1V 图5.3(c) 图5.3(d) 如图5.3(e)所示 输出幅值为5V ,周期为0.5ms ,时间档为 0.2ms 幅值档为 1V 图5.3(e) 5.2硬件电路测试 实验方波如图5.4a所示 实验三角波如图5.4b所示 图5.4a 图5.4b 幅值24V 周期200ms 幅值24V 周期2.5ms 实验正弦波如图5.4c所示图5.4c 幅值24V 周期1.2ms5.3结果分析从实验结果分析,有一些干扰,因此波形存在一定的失真,这主要跟程序的设计有关,没有做到那么精确,再者,仿真软件本身也会给测试结果一定的误差。在进行试验过程中,只用一个D/A转换器时,图形只有一点点失真。这说明也和增加了D/A转换器有关的。结 论制作函数信号发生器随设计思想不同,具有多种方法,本文只是一种可能实现的方法。此法的频率控制和幅度控制分辨率高,且硬件集成度高,整机自动化程度高,性能优良,具有很高的实用价值。 本系统以单片机为核心,通过键盘输入选择信号类型和信号频率,采用D/A转换芯片输出相应的波形,同时以LCD显示器实时显示信号相关信息。再通过C语言进行编程,最终实现方波,三角波和正弦波三种波形的产生,实验结果通过示波器进行仿真,同时波形的频率可调。该信号发生器在调试时,出现了一些问题,之后自查,同时向老师、同学请教得以解决。经测试该设计方案线路优化,结构紧凑,性能优越,满足设计要求。参考文献1吴岩.单片机在电子技术中的应用和开发技术研究J,黑龙江科技信息,2021.19-24.2李富林.浅谈单片机的应用领域J.网络财富,2021.112-120.3李琳.单片高频函数发生器MAX038及其应用J.现代电子技术,2007.45.4荣雪琴. 密封容器的气密检测系统的研究与设计D.苏州大学,2021.10-18.5胡清.外同步触发,多通道,单周期函数发生器设计.河南科技大学,2021.9-17.6李博.基于单片机控制的高精度电荷校准仪的设计D,中北大学,2021.154.7薄晓.基于单片机AT89C51的AD9850DDS信息源设计与实现J,环球市场信息导报,2021.220-223.8李大东等.时钟控制信号源的设计J,东南传媒,2021.13-17.9席春梅.新型键盘电子乐器的研究与设计实现D,青海师范大学,2021.48.10熊超美.步进电机的单片机控制硬件系统设计J,湖南有色金属,2021.98.11李志杰.多功能报警系统的研究与设计D,华南理工大学,2005.99-109.12李强.单片机定时,计数器编程技术(上)J,电子世界,2004.73-80.13柳华.基于霍尔元件的智能化电度表的设计D,华北电力大学,2007.45-65.14徐淑彦.基于单片机的智能数据采集系统J,价值工程,2021.80.15李凯.基于单片机的机械控制系统的步进电机的设计J,黑龙江科技信息,2021.34-40.16任志刚等.多功能信号发生器的设计与制作J,西安航空技术高等专科学校报,2021.33.17AtmelCorp.8-bitMicrocontrollerwith8KBytesIn-SystemProgrammableFlash-AT89C52,2005.18 DAC0832DataSheetPDF.MicrochipTechnologyIncorporatedPrintedintheUSA2007. 致 谢本课题在选题及研究过程是在胡凤忠老师的亲切关心和悉心指导下完成的。老师们屡次询问研究进程,并为我指点迷津,帮助我开拓研究思路,精心点拨、热忱鼓励。老师他们严谨细致、一丝不苟的工作作风,严谨求实的态度,踏踏实实的精神,不仅授我以文,而且教我做人,虽历时四载,却给以终生受益无穷之道。对老师的感谢之情是无法用言语表达的。感谢带过我的老师对我的教育培养。他们细心指导我的学习与研究,从课题的选择到工程的最终完成,老师们都始终给予我细心的指导和不懈的支持。在此,我要向诸位老师深深地鞠上一躬并致以诚挚的谢意和崇高的敬意。在此,我还要感谢在一起愉快的度过四年生活的各位同学,正是由于你们的帮助和支持,我才能克服一个一个的困难和疑惑,直至本文的顺利完成。在论文即将完成之际,我的心情无法平静,从开始进入课题到论文的顺利完成,有多少可敬的师长、同学、朋友给了我无言的帮助,在这里请接受我诚挚的谢意!最后我还要感谢培养我长大含辛茹苦的父母,谢谢你们!附录A 源代码#include #define uchar unsigned char #define uint unsigned int sbit lcdrw=P33;sbit lcdrs=P32;sbit lcde=P34;sbit d=P27;sbit s1=P20;sbit s2=P21;sbit s3=P22;sbit cs=P35;sbit wr=P36;uchar s1num,a,ys,j;uint fre;uchar code tosin256=0x80,0x83,0x86,0x89,0x8d,0x90,0x93,0x96,0x99,0x9c,0x9f,0xa2,0xa5,0xa8,0xab,0xae,0xb1,0xb4,0xb7,0xba,0xbc,0xbf,0xc2,0xc5,0xc7,0xca,0xcc,0xcf,0xd1,0xd4,0xd6,0xd8,0xda,0xdd,0xdf,0xe1,0xe3,0xe5,0xe7,0xe9,0xea,0xec,0xee,0xef,0xf1,0xf2,0xf4,0xf5,0xf6,0xf7,0xf8,0xf9,0xfa,0xfb,0xfc,0xfd,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfd,0xfd,0xfc,0xfb,0xfa,0xf9,0xf8,0xf7,0xf6,0xf5,0xf4,0xf2,0xf1,0xef,0xee,0xec,0xea,0xe9,0xe7,0xe5,0xe3,0xe1,0xde,0xdd,0xda,0xd8,0xd6,0xd4,0xd1,0xcf,0xcc,0xca,0xc7,0xc5,0xc2,0xbf,0xbc,0xba,0xb7,0xb4,0xb1,0xae,0xab,0xa8,0xa5,0xa2,0x9f,0x9c,0x99,0x96,0x93,0x90,0x8d,0x89,0x86,0x83,0x80,0x80,0x7c,0x79,0x76,0x72,0x6f,0x6c,0x69,0x66,0x63,0x60,0x5
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 商业计划


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

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


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