【基于单片机的函数信号发生器设计5200字(论文)】_第1页
【基于单片机的函数信号发生器设计5200字(论文)】_第2页
【基于单片机的函数信号发生器设计5200字(论文)】_第3页
【基于单片机的函数信号发生器设计5200字(论文)】_第4页
【基于单片机的函数信号发生器设计5200字(论文)】_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于单片机的函数信号发生器设计摘要本文所设计的时一种简易的常见函数信号发生器,它的核心是一块STC89C52芯片,通过键盘输入信号提示和信号频率,可以为D/A转换芯片调出恰当的波形并将其显示在LCD显示屏上。通过C语言编程可在本文设计的函数信号发生器上在LCD显示屏上显示出正弦波,方波,三角波,锯齿波四种波形且可以调整波形的频率。经过多次实验和调试,本设计方案结构紧凑,性能优良,可以满足课题要求。 关键字:函数信号发生器;D/A转换器;STC89C52目录TOC\o"1-3"\h\u4896绪论 1260161概述 2196851.1选题的背景和意义 2301991.2课题研究方法 2114081.3研究设想与预期结果 2184442函数信号发生器方案论证与选择 3311532.1方案的论证和选择 3211582.2设计原理简介 3203592.3设计功能 434143硬件设计 549943.1主要元器件介绍 5274943.1.1STC89C52单片机 5268703.1.2DAC0832 5213123.1.3LCD液晶屏 5213493.2硬件原理 677053.3主控电路模块 610263.3.1晶振模块 6189163.3.2复位电路 7297883.3.3按键模块 760963.3.4显示模块 8162083.3.5数模转换及放大电路模块 9255784软件设计 10293714.1软件设计流程 1098804.2信号产生模块 11101124.2.1三角波程序模块 11222704.2.2正弦波程序模块 12232514.2.3方波程序模块 13239594.2.4锯齿波程序模块 1469035系统仿真与测试 161295.1系统仿真 16273425.2实物图结果 17162155.3结果分析 186882参考文献 20绪论在21世纪,在这个电子时代,各种各样与电子技术相关的产业都得到了井喷式的发展,这就亟需对函数信号发生器的要求拔到了一个前所未有的高度。正是因为时代的变迁,这才导致了对函数信号发生器的各种要求,使得它变得规格众多、功能优越。在20世纪后半叶,一种装置的出项给函数信号发生器定下了集成度高、人工智能化、自动化的发展方向。这种装置就是微处理器。正因为函数信号发生器装备了这种装置微,所以它具有自动测试,自动故障诊断以及自动波形形成和校正的功能。当前其发展方向是频率区间大、更加节能、更加准确的高频率、性能强大、自动化。给定一个确定频率便可使用函数信号发生器产生所需波形。函数信号发生器种类繁多,按照不同的参考标准,可以分为不同的几类。例如,函数、随机、脉冲信号发生器等三大类便是以波形为参考;低频、高频、微博信号发生器则是以频率大小为依据。1概述1.1选题的背景和意义在现如今,函数信号发生器与科学研究、学生的学习和生产实践密切相关。在我们的平时的学习过程中,正弦波,方波,三角波和锯齿波信号都是最基础的信号。函数信号发生器是一种广泛运用的设备。其在上至国家高精端科技下到路边的交通信号灯信号都有着广阔的运用。1.2课题研究方法通过网上查阅相关论文,了解设计思路,结合本科阶段学习的相关单片机知识编写需求的程序然后进行实验。完成课题期间肯定会遇到一些瓶颈,这时候图书馆的丰厚贮藏和学校的老师都是我突破的力量。最终完成该设计。1.3研究设想与预期结果本次设计所使用的元器件有:单片机STC89C52、8位D/A转换芯片DAC0832。根据课题设计要求,使用这两个元器来实现四种基本波形——正弦波、方波、三角波、锯齿波。撰写程序来控制它得频率和波形。代码完成之后,将其烧录到STC89C52中。通电启动单片机,开发板上的按键模块有四个按键,其作用是设置步进值、增加频率、减小频率、切换波形。经由D/A转换器和运算放大器后,然后输出到LCD液晶显示屏上。2函数信号发生器方案论证与选择2.1方案的论证和选择方案一:使用单片机函数信号发生器实现三角波等常用波形的产生,是一种较为容易的方案。频率的控制则由D/A转换器的输出调节电压所决定。但这种方案的所生成的信号容易失真。方案二:芯片组成的电路输出波形。MAX038是一种的精密高频波形发生器,它不用很多的外部原件来助其实现想要的功能。它可以准确生成我们所需要的四种波形。通过对电路电流、电压的控制来实现我们想要的输出频率和占空比。在A0和A1输入端子上输入程序代码就可以控制输出的波形。并且它有输出频率区间大、失真低、使用便捷的特点。方案三:使用STC89C52单片机为核心然后烧录程序实现。使用该方案,波形的频率和幅度可以通过C语言程序简单便利地调节。在硬件电路复杂难以处理时,更改频率和切换波形就可以通过烧录到单片机中地程序加以实现。输出地结果可直观地在LCD1602上显示。方案一易失真;方案二造价高昂,代码工程量大,费时费力;方案三,软件硬件双管齐下。其硬件运用广泛,造价低廉,软件泛用性广,学习成本轻松,相较与方案一、方案二,它的优化型更加优越,且满足设计要求。综上所述,我们采用了方案三来实现本次的课题设计,更加容易满足信号不失真的要求。2.2设计原理简介本设计使用STC89C52单片机作为该系统的核心。波形的输出由软硬件结合实现。该单片该机是由核心处理器,内存,主读存储器,I/O接口电路等和其他组件组成的微型计算机。它是整个程序的核心。其原理图如下图1所示。总体原理:以上文所述单片机为核心连接数模转换模块、运算放大模块、显示模块,实现产生四种波形的功能,最后下载到单片机中的程序运行生成相应的信号。使用键盘控制信号的频率切换不同的波形。最后使用数模转化器使数字信号变换成模拟信号时,即可满足所需波形的要求。最后,模拟信号由经运算放大器放大后输出,就可以在LCD显示屏上看到想要的波形。图1函数信号发生器原理框图2.3设计功能程序烧录到单片机中后,通电运行信号发生器,此时显示的输出波形为正弦波,按下第key1按钮,正弦波变成方波,再按key1按钮,显示三角波,再按一下key1按钮变为锯齿波。key4调整步进值,key2按钮和key3按钮可以调节频率,其调节范围:10HZ——1000HZ。key2为减,key3为加。图2按键3硬件设计3.1主要元器件介绍3.1.1STC89C52单片机该单片机为一枚8bit的微型控制器。STC89C52有8位的CPU和4KB的非易失性存储器,其在嵌入式设备上有非常广泛的应用。它的RAM大小为4KB,ROM大小为256B。3.1.2DAC0832DAC0832是用于D/A转换的高级集成芯片,由四部分构成,如下图图3所示。图3数模转换器组成3.1.3LCD液晶屏引脚功能简介,如图4。(1)VSS为电源地;(2)VDD接5V电源;(3)VO需要与地短接显示屏工作;(4)寄存器选择引脚RS,高电平1时选择数据寄存器、低电平0时选择指令寄存器;(5)RW为读写信号线,高电平1时进行读操作,低电平0时进行写操作;(6)E端是液晶的使能端;(7)D0-D7为8位双向数据端;(8)VCC电源;(9)GND地。图4LCD引脚功能3.2硬件原理对于该信号发生器的设计,本课题选择了操作简单编程容易的STC89C52单片机作为核心处理器。通过数模转换模块输出到LCD显示模块上。本设计全局清晰明朗,可细分为主控电路模块、晶振模块、复位模块、按键模块、LCD1602模块、数模转换模块。每一个模块相互结合构成该函数信号发生器。3.3主控电路模块对人来说最重要的器官是心脏,那么对该设计而言最重要的模块便是主控电路模块了。它把各个模块统筹为一个整体,本文选择了STC89C52单片机,优点不再赘述,单片机最小系统如下图图5所示,在使用,其连接了晶振、复位、按键、显示、数模转换以及放大模块。图5主控电路最小系统原理图3.3.1晶振模块晶体振荡器如图6,将定时组件连接到18、19引脚,内部振荡器将自发产生的平稳和连续的振荡。在次设计选择是12Mhz的石英晶振,以促进定时器和计数器的配合。与晶振并联的两个电容,范围可以在20~40pF之间(本设计使用30pF),有微调频率的作用。图6晶振电路3.3.2复位电路复位电路,它的作用是单片机在电源连接或故障时将内部电路返回到某个初始状态,有上电复位和开关复位之分,如图7所示。一般而言,微控制器的复位条件是RST引脚上保持10ms以上的高电平。图7复位电路3.3.3按键模块按键模块是本设计的主要控制手段。按下按钮,电路闭合,单片机收到相应的电信号,然后按照程序进行,实施指令。在本设计的键盘模块中采用了矩阵键盘。各按键功能为:key1波形选择,当单片机通电后的初始状态显示的是正弦波;key2频率减;key3频率加;key4选择步进值。详情见下图图8。图8键盘接口电路3.3.4显示模块如图9所示,LCD1602的八位数据端接单片机的P1口,其三个使能端RS、RW、E分别接单片机的P3.2—P3.4。通过软件控制液晶屏可以显示波形的种类以及波形的频率。图9显示电路3.4.5数模转换及放大电路模块为了使信号最终在显示屏上呈现出来,要将STC89C52输出的数字信号接到DAC0832,使其转换成模拟信号。为了使示波器上能正常显示波形,还要加增加运算放大模块,让电流信号转换成电压信号。图10D/A转换及放大电路4软件设计4.1软件设计流程本设计使用STC89C52单片机,采用编程的方法来产生四种波形,并通过单片机中的程序实现更改波形、增加或减小波形的频率。具体功能有:(1)四种波形的选择;(2)频率更改;(3)步进值调整。一切准备就绪后,烧录程序,然后插到系统中就可以完成我们想要的控制。首先我们初始化程序,然后程序按部就班地运行,最后输出到显示屏上,使我们可以看到波形类型和频率大小。最后一步就是去反馈回去然后去构成循环。主函数如图11所示。图11主函数流程图4.2信号产生模块本设计第一步是让方波正弦波三角波锯齿波四种种波形的数据到P1.0口进行判断,第二部将其保存到STC89C52的ROM里,调试P1.1口、P1.2口来调整到需求的频率,判断初始数值,开启中断,最后一步经由数模转换器输出波形。设计的整体电路门槛低,性价比高。4.2.1三角波程序模块首先第一步将DAC0832口地址置为7FFFH,然后使得A中的数值的加一逐加。在A中的内容到达0时,这时将其与0FFH进行比较,等到A中的数值与OFFH相等的时刻时,再将A中的内容减一逐降。这样不断地循环后就可以产生三角波波形。程序框图如下图图12所示。图12三角波程序流程图4.2.2正弦波程序模块第一步要进行对离散的正弦值进行计算,计算的数量为N/4个,区间0~Pi/2。第二步,因为正弦波是对称的,所以为了得到区间Pi~2Pi中的值,我们对区域Pi/2~Pi的值进行拷贝,根据互补原则进行计算便可以得到Pi~2Pi区间各值。第三部,依据所用DAC的位数对上述数据量化,得到数据值,正弦波就此产生。程序框图如下图图13所示。图13正弦波程序流程图4.2.3方波程序模块方波生成的程序与三角波生成的程序有些类似。第一步将DAC0832口地址置为7FFFH,当单片机检测A中的数值为0时,便会将需求的模拟量输出,下一步将这个模拟量延时。第三步程序继续进行,当检测到A中的内容为0FFH后,再次进行上述延时操做。循环后得到方波波形。程序框图如下图图14所示。图14方波程序流程图4.2.4锯齿波程序模块首先第一步将DAC0832口地址置为7FFFH,然后使得A中的数值的加一逐加。在A中的内容到达0时,这时将其与0FFH进行比较,等到A中的数值与OFFH相等的时刻时,再将A中的内容减一逐降。这样不断地循环后就可以产生三角波波形。程序框图如下图图14所示。图14锯齿波流程图5系统仿真与测试5.1系统仿真根据上文所提供的思路,用AltiumDesigner10软件画出本设计的原理图,详情请见下图图15。 图15 系统原理图本设计是以单片机STC89C52为核心,设计时采用KeiluVision进行的C语言程序的设计,并以此实现预定的功能。本设计的硬件部分在Proteus环境下进行仿真。仿真时,先打开KeiluVision将已经编写完成的程序进行编译。当编译完成时,Keil软件会生成一个hex的可烧录文件。在完成hex文件的编写后,通过Proteus打开已经建立好的仿真项目,并打开设计好的仿真电路,检查仿真电路无任何错误后,将hex文件烧录到单片机中,由此,本系统即可开始仿真。其仿真结果如下图图15所示。 图15 系统仿真图5.2实物图结果四种波形的实物展示图如16所示图16四种波形实物图5.3结果分析从实验结果直观来看,第一个方面由于主程序存在一些缺陷,无法做到极高的精度,导致最后波形不稳定,有一些失真。存在一些干扰,所以导致波形会有一定的失真,这主要跟程序的设计有关,没有做到那么精确,第二个方面Proteus软件本身会给测试结果加一定的误差,这样实际操作中留有一定的余地。结论函数信号发生器的设计是一个比较基础的东西,实现方法有很多很多。本设计选择了我个人比较觉得更加容易实现的方法。该设计的实现的方案可以比较简便地对频率进行控制,幅度精准。整个实物的布局整洁大方,成本低性能高,实用价值广泛,可运用到各电子行业。STC89C52单片机担任整个系统的中央CPU,我们使用键盘按钮调节我们相要的波形和波形的频率。通过数模转换模块将我们想要的波形输出到LCD显示器上。这样我们就可以直观地观察波形类型和其频率的大小。再然后使用C语言编写程序。在最后便可以实现方波、三角波、正弦波和锯齿波四种波形的产生。实验结果通过示波器进行仿真,同时波形的频率可调。该信号发生器在调试时,出现了一些故障为了解决这些故障,我首先自己检查,看看原件焊接是否有错误,代码是否不规范等等。同一时向我也会向老师、同学请教这些具体问题,最终得以解决。本设计经过自测后进行了优化。布局大方,性能卓越,满足课题设计的需求。

参考文献[1]肖骁,戈文祺.电气传动系统中单片机技术的应用解析[J].中国标准化,2017(22):250-252.[2]刘玉丛.单片机技术应用课程实践化教学改革的探索[J].电子世界,2018(03):97.[3]秦国栋.单片机技术微课库建设实例[J].科学咨询(科技·管理),2018(03):52.[4]梁小廷.单片机技术的发展及应用研究[J].民营科技,2018(06):9.[5]严格非.现代单片机技术的进展[J].中国新通信,2018,20(08):237.[6]PhilipJ.Basford,StevenJ.Johnston,ColinS.Perkins,TonyGarnock-Jones,FungPoTso,DimitriosPezaros,RobertD.Mullins,EikoYoneki,JeremySinger,SimonJ.Cox.Performanceanalysisofsingleboardcomputerclusters[J].FutureGenerationComputerSystems,2020,102.[7]Computers;ReportsfromUniversityofSouthamptonDescribeRecentAdvancesi

温馨提示

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

最新文档

评论

0/150

提交评论