版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
....word..本科毕业设计〔论文〕题目基于单片机的波形发生器的实现与设计学生XX专业班级学号院〔系〕指导教师(职称)完成时间....word..摘要本文介绍了一种基于单片机的波形发生器的设计,整个系统通过单片机STC89C52控制外围数码管显示电路以及参数调节等实现正弦波、方波、三角波、锯齿波和脉冲波五种波形的输出显示。该波形发生器主要由两局部组成:系统硬件设计和系统软件设计,在系统硬件设计中,以STC89C52单片机为核心,通过I/O接口设计,扩展了D/A转换模块、同时用LED显示灯指示对应的波形。并且采用画图软件软件PROTEUS99SE画出原理图,设计并制作波形发生器的印制电路板〔PCB〕。系统软件设计是在KeilC的集成开发环境下采用汇编语言完成的,包括主程序、四种波形产生子程序、按键功能子程序和显示子程序等模块。本系统可以实现波形频率、幅度实时可调,功能灵活,系统的开发本钱在百元内,具有测量精度高,误差小、功耗低,数据传输速度较快,可靠性高等特点,有一定的开发价值。实验说明,设计系统的测试结果与实际波形的频率和幅度一致。关键词:波形发生器;STC89C52;LED;PCBAbstractThisarticledescribesthethedesignofthewaveformgeneratorbasedonsingle-chip,theentiresystemthroughthemicrocontrollerSTC89C52controlstheledthatcanfinishconverttingfivewaveformanalogoutputofsinewave,squarewave,trianglewave,sawtoothwaveandpulsewave.Thewaveformgeneratorconsistsoftwoparts:systemhardwaredesignandsystemsoftwaredesign,inthesystemhardwaredesign,themicrocontrollerSTC89C52isthecoreofthedesign,throughI/OinterfacedesigntoextendtheDAconvertermodule,waveformselectorbuttons,aswellasLEDtodisplay.AndthroughtheSCMsimulationsoftwarePROTEUS99SEtodesignandproduceoftheprintedcircuitboard(PCB)ofthewaveformgenerator.SystemsoftwaredesignisdonewithassemblylanguageintheintegrateddevelopmentenvironmentKeilC,includingthemainProgram,fourwaveformgeneratorsubroutine,keyfunctionsanddisplaysubroutinesmodules.Thissystemcanrealizethatfrequencyandamplitudeofwaveformisreal-timeadjustableandflexible.Thesystemdevelopmentcostsisinthehundredwithahighaccuracy,theerrorissmall,lowpowerconsumption,fasterdatatransferspeeds,highreliability,thereisacertaindevelopmentvalue.Thetestedfrequencyandamplitudeofthesystemisconsistentwiththeactualwaveform.Keywords:waveformgenerator;stc89C52;led;pcb目录TOC\o"1-3"\h\u286441绪论1236481.1选题背景及意义1317171.1.1本课题的研究现状1261.1.2选题目的及意义2220411.2设计根本要求3193152波形发生器系统方案设计与论证4265802.1总体设计方案的比拟4138442.2子系统模块方案设计4222952.2.1控制模块方案设计5120242.2.2频率调整模块方案设计571732.2.3键盘模块方案设计6180472.2.4显示模块方案设计7171872.2.5D/A模块显示方针797782.3系统总体框图8190742.4波形产生相关理论10112102.5MCU概要11146542.5.1单片机开展历程11269222.5.2单片机的特点11194522.5.3单片机的应用领域1265113硬件实现及模块电路设计1398043.1单片机最小系统的设计 13233673.2D/A转换模块14143553.2.1分辨率15171903.2.2转换精度15162453.2.3转换误差15112943.2.4线性度15212023.3频率调整模块 1693063.4按键显示模块17316923.5LED显示模块18313713.6RS232串行通信电路及电源供电电路 20295613.6.1RS232串行通信电路 20235133.6.2电源供电电路 21207824单片机开发系统23117774.1系统软件编程语言方案设计 23185604.2系统整体软件设计思想 24286234.2.1Keil编译器简介24144454.2.2KeilC51单片机软件开发系统的整体构造24312624.2.3uVision4集成开发环境 2473844.3主程序流程图2535734.4软件仿真26155345系统软硬件调试与数据处理28165155.1硬件PCB制作、安装、测试与调试 286285.1.1PCB设计、制作、安装 2871745.1.2电路板调试与检测平安 2966725.1.3供电平安 29176345.2PCB电路板的电气规那么检查与调试及电路功能测试 3015445.2.1PCB电路板的电气规那么检查与调试 30113795.3测试方法及数据的记录和统计 30121755.4测试数据分析及处理 30264565.5系统功能实现情况 30204976系统抗干扰措施32110956.1形成干扰的根本因素32184716.2提高单片机系统抗干扰能力的主要手段3322782结论 3422293致 3522445参考文献3632572附录A英文原文3832443附录B汉语翻译451836附录C系统软件局部源程序 4923745附录D系统原理图 5517465附录E元器件清单 5630300附录F符号说明57703附录G实物图58....word..1绪论1.1选题背景及意义波形发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。各种波形曲线均可以用三角函数方程式来表示。能够产生多种波形,如三角波、锯齿波、矩形波〔含方波〕、正弦波的电路被称为函数波形发生器。在通信、播送、电视系统,在工业、农业、生物医学等领域内,函数波形发生器在实验和设备检测中具有十分广泛的用途。1.1.1本课题的研究现状波形发生器既可以构成独立的信号源,也可以是高性能网络分析仪、频谱仪及其它自动测试设备的组成局部。波形发生器的关键技术是多种高性能仪器的支撑技术,因为它能够提供高质量的精细信号源及扫频源,可使相应系统的检测过程大大简化,降低检测费用并极大地提高检测精度。美国安捷伦生产的33250A型函数/任意波形发生器可以产生稳定、准确和低失真的任意波形,其输出频率X围为1μHz~80MHz,而输出幅度为10mVpp~10Vpp;该公司生产的8648D射频波形发生器的频率覆盖X围更可高达9kHz~4GHz。[1]国产SG1060数字合成波形发生器能双通道同时输出高分辨率、高精度、高可靠性的各种波形,频率覆盖X围为1μHz~60MHz;国产S1000型数字合成扫频波形发生器通过采用新技术、新器件实现高精度、宽频带的扫频源,同时应用DDS和锁相技术,使频率X围从1MHz~1024MHz能准确地分辨到100Hz,它既是一台高精度的扫频源,同时也是一台高精度的标准波形发生器。还有很多其它类型的波形发生器,他们各有各的优点,但是波形发生器总的趋势将向着宽频率覆盖、高频率精度、多功能、多用途、自动化和智能化方向开展[2]。目前,市场上的波形发生器多种多样,一般按频带分为以下几种:超高频:频率X围1MHz以上,可达几十兆赫兹。高频:几百KHZ到几MHZ。低频:频率X围为几十HZ到几百KHZ。超低频:频率X围为零点几赫兹到几百赫兹。超高频波形发生器,产生波形一般用LC振荡电路。高频、低频和超低频波形发生器,大多使用文氏桥振荡电路,即RC振荡电路,通过改变电容和电阻值,改变频率。用以上原理设计的波形发生器,其输出波形一般只有两种,即正弦波和脉冲波,其零点不可调,而且价格也比拟贵,一般在几百元左右。在实际应用中,超低频波和高频波一般是不用的,一般用中频,即几十HZ到几十KHZ。用单片机89S52,加上一片DAC0832,就可以做成一个简单的波形发生器,其频率受单片机运行的程序的控制。我们可以把产生各种波形的程序,写在ROM中,装入本机,按用户的选择,运行不同的程序,产生不同的波形。再在DAC0808输出端加上一些电压变换电路,就完成了一个频率、幅值、零点均可调的多功能波形发生器的设计。这样的机器体积小,价格廉价,耗电少,频率适中,便于携带。1.1.2选题目的及意义波形发生器是一种经常使用的设备,由纯粹物理器件构成的传统的设计方法存在许多弊端,如:体积较大、重量较沉、移动不够方便、信号失真较大、波形种类过于单一、波形形状调节过于死板,无法满足用户对精度、便携性、稳定性等的要求,研究设计出一种具有频率稳定、准确、波形质量好、输出频率X围宽、便携性好等特点的波形发生器具有较好的市场前景,以满足军事和民用领域对信号源的要求。虽然我国对于波形发生器的研制起步较晚,但是通过几年的努力也取得了一些可喜的成果。国产SG1060数字合成信号发生器可以双通道同时输出高分辨率、高精度、高可靠性的各种波形,其频率覆盖X围为1μHz-60MHz。国产S1000数字合成扫频信号发生器的频率X围为1MHz-1024MHz,可应用于超高频领域。但是总的来说,这些设计产品价格昂贵主要应用于航空、军事等高端领域,在日常民用方面并没有形成自己真正的产业。目前国内成熟的产品多位一些PC仪器插卡,独立仪器少之又少。并且我国现今的任意波形发生器的种类和性能与国外相比仍有很大差距,因此对此内产品的研究设计仍具有重要意义。本次设计的主要目标是学习和运用单片机的C语言和开发环境,通过现有专业知识,实现利用单片机STC89C52控制外围电路及其参数实现正弦波,方波,三角波,锯齿波,脉冲波这五种常见波形的发生,并且可以接收外接拨码键盘开关量的输入而在一定X围内改变波形的频率和幅度。在无标准函数发生仪器时,本设计可以作为简单的波形发生器使用。本次设计准备在本钱交低廉的前提下完成,主要是用单片机STC89C52、LED,性能指数都不是很高,所以对此信号源的根本要求是能发生几种常见的波形,正弦波,方波,三角波,锯齿波,并且能够在定的X围内改变频率。通过该课题的设计,掌握以STC89C52为核心的单片机系统的软硬件开发过程和根本信号的产生原理、测量及误差分析方法,同时掌握波形发生器系统的软硬件设计流程;了解并掌握并行D/A转换器DAC0832的原理及其外围电路的设计方法;掌握利用单片机产生常用波形的方法,进一步熟悉单片机人机接口的设计方法;培养我们综合运用所学的根本知识、根本理论和根本技能的能力,学习解决一般工程技术和有关专业问题的能力。1.2设计根本要求本设计采用89C52及其外围扩展系统,软件方面主要是应用C语言设计程序。系统以89C52单片机为核心,配置相应的外设及接口电路,该系统的软件可运行于KeilC的集成开发环境下,硬件电路原理图设计完成后,能成功完成软件调试。同时,本系统中任何一局部电路模块均可移植于实用开发系统的设计中,例如温度控制系统、电子时钟万年历等实用的电路系统中,电路系统设计具有很强的实用性。功能要求:波形发生器的频率,幅值,波形可调;显示当前波形的频率、幅值;对系统进展测试和结果分析;撰写论文;基于单片机以及外围的数码管显示电路,电源管理以及参数调节等电路实现输出波形的显示。2波形发生器系统方案设计与论证2.1总体设计方案的比拟波形发生器的设计方案可用多种方案来完成。在设计前对各种方案进展了比拟:方案一:用差分放大电路实现三角波到正弦波以及集成运放组成的电路实现波形发生器。波形变换的原理是利用差分放大器的传输特性曲线的非线性,传输特性曲线越对称,线性区域越窄越好;三角波的幅度应正好使晶体接近饱和区域或者截至区域。方案二:利用专用直接数字合成DDS芯片实现函数波形发生器。这种波形发生器能产生任意波形并到达很高频率,但本钱较高。方案三:利用单片机STC89C52和发光二极管共同实现正弦波,方波,三角波,锯齿波这四种常见波形的发生,并且可以接收外接拨码键盘开关量的输入而在一定X围实现频率和幅度的调节[3]。方案四:采用分立元件构成非稳态的多谐振振荡器,根据具体需要参加积分电路等构成波形发生器。但这种波形发生器输出频率X围窄,而且电路参数设定较繁琐,输出的波形易受外界环境影响,不稳定,对电路硬件要求很高,不易实现。可行性分析:上面四种方案中,方案一中需要人为地搭建波形变换的电路。方案二本钱较高。方案三利用单片机构成的应用系统有较大的可靠性。系统扩展、配置灵活。容易构成各种规模的应用系统,且应用系统有较高的软、硬件利用系数。单片机具有可编程性,硬件的功能描述可完全在软件上实现,而且设计时间短,本钱低,可靠性高。方案四的电路参数设定较繁琐,输出的波形易受外界环境影响,不稳定。综合以上四种方案,从性能和制作本钱考虑,本设计采用方案三,即采用单片机通过调节拨码键盘开关量可产生可调频率的波形。2.2子系统模块方案设计该波形发生器有以下几局部组成:1)单片机控制模块,2)频率调整模块,3)按键模块,4)显示模块,5)D/A转换模块,6)RS232串行通信电路及电源供电电路模块六局部组成。2.2.1控制模块方案设计方案一:用单片STC89C52作为系统的主控核心。单片机具有体积小,使用灵活的,易于人机对话和良好的数据处理,有较强的指令寻址和运算功能等优点。且单片机功耗低,价格低廉的优点。方案二:C89C52F005单片机是完全集成的混合信号系统级芯片,具有与89C52兼容的微控制器内核,与MCS-51指令集完全兼容。除了具有标准8052的数字外设部件,片内还集成了数据采集和控制系统中常用的模拟部件和其他数字外设及功能部件,而且执行速度快。但其价格较贵。方案三:用FPGA等可编程器件作为控制模块。FPGA可以实现各种复杂的逻辑功能,密度高,速度快,稳定性好等许多有点。FPGA在掉电后会丧失数据上电后须进展一次配置,因此FPGA在应用中需要配置电路和一定的程序。并且FPGA作为数字逻辑器件,竞争、冒险是数字逻辑组合电路中较为突出的问题,因此在使用时必须注意毛刺的产生、消除及抗干扰性。在此系统中,采用单片机作为控制器比采用FPGA实现更简便。从电路构造和本钱角度及综合性价比的考虑,确定选择方案一。2.2.2频率调整模块方案设计方案一:通过对单片机的定时器的编程来实现调频。将一个周期的波形数据离散成256个采样点数据,并启用定时器延时。当8位累加器A的内容到达最大的计数值255时在自增一次就变成最小值零,然后可以继续增加。如此,周而复始就可以得到要求的波形输出。当然通过对定时器初值的设定可以改变波形的频率。例如,单片机的晶振频率fOSC=12MHz,定时器采用方式1,假设产生周期为T的波形,定时器初值的计算方法如下:单片机机械周期Tmec为:(2.1)定时器初值TC为:(2.2)定时器初值高位TCH为:(2.3)定时器初值低位TCL为:(2.4)当要获得1Hz的波形时,按照上述方法可以算出:TC=61630,TCH=240,TCL=190但是此种方案最大计数值为65536,最小计数值为1,所以决定了此种方法所能得到的波形的上限频率fMAX为:(2.5)下限频率fMIN为:(2.6)需要说明的是,以上上限下限频率是对于将一周期波形离散成256个数据点的正弦波和锯齿波而言的。方案二:为了提高单片机的资源利用率和运行的效率,按键局部通过8位拨码开关来实现8位数字量通过74ls165的并行输入串行输出给单片机的方案,这样设计的目的优点是节省单片机的I/O口资源,电路构造简单易行。我们采用74ls165实现频率的改变,使频率能够实时随着拨码按键开关量的输入而改变,电路构造简单,实时性较强。[4]综合以上二种方案,方案一是靠软件来实现调频,综合可以看出此种方案的有效频段为0.06Hz到1953Hz,在此X围内输出波形频率连续可调。从电路构造、实时性的角度考虑,选择方案一。2.2.3键盘模块方案设计方案一:采用独立按键,按键的数目少,但是它拥有构造简单,方便操作,执行效率高等优势。方案二:采用矩阵键盘,它以较少得I/O口实现了按键的功能。经综合考虑,由于节省I/O资源,我们采用矩阵键盘。2.2.4显示模块方案设计方案一:用传统的LED七段数码管位选的方式进展波形频率和幅度的显示。动态LED扫描的方法就是控制LED和端轮流有效,使每个LED轮流点亮有效。方案二:采用LCD1602液晶显示,1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有假设干个5×7或者5×11等点阵字符位组成,1602采用并口传输,速度比12864快。每个点阵字符位都可以显示一个字符。1602内部集成有显示芯片,可以识别英文字母、阿拉伯数字和日语。此液晶显示具有微功耗、体积小、显示内容丰富、超薄轻巧等优点,常用在袖珍式仪表和低功耗应用系统中。[5]方案三:LCD1286是图形点阵,是显示图形和汉字,当然也是可以显示字母和阿拉伯数字了程序的编写上1602复杂的多,由于本次设计只需显示波形的频率和幅度,不需要显示波形图,从电路的简单程度和本钱的角度,综合考虑不选择。方案一占用较多的I/O口资源,需要添加额外的I/O扩展电路和译码电路,但是此方案硬件价格低廉,编程起点低。方案二运用液晶显示可以显示点阵字母和数字信息,速度快,功耗低,体积小,但是硬件价格较贵,且编程相对于LED较难。方案三的液晶可以显示汉字和图形,这些功能在本次设计中用不到。综合考虑,程控波形发生器设计并不需要显示复杂的信息,所以选择方案一。硬件波形发生器设计不准备参加显示模块,主要是因为此种方案适用于生成特定波形的系统中,使用人员并不需要经常对波形的频率和幅值进展更改,所以显示模块在此种方案中显得冗余。2.2.5D/A模块显示方针单片机输出的是数字信号,,必须通过D/A转换后才能模拟信号。方案一:采用D/A转换器AD7543。AD7543是一种串行的D/A转换器,与单片机之间的连线少,布线方便,而且又是12位的D/A转换器,精度高。但串行数据传输速度慢,当频率较高时,必须减少每周期输出的点数,这将会导致阶梯现象更加明显,因此,此方案不宜使用。方案二:采用DAC0832。这是8位的并行D/A转换器,转换速度快。综合以上二种方案,本系统选择了方案二。DAC0832芯片介绍美国国家半导体公司生产的DAC0832是一种具有8位分辨率、双通道输出的D/A转换芯片。由于它体积小,兼容性,性价比高而深受单片机爱好者及企业欢送,其目前已经有很高的普及率[6]。1)DAC0832具有以下特点8位分辨率;双通道A/D转换;输入输出电平与TTL/CMOS相兼容;5V电源供电时输入电压在0~5V之间;工作频率为250KHZ,转换时间为32μS;一般功耗仅为15mW;8P、14P—DIP〔双列直插〕、PLCC多种封装;商用级芯片温宽为0°Cto+70°C,工业级芯片温宽为40°Cto+85°C。2)芯片接口说明在电路原理图设计时,DAC0832的D0-D78条数据线与单片机的P0口相连接,DAC0832的、脚与P2.7相连接、、与单片机的相连接,IOUT1与LM324的2脚相连接,3脚数字地、10脚模拟地分别与电源地相连接。ILE脚与5V电源相连接。3)单片机对DAC0832的控制原理当DAC0832未工作时其输入端应为高电平,此时芯片禁用。当要进展A/D转换时,须先将使能端置于低电平并且保持低电平直到转换完全完毕。当DAC0832工作时其输入端应为低电平,直接将单片机P0口的8位数字量转换为模拟电压量的经IOUT1引脚输出,将示波器的正极探针与IOUT1引脚端相连接,就可以看到波形的产生。2.3系统总体框图本系统是以单片机STC89C52、频率调整模块、按键模块、以及LED显示模块、I/O显示,RS232串行通信及USB供电等模块共同实现正弦波,方波,三角波,锯齿波,脉冲波这五种频率、幅度可调的常见波形的功能。系统原理框图如图2.1。键盘/按键键盘/按键键盘晶振电源晶振电源单片机LED显示/发光二极管显示图2.1系统原理框图由图2.2DAC0832转换局部电路图可知,通过代入以下数据对波形输出与频率、幅值调节局部进展具体的理论分析计算。利用STC89C52单片机、DAC0832、8位拨码开关设计一个能产生正弦波、方波、三角波、锯齿波和脉冲波的频率、幅值、波形可调的波形发生器。其中8位拨码开关是用来产生8位二进制数作为延时常数,DAC0832是用来将8位数字量转化成模拟量输出。数字量输入的X围为0-255之间,对应的模拟量输出的X围在Vref-到Vref+之间。根据这样我们可以利用单片机的并行口输出的数字量,产生常用的波形。图2.2DAC0832转换局部电路图1〕利用单片机产生方波、正弦波、三角波和锯齿波等信号波形,信号的频率和幅度可变。2〕将一个周期的信号别离成256个点〔按X轴等分〕,每两点之间的时间间隔为T,用单片机的定时器产生,其表示式为:T=T/256。如果单片机的晶振为12MHz,采用定时器方式0,那么定时器的初值为:X=213—T/Tmec(2.7)定时时间常数为:TL=〔8192—T〕/MOD256(2.8)TH=〔8192T〕/256(2.9)MOD256表示除256取余数。3〕正弦波的模拟信号是D/A转换器的模拟量输出,其计算公式为:Y=〔A/2sint〕+A/2(其中A=VREF)(2.10)t=NT(N=1~256)(2.11)那么对应着存放在计算机里的这一点的数据为:(2.12)4〕一个周期被别离成256个点,对应的四种波形的256个数据存放在以TAB1--TAB4为起始地址的存储器中。由(2.3.4)式可知,当DAC0832在0~255之间变化时,输出电压可在0V~5V+之间变化,即输出信号的峰峰值可由滑动变阻器RV2控制。2.4波形产生相关理论DAC0832是8位的D/A转换器件,其工作电压是0—5V,当输入00H数字量的时候,输出为0V电压;当输入07FH数字量的时候,输出为2.5V电压;当输入0FFH数字量的时候,输出为5V电压。单片机的I/O输出均为+5V的TTL电平,因此产生的正弦波〔以正弦波为例〕幅值为+2.5V。将一个周期内的正弦波形等分为256份,对应256个数字量,利用查数据表的方式来实现波形的产生。第1点的角度为0°,对应的正弦值为2.5sin0°;第2点的角度为360°/256,对应的正弦值为2.5sin360°/256〕,如此计算下去,将这些单极性方式下的数字量转换为正弦值模拟量输出。而每次送到DAC0832的八位数字量是根据查正弦波形数据表格而得到。2.5MCU概要2.5.1单片机开展历程单片微型计算机简称为单片机,它是把微型计算机的各个功能部件,既中央处理器CPU、随机存储器RAM、定时/计数器、只读存储器ROM、I/O接口电路和必要的外设集成在一块芯片上,构成一个既小巧又完善的微型计算机。随着科学技术的开展,单片机芯片内扩展了各个控制功能,现今的单片机集成了许多面向测控对象的接口电路。自从1974年美国Fairchild公司研制出第一台8位单片机F8以来,单片机就以惊人的速度在开展,各公司竞相推出自己的产品,各种新、高性能单片机不断涌现。迄今为止,单片机的开展主要分为以下4个阶段。第一阶段:初级单片机阶段。以MCS-48为代表的单片机在片内集成了8位CPU、并行I/O口、8位定时/计数器、RAM等,无串行I/O口,寻址X围小于4KB。第二阶段:高性能8位机阶段。这个阶段的单片机均带有串行I/O口,具有多级中断处理系统,定时/计数器为16位,片内RAM和ROM容量相对增大,且寻址X围可达64KB。第三阶段:8位单片机稳固、完善及16位单片机推出阶段。在此阶段,一方面不断完善高档8位机,改善其构造以满足不同用户的需要;另一方面开展16位单片机及专用单片机。第四阶段:单片机的全面开展阶段。32位单片机具有极高的集成度,CPU可与其他微控制器兼容,指令系统进一步优化,运算速度可动态改变,具有强大的中断控制系统、同步/异步通信控制系统。单片机的开展趋势将是大容量、高性能化、低功耗化、宽电压、外围电路内装化等。2.5.2单片机的特点单片机以其卓越的性能,得到了广泛的应用,以深入到各个领域。单片机应用在检测、控制领域中,具有以下的特点。1〕单片机具有体积小、控制功能强、本钱低等特点、可非常方便的嵌入到各个应用场合,组装各种智能式控制设备和仪器,做到机、电、仪一体化。2〕可靠性好,适用温度X围宽,且程序指令、表格数据等可固化在ROM中,不易被破坏。3〕易于扩展,很容易构成各种规模的应用系统。4〕低电压、低功耗;单片机广泛应用于便携式产品和家电消费类产品。对此类产品,低电压、低功耗尤为重要。目前,0.8V供电的单片机问世,一粒纽扣电池就可使单片机长期运行。5〕可以方便的实现多机和分布式控制,从而使整个控制系统的效率和可靠性大为提高。2.5.3单片机的应用领域1〕在智能仪器仪表中的应用单片机应用于各种仪器仪表中,如精细数字温度计、智能电度表、智能流速仪、微机多功能pH测试仪等。2〕在工业测控中的应用 用单片机可以构成各种工业控制系统、自适应控制系统、数据采集系统等。在军事工业中,单片机可用于导弹控制、鱼雷制导控制、智能武器装置及航天导航系统等。3〕在计算机网络与通信技术中的应用例如,MCS系列单片机控制的串行自动呼叫应答系统、列车无线通信系统、无线遥控系统等。4〕在日常生活及家电中的应用目前,各种家用电器已普遍采用单片机控制取代传统的控制电路,如洗衣机、电冰箱、空调、微波炉、电饭煲及其他视频音像设备的控制器,各类信号指示、手机通信、电子玩具、智能楼宇及防盗系统等。3硬件实现及模块电路设计3.1单片机最小系统的设计STC89C52是片内有ROM/EPROM的单片机,因此,这种芯片构成的最小系统简单﹑可靠。用STC89C52单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,由于集成度的限制,最小应用系统只能用作一些小型的控制单元,STC89C52单片机最小系统如图3.1所示。其应用特点如下[7]:1〕可以给用户提供大量I/O口线。2〕内部存储器容量有限。3〕应用系统开发具有特殊性。4〕8K字节程序储存空间。5〕512字节数据储存空间。6〕可直接使用串口下载。图3.1STC89C52单片机最小系统对图3.1说明如下:1〕单片机晶振电路:单片机外围的晶振电路是通过单片机的第18〔XTAL1〕引脚,19〔XTAL2〕引脚接入,XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。XTAL2:振荡器反相放大器的输出端。对于本设计的电容C用30pF,晶振选用11.0592MHz。晶振电路解法如图3.1所示,一端接在XTAL1引脚上,另一端接在XTAL2引脚上。2〕单片机的复位引脚RST:复位输入。晶振工作时,RST脚将持续2个机器周期高电平将使单片机复位。看门狗计时完成后,RST脚输出2个晶振周期的高电平。特殊存放器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。为了防止程序执行过程中失步或运行紊乱,此处我们采用了上电复位电路[8]。3.2D/A转换模块由单片机运算处理的结果〔数字量〕往往也需要转换为模拟量,以便控制对象,这一过程即为D/A转换。D/A转换器输入的是数字量,经转换器输出的是模拟量。转换过程是先将MCS-52送到D/A转换器的各位二进制数,按其权的大小转换为相应的模拟分量,然后再以叠法把各模拟分量相加,其和就是D/A转换的结果。D/A转换器有两种输出形式,一种是电压输出形式,即给D/A转换器输入的是数字量,而输出为电压。另一种是电流输出形式,即输出为电流。在实际应用中,对于电流输出的D/A转换器,如需要模拟电压输出,可在其输出端加一个由运算放大器构成的I-V转换电路,将电流输出转换为电压输出。由于D/A转换时需要一定时间的,在这段时间内D/A转换器输入端的数字量应保持稳定,为此应当在D/A转换器的数字输入端前面设置锁存器,以提供数据锁存功能。根据转换器芯片内是否带有锁存器,可以把DAC分为内部无锁存器的和内部有锁存器的两类。D/A转换器的技术指标主要有分辨率、转换精度、转换误差、线性度,下面做详细的介绍。3.2.1分辨率分辨率用于表征D/A转换器对输入微小量变化的敏感程度,是指D/A转换器能分辨的最小输出模拟增量,是输入数字量发生单位数字变化时,即LSB位发生一次时,所对应输出模拟量的变化量。对于n位D/A转换器,其分辨率Δ与数字量输出的位数n的关系如下:Δ=模拟输出的满量程值/2ˆn在实际应用中,一般把D/A转换器的分辨率采用输入数字量的位数或最大输入码的个数表示。例如8位二进制D/A转换器,其分辨率为8位。位数越多,D/A转换器的分辨率越高。3.2.2转换精度转换器的精度是指输出模拟量电压的实际值与理想值之差,即最大静态转换误差。这误差是由于参考电压偏离标准值、运算放大器的零点漂移、模拟开关的压降以及电阻阻值的偏差等原因引起的。精度和分辨率是两个不同的概念。精度是指转换后所得到的实际值对于理想值的误差或接近程度,而分辨率那么是指能够对转换结果发生影响的最小输入量。分辨率很高的D/A转换器不一定具有很高的精度,分辨率不高的D/A转换器那么肯定不会具有很高的精度。影响转换精度的主要误差因素有失调误差、增益误差、非线性误差和微分非线性误差等。3.2.3转换误差转换误差是用以说明D/A转换器实际上能到达的转换精度。转换误差可用输出电压满度值的百分数表示,也可用LSB的倍数表示。例如,转换误差为1/2LSB,是表示输出模拟电压的绝对误差等于当输入数字量的LSB为1,其余各位均为0时输出模拟电压的1/2。3.2.4线性度通常用非线性误差的大小表示D/A转换器的线性度,并且把理想的输入/输出的偏差与满刻度输出之比的百分数,定义为非线性误差。3.3频率调整模块通过对单片机的定时器的编程来实现调频。定时器/计数器的工作方式如下:定时器/计数器0和定时器/计数器1都可以在方式0、方式1、方式2工作,而方式3只有前者才能工作。1〕方式0当TMOD中M1、M0都为0时,T/C工作在方式0。方式0为13位的T/C,由TH提供高8位,TL提供低5位,注意TL的高3位是无效的,计数溢出值为2的13次方=8192,启动该计数器需要设置好计数初值。当C/--T该位为0时,T/C为定时器,振荡源12分频的信号作为计数脉冲;当C/--T该位为1时,T/C为计数器,对外部脉冲输入端的T0或T1引脚进展脉冲计数。计数脉冲能否加到计数器上,受启动信号的控制。当GATE=0时,只要TR=1,那么T/C启动;当GATE=1时,启动信号受到TR与INT的双重控制。T/C启动后立即加1计数,当13位计数满时,TH向高位进位。此进位将中断溢出标志TF置位即TF=1,产生中断请求,表示定时时间或计数次数到达。假设T/C开中断(ET=1)且CPU开中断(EA=1),那么当CPU自动转向中断效劳函数时,TF自动清零,不需要人工软件清零。2〕方式1当TMOD中M1、M0为0、1时,T/C工作在方式1。方式1与方式0根本一样,唯一不同的是方式0是13位计数方式,方式1是16位计数方式,TH和TL都同时提供8位(方式0时TL只提供低5位,高3位无效),计数溢出值为2的16次方=65536。3〕方式2当TMOD中M1、M0为1、0时,T/C工作在方式2。方式2是8位的可自动重装载的T/C,满计数值为2的8次方=256。在方式0和方式1中,当计数满后,假设要进展下一次定时/计数,必须通过软件向TH和TL重新装载预置计数值。方式2中TH和TL被当作两个8位计数器。技术过程中,TH存放8位初值并保持不变,由TL进展8位计数。计数溢出时,除产生溢出中断请求外,还自动将TH中初值重装到TL,即重装载。除此之外,方式2也同方式0。4〕方式3方式3只适合于T/C0。当T/C0工作在方式3时,TH0和TL0成为两个独立的计数器。这时,TL0可作定时器/计数器,占用T/C0在TCON和TMOD存放器中的控制位和标志位;而TH0只能作定时器使用,占用T/C1的资源TR1和TF1。在这种情况下,T/C1仍可用于方式0/1/2,当不能够使用中断方式。只有将T/C1用作串行口的波特率方式器时,T/C0才工作在方式3,以便增加一个定时器。5〕T/C2的工作方式定时器/计数器2包含一个16位重载方式,T/C2在计数溢出后,自动在瞬间重装载(像8位自动重载方式2)。自动重载可由外部引脚T2EX的负跳变开场,这样外部引脚用于产生和其他硬件计数器的同步信号。T/C2可以看作看门狗或定时溢出的定时器。T/C2还有捕获方式。把瞬时计数值传到另外的CPU可读取的存放器对(RCAP2H、RCAP2L)。这样,在读的过程中,两个字节的计数值无波动的危险。对于快速变化的计数,比方计数值在读取高字节时是16FF时,到读取低字节时已变到1700,结果却得到1600。假设16FF瞬间捕获到另外的存放器,那么可以在CPU空闲的时候取到16和FF。3.4按键显示模块键盘是由假设干按键组成的开关矩阵,他是最简单的单片机输入设备,操作人员可以通过键盘输入数据或指令,实现简单的人机通信。通常键盘的开关为机械弹性开关,利用机械触点的合、断特性。一个电信号通过机械触点的断开、闭合过程,其行线电压输出波形,按键的闭合与否取决于行线输出电压是高电平还是低电平。如果是高电平那么表示键断开,如果是低电平说明是键闭合。我们就可以通过对行线点平的检测,来判断是否有键发生闭合。在这个过程中为了保证按键每按下一次,仅有一次处理,所以必须消除抖动的影响。一般我们可以采取两种方式:硬件去抖、软件去抖。其中硬件去抖一般采用双稳态电路,适用于按键较少的情况。当按键较多的时候,我们一般采用软件去抖,就是在一次按键按下的情况下,执行一段延时10ms的子程序之后,再进展检测,如果检测结果为按下,CPU才确认这个键真的是被按下了。本次我们采用的是矩阵式键盘。键盘的原理图如图3.2所示。图3.2键盘模块电路图3.5LED显示模块LED即发光二极管,它是由某些特殊的半导体材料制作成的PN结,它由假设干个发光二极管按照一定的规律排列而成。当某个发光二极管导通时,相应的一个点或者是一笔画被点亮,控制不同的二极管导通就可以得到不同的字形。发光二极管阴极连接在一起的就叫共阴极显示器,发光二极管阳极连接在一起的就叫共阳极显示器。由于参杂浓度很高,当流成正比,故电路须串联适当的限流电阻[8]。LED很适于脉冲工作状态,在平均电流一样的情况下,脉冲工作比直流工作状态产生的亮度增强20%左右。LED显示器有单个、七段和点阵式等几种类型,本次设计采用七段式LED数码管。图3.3为LED数码管的显示电路。图3.3LED数码管的显示电路数码管常用的显示方式有两种:静态显示方式和动态显示方式。数码管工作于静态显示方式时,各位的共阴极〔或共阳极〕连接在一起并接地〔或+5V〕;每位的段选线分别与一个8位的锁存器输出相连。所以称为静态显示;数码管工作于动态显示方式时,通常将所有的段选线并联在一起,由一个8位I/O口控制,形成段选线的多路复用。而各位的公共极分别由相应的I/O线控制,实现各位的分时选通。LED显示器的发光管分别为a、b、c、d、e、f、g、dp,通过八个发光段的不同组合。控制不同组合的二极管导通,就能显示出各种字符。LED显示器有共阳极和共阴极两种。本次设中采用共阳极,共阳极LED显示器的发光二极管的阳极连接在一起,通常此公共阳极接高电平,当某个发光二极管的阴极接低电平时,发光二极管被点亮,相应的段被显示。正向偏置时,会产生大量的电子—空穴,把多余的能释放变为光能。LED显示器具有工作电压低、体积小、寿命长〔约十万小时〕、响应速度快〔小于1μS〕,颜色丰富等特点,是智能仪器最常用的显示器。LED的正向工作压降一般在1.2V-2.6V,发光工作电流在5mA-20mA,发光强度根本上与正向电流成正比,故电路须串联适当的限流电阻。3.6RS232串行通信电路及电源供电电路图3.4“D〞型9针插头引脚定义3.6.1RS232串行通信电路由于单片机的输入输出是TTL电平,而PC机配置的都是RS-232标准串行接口,为9针“D〞型连接器〔插座〕,如图3.4所示。由于两者的电平不匹配,必须对单片机输出的TTL电平转换为RS-232电平,即由12V转换为5V[9]。RS232应用广泛、价格廉价,编程容易并且可以比其他接口使用更长的导线。RS232将在监视和控制系统这样的应用中得到普遍的应用。它的缺点是接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。并且,传输距离有限,最大传输距离标准值为50英尺,实际上也只能用在15米左右。RS232串行通信电路原理图如图3.5所示。图3.5RS232串行通信电路原理图3.6.2电源供电电路电源是最根本的局部也是极其重要的局部,因为对于任何的电路来说,都离不开电源局部,当然单片机也不例外,其中将近一半的故障或制作失败都和电源有关,电源局部的正常运行才能保障其他模块的顺利进展。电源原理图如图3.6所示。由于不是本次设计的核心局部,故在此不作详述。3.6电源局部原理图4单片机开发系统4.1系统软件编程语言方案设计52单片机系列的编程语言常用的有两种,一种是汇编语言,一种是C语言。汇编语言,是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。汇编语言直接同计算机的底层软件甚至硬件进展交互,它具有如下一些优点:1)能够直接访问与硬件相关的存储器或I/O端口;2)能够不受编译器的限制,对生成的二进制代码进展完全的控制;3)能够对关键代码进展更准确的控制,防止因线程共同访问或者硬件设备共享引起的死锁;4)能够根据特定的应用对代码做最正确的优化,提高运行速度;5)能够最大限度地发挥硬件的功能。同时还应该认识到,汇编语言是一种层次非常低的语言,它仅仅高于直接手工编写二进制的机器指令码,因此不可防止地存在一些缺点:1)编写的代码非常难懂,不好维护;2)很容易产生bug,难于调试;3)只能针对特定的体系构造和处理器进展优化;4)开发效率很低,时间长且单调。C语言,是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用X围广泛,不仅仅是在软件开发上,而且各类科研都需要用到C语言,具体应用比方单片机以及嵌入式系统开发。它具有如下优点:1)简洁紧凑、灵活方便;2)运算符丰富;3)数据构造丰富;4)C是构造式语言;5)C语法限制不太严格,程序设计自由度大;6)C语言允许直接访问物理地址,可以直接对硬件进展操作;7)生成目标代码质量高,程序执行效率高;8)C语言适用X围大,可移植性好。汇编语言的机器代码生成效率很高但可读性却并不强,复杂一点的程序就更是难读懂,而C语言在大多数情况下其机器代码生成效率和汇编语言相当,但可读性和可移植性却远远超过汇编语言,而且C语言还可以嵌入汇编来解决高时效性的代码编写问题。对于开发周期来说,中大型的软件编写用C语言的开发周期通常要小于汇编语言很多。综合以上C语言的优点,函数发生器系统的软件局部由C语言设计编程实现。4.2系统整体软件设计思想4.2.1Keil编译器简介KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、构造性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能表达高级语言的优势[10]。4.2.2KeilC51单片机软件开发系统的整体构造C51工具包的整体构造,uVision与Ishell分别是C51forWindows和forDos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及A51编译器编译生成目标文件(OBJ)。目标文件可由LIB51创立生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进展源代码级调试,也可由仿真器使用直接对目标板进展调试,也可以直接写入程序存贮器如EPROM中。KEILC51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保存了汇编代码高效,快速的特点。C51编译器的功能不断增强,使你可以更加贴近CPU本身,及其它的衍生产品。C51已被完全集成到uVision2的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,工程管理器,调试器。uVision4IDE可为它们提供单一而灵活的开发环境。4.2.3uVision4集成开发环境1〕工程管理工程(project)是由源文件、开发工具选项以及编程说明三局部组成的。一个单一的uVision4工程能够产生一个或多个目标程序。产生目标程序的源文件构成“组〞。开发工具选项可以对应目标,组或单个文件。uVision4包含一个器件数据库(devicedatabase),可以自动设置汇编器、编译器、连接定位器及调试器选项,来满足用户充分利用特定微控制器的要求。此数据库包含:片上存储器和外围设备的信息,扩展数据指针(extradatapointer)或者加速器(mathaccelerator)的特性。uVision4可以为片外存储器产生必要的连接选项:确定起始地址和规模。2〕源代码编辑器uVision4编辑器包含了所有用户熟悉的特性。彩色语法显像和文件辩识都对C源代码进展和优化。可以在编辑器内调试程序,它能提供一种自然的调试环境,使你更快速地检查和修改程序[10]。3〕断点uVision4允许用户在编辑时设置程序断点〔甚至在源代码未经编译和汇编之前〕。用户启动V2调试器之后,断点即被激活。断点可设置为条件表达式,变量或存储器访问,断点被触发后,调试器命令或调试功能即可执行。在属性框(attributescolumn)中可以快速浏览断点设置情况和源程序行的位置。代码覆盖率信息可以让你区分程序中已执行和未执行的局部。4〕调试函数语言uVision4中,你可以编写或使用类似C的数语言进展调试。1〕内部函数:如printf,memset,rand及其它功能的函数。2〕信号函数:模拟产生CPU的模拟信号和脉冲信号(simulateanaloganddigitalinputstoCPU)。3〕用户函数:扩展指令X围,合并重复动作。4.3主程序流程图图4.1主程序流程图4.4软件仿真在确定编程思路以后将各局部的程序及各子程序编好,使用keil进展编译,根据提示的错误对程序进展修改。除了语法过失和逻辑过失外,当确认程序没问题时,通过直接加载到protues软件电路中进展仿真[11]。当按键1拨下时,波形为锯齿波,同时指示灯1发光。仿真图如图4.2所示当按键2拨下时,波形为三角波,同时指示灯2发光。仿真图如图4.3所示。当按键3按下时,波形为正弦波,同时指示灯3发光。仿真图如图4.4所示。当按键4按下时,波形为方波,同时指示灯4发光。仿真图如图4.5所示。图4.2锯齿波仿真图图4.3三角波仿真图图4.4正弦波仿真图图4.5方波仿真图在对系统进展波形仿真时可以在示波器上观察到锯齿波、三角波、正弦波和方波的波形。其中锯齿波、三角波以及正弦波的输出误差较大,方波波形较为理想。这一方面与电路设置的参数有关,另一方面也与使用的仿真软件有关。对于上述问题的解决方法是:改变仿真电路的参数或着换用版本较高的仿真软件。当然一般产生这种情况的原因多由于电路的参数设计不合理所制。当仿真时,由于存在一定的系统误差,波形效果不是很好。5系统软硬件调试与数据处理5.1硬件PCB制作、安装、测试与调试5.1.1PCB设计、制作、安装1〕电路幅员的打印。用转印纸将绘制好的电路板打印出来,一般打印两X电路幅员,即一X纸上打印两X电路幅员[12]。2〕覆铜板的裁剪。将覆铜板裁成电路板的大小,不要过大,以节约材料。覆铜板的预处理。用细砂纸把覆铜板外表氧化层打磨掉,以保证在转印电路板时,热转印纸上的碳粉能结实的印在覆铜板上,打磨好板面光亮,没有明显污渍。3〕电路板的转印。将打印好的电路板裁剪成适宜大小,把印有电路幅员的一面贴在覆铜板上,对齐好后把覆铜板放入热转印机,放入时一定要保证转印纸没有错位。一般来说经过3-5次转印,电路板就能很结实的转印在覆铜板上。热转印机事先就已经预热温度至160-200摄氏度〔一般为180摄氏度〕。4〕线路板的腐蚀过程。先检查一下电路幅员是否转印完整,假设有少数没有转印好的地方可以用黑色油性笔修补。然后进展电路板腐蚀,等电路板上暴露的铜膜完全被腐蚀掉时,在腐蚀液中将线路板取出清洗干净,这样就完成了电路板的腐蚀。腐蚀液的成分为浓盐酸、浓双氧水、水,比例为1:2:3。5〕电路板的钻孔过程。电路板上是要插入电子元件的,所以就要对电路板钻孔了。依据电子元件管脚的粗细选择不同的钻针,在使用钻机钻孔时,电路板一定要固定,钻机速度不能开的过慢,请仔细看操作人员操作规X前方能操作[13]。6〕预处理电路板。钻孔完后,用细砂纸打磨掉覆在电路板上的墨粉,将电路板用清水清洗干净。水干后,在有线路的一面涂上松香水,为加快松香凝固,我们用热风机加热线路板,松香只需2-3分钟就能凝固。7〕电子元件的焊接。焊接完板上的电子元件,通电进展测试。5.1.2电路板调试与检测平安调试与检测过程中,要接触各种电路和仪器设备,特别是各种电源及高压电路,高压大容量电容器等,为保护检测人员平安,防止测试设备和检测线路的损坏,除严格遵守一般平安规程外,还必须注意调试和检测工作中制定的平安措施[14]。5.1.3供电平安大局部故障检测过程中都必须加电,所以调试检测过的设备仪器,最终都要加电检验。抓住供电平安就抓住了平安的关键。1〕调试检测场所应有漏电变化开关和过载保护装置,电源开关,电源线及插头插座必须符合平安用电要求,任何带电导体不得裸露。检测场所的总电源开关,应放在明显且易于操作的位置,并设置相应的指示灯。2〕注意交流调压器的接法。检测中往往使用交流调压器进展加载和调整试验。由于普通调压器输入与输出端不隔离,必须正确区分相线与零线的接法,如图一中使用二线插头座,容易接错线,使用三线插头座那么不会接错。3〕在调试检测场所最好装备隔离变压器,一方面可以保证检测人员操作平安,另一方面防止检测设备故障与电网之间相互影响。隔离变压器之后,再接调压器,那么无论如何接线均可保证平安。5.2PCB电路板的电气规那么检查与调试及电路功能测试在焊接完后,请认真对照在Proteus仿真软件中的电路原理图、安装图检查电路板上有无漏焊、错焊、短路、断路等错误现象,确认无误后才能通电。简单系统硬件的调试通常采用载入简单的测试程序并运行,使用数字表或示波器观察;对有些硬件例如显示器、键盘等可直接编入程序观察程序执行状态。5.2.1PCB电路板的电气规那么检查与调试1〕LED的的电源线未接,导致不能显示屏不亮。2〕控制电源开关的按键由于接在了支路中,未接到干路导致无法控制整个系统电路的供电。3〕RS-232标准串行通信口为9针D型连接器〔插座〕,在Proteus7.5中进展PCB电路原理图设计的时候误将1脚接地〔本来是5脚接地〕。4〕在制作PCB幅员的过程中,进展覆铜时误将DSW8位拨码开关的9脚未接单片机的RXD引脚〔P3.0〕,导致拨码开关的8位数字量未能通过74LS165将并行输入串行的数据无法送到单片机进展处理,使得LCD上显示“000HZ〞因此,无法实现对波形频率的实时改变。5.3测试方法及数据的记录和统计1〕测试的方法在测试本系统时采用的是将设置的数值与示波器所测试值进展比照,进而可以知道本系统的性能。2〕硬件电路完成后,通过按键,实现其按键所对应的功能,对数据进展整理,用数字示波器显示的频率和振幅作为真实值(A0),波形发生器LED显示的频率和振幅作为测量值(Ax),对两者进展观察、记录、统计、分析,我们发现,误差总是呈现一定的规律变化。5.4测试数据分析及处理电压误差分析:产生误差的原因有:DAC0832的非线性、电压运算过程中四舍五入产生的误差、直流电源存在的误差、电阻及运放等器件存在的误差。频率误差分析:延时计算误差、示波器示数不稳定[15]。高频时存在较大误差的原因是,高频时调用延时程序的次数较少,因此计算调用次数时产生的误差较大。频率存在上限的原因是程序运行的耗时以及DAC0832在进展DA转换时损耗的时间。综上所述,由上述数据可以看出,波形发生器峰峰值和频率的误差还是很低的,精度较高。5.5系统功能实现情况1〕通过按键可以实现波形发生器产生周期性的正弦波、方波、三角波、锯齿波等四种波形;2〕通过拨码开关的数字量来改变波形发生器的频率,通过与DAC0832的VREF引脚相连接的滑动变阻器RV1来调节波形幅值;3〕通过LED显示当前波形的频率的大小;4〕频率输出X围:5HZ-261HZ;5〕由于本次设计没有考虑到输出频率及负载等问题,因此本次设计的频率输出X围太窄,仅仅作为波形发生器的一个模型研究,如果从实用的角度考虑的话,还需要加高频精细函数信号发生器专用芯片MAX038,它可以产生高频的三角波、方波、正弦波,输出频率可以到达0.1HZ-20MHZ。综上所述,本系统根本符合毕业设计任务书中的设计任务要求。6系统抗干扰措施6.1形成干扰的根本因素影响单片机系统可靠平安运行的主要因素主要来自系统内部和外部的各种电气干扰,并受系统构造设计、元器件选择、安装、制造工艺影响。这些都构成单片机系统的干扰因素,常会导致单片机系统运行失常,轻那么影响产品质量和产量,重那么会导致事故,造成重大经济损失。形成干扰的根本要素有三个:1〕干扰源。指产生干扰的组件、设备或信号,用数学语言描述如下:du/dt,di/dt大的地方就是干扰源。如:雷电、继电器、可控硅、电机、高频时钟等都可能成为干扰源。2〕传播路径。指干扰从干扰源传播到敏感器件的通路或媒介。典型的干扰传播路径是通过导线的传导和空间的辐射。1〕敏感器件。指容易被干扰的对象。如:A/D、D/A变换器,单片机,数字IC,弱信号放大器等。2〕干扰的分类有好多种,通常可以按照噪声产生的原因、传导方式、波形特性等等进展不同的分类[16]。按产生的原因可分为放电噪声音、高频振荡噪声、浪涌噪声。干扰的分类按波形分:可分为持续正弦波、脉冲电压、脉冲序列等等。按传导方式分:可分为共模噪声和串模噪声。6.2提高单片机系统抗干扰能力的主要手段1〕降低外时钟频率[17]。外时钟是高频的噪声源,除能引起对本应用系统的干扰之外,还可能产生对外界的干扰,使电磁兼容检测不能达标。在对系统可靠性要求很高的应用系统中,选用频率低的单片机是降低系统噪声的原那么之一。以8051单片机为例,最短指令周期1μs时,外时钟是12Mhz。而同样速度的motorola单片机系统时钟只需4mhz,更适合用于工控系统。近年来,一些生产8051兼容单片机的厂商也采用了一些新技术,在不牺牲运算速度的前提下将对外时钟的需求降至原来的1/3。而motorola单片机在新推出的68hc08系列以及其16/32位单片机中普遍采用了内部琐相环技术,将外部时钟频率降至32khz,而内部总线速度却提高到8mhz乃至更高。2〕低噪声系列单片机[18]。传统的集成电路设计中,在电源、地的引出上通常将其安排在对称的两边。如左下角是地,右下角是电源。这使得电源噪声穿过整个硅片。改良的技术将电源、地安排在两个相邻的引脚上,这样一方面降低了穿过整个硅片的电流,一方面使外部去耦电容在pcb设计上更容易安排,以降低系统噪声。另一个在集成电路设计上降低噪声的例子是驱动电路的设计。一些单片机提供假设干个大电流的输出引脚,从几十毫安到数百毫安。这些大功率的驱动电路集成到单片机内部无疑增加了噪声源。而跳变沿的软化技术可消除这方面的影响,方法是将一个大功率管做成假设干个小管子的并联,再为每个管子输出端串上不同等效阻值的电阻,以降低di/dt。3〕时钟监测电路、看门狗技术与低电压复位[19]。监测系统时钟,当发现系统时钟停振时产生系统复位信号以恢复系统时钟,是单片机提高系统可靠性的措施之一。而时钟监控有效与省电指令stop是一对矛盾。只能使用其中之一。看门狗技术是监测应用程序中的一段定时中断效劳程序的运行状况,当这段程序不工作时判断为系统故障,从而产生系统复位。低电压复位技术是监测单片机电源电压,当电压低于某一值时产生复位信号。由于单片机技术的开展,单片机本身对电源电压X围的要求越来越宽。电源电压从当初的5v降至3.3v并继续下降到2.7v、2.2v、1.8v,在是否使用低电压复位功能时应根据具体应用情况权衡一下。....word..结论经过几个月的辛勤努力,完成了基于单片机波形发生器的设计,总结几个月来的设计工作,主要有通过以下方面陈述:1〕通过对大量资料的查阅,使自己对波形发生器的工作方式、原理等根本概念及、现状、前景开展有了更好的了解。2〕本系统通过52系列单片机作为主控芯片,直接由软件产生波形输出。硬件简单,可以把电源和波形发生器分开来制作,减少发生器受到电源的干拢,这样使波形发生器的输出波形更加稳定。3〕用PROTELDXP2004设计并完成了波形发生器的印刷电路板(PCB)幅员设计和硬件制作。由于时间和条件的限制,本系统也存在一些缺乏之处,今后的工作中还可以做以下改良。本系统的核心控制芯片单片机本身的晶振频率为12HZ,因此得频率调节X围仅在5~261HZ,仅适用于低频信号源的电路当中,对于超过1000HZ就无法满足了。为了使频率X围能够扩大,在以后的设计中,应采用更高晶振频率的控制器件如DSP或者采用倍频器来提高输出波形的频率。由于单片机的I/O不够用,因此任务要求的第五种波形:脉冲波未能在本系统中表达,在以后的设计中,可以通过82C55来扩展单片机的I/O资源到达本任务要求。致在本次系统的研究和设计过程中,我得到了教师和同学们的热情帮助。在此,对他们表示衷心的感谢。首先,要对我的指导教师孙德田表示衷心的感谢。从方案的选取、审题、查找资料,到系统软硬件的各局部设计工作,到最后论文的书写和完成,教师在我的整个毕业设计工作中给了我很大的帮助和支持。教师的谆谆教诲,使我受益匪浅。感谢学校提供优越的实验环境,使我能全身心的投入到我的设计中。当查阅大量参考文献后设计原理图时,感谢指导教师给我论文格式及内容的仔细检查和改正。在教师的帮助下对系统的方案进展了论证,并对本系统缺乏进展了修改。当印制电路板生成后,借出各种调试工具,使系统在最短的时间里调试成功,使本系统功能顺利实现。在论文修改正程中,衷心的感谢教师尽心尽力的对论文进展了仔细的修改,无论是在论文格式还是论文内容上,都要求的较为严格,使我在设计过程中学到了很多东西。最后,要对大学四年以来所有给我授课的教师们表示感谢。是他们教会了我大学应该掌握的知识和技能,给我打下了坚实的理论根底。只有运用四年学习的根底知识和经历的积累,才能使我能够顺利的完本钱次毕业设计工作。要感谢我们班的众多同学,本次设计能够圆满完成,和各位同学的热心帮助是息息相关的。在本次设计中,我遇到了无数困难,在需要帮助的时候,各位同学给了我无私的帮助,帮助我解决了一个又一个的难题。前言....word..参考文献[1]杜华.任意波形发生器及应用[J].国外电子测量技术,2005(01):38~40.[2]中国任意波形发生器行业开展研究报告.chinaidr.[3]周景润.单片机设计、分析与制作[M].:电子工业,2021,162~170[4]X毅刚.单片机原理及应用[M].:高等教育,2003,190~191[5]X洪润,易涛.单片机应用技术教程[M].清华大学,2003.(04):85~95[6]X勇,陈朗,X飞舟.89C52双通道波形发生器的设计研究[J].计算机工程与应用,2004,〔08〕:150~160[7]程全.基于AT89C52实现的多种波形发生器的设计[J].XX师X学院学报,2005,(5):57~58.[8]侯玉宝.基于Proteus的51系列单片机设计与仿真[M].电子工业,2021,87~95[9]孙惠芹.单片机工程设计教程[M].:电子工业,2021,110~121[10]X爱均.单片机原理与应用--基于Keil软件运行技术[M].:机械工业,2021,136~141[11]赵景波.Prote199SE应用与实例教程[M].:人民邮电,2021,152~160[12]谈世哲.ProtelDXP2004电路设计根底与典型X例[M].:电子工业,2007,220~230[13]唐晨光,唐绪伟.单片机原理与应用及上机指导[M].清华大学.2021年5月第一版:134~135[14]X峰,王巧芝,陈绘兵.51单片机应用系统典型模拟开发大全[M].中国铁道.2021年6月第一版:10~11[15]A.Sangiovanni-Vincentelli,Quovadissld:reasoningabouttrendsandchallengesofsystem-leveldesign,Proc.IEEE95(3)(2007)467~506[16]M.Torngren,D.Henriksson,O.Redell,C.M.Kirsch,J.El-Khoury,D.Simon,Y.Sorel,H.Zdenek,K.-E.Arzen,Co-designofcontrolsystemsandtheirrealtime[17]A.Ledeczi,A.Bakay,M.Maroti,P.Volgyesi,G.Nordstrom,J.Sprinkle,G.Karsai,posingdomain-specificdesignenvironments,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026全球生物制药产业链市场深度剖析及竞争格局与新药研发发展趋势
- 河北邢台市临西县2027届三上数学期末预测试题含解析
- 2026中国运动防护手套材料供应链优化与成本控制研究报告
- 2026中国食品推广行业市场现状供需分析及投资评估规划分析研究报告
- 某服装厂款式设计制度
- 商业移动支付合同
- 商业电竞网上支付合同
- 云原生应用弹性伸缩预测技术协议
- 山东省济南市商河县2027届三年级数学第一学期期末达标检测模拟试题含解析
- 2027届南县数学六上期末预测试题含解析
- 【新教材】2026年秋季统编版九年级上册道德与法治第一单元 坚持党的全面领导 考点速记+练习题(含答案)
- 2026年完整三支一扶考试真题解析试卷及答案
- 2026教案自查报告(2篇)
- 免疫检查点抑制剂特殊人群应用专家共识
- 低压电工资格证考试题库(2026年版适配应急管理部考核标准)
- 护理部行风管理工作制度
- 2024年芜湖市直属学校选调教师真题
- HY/T 0460.1-2024海岸带生态系统现状调查与评估技术导则第1部分:总则
- 2025-2030中国电容式液位变送器行业市场现状供需分析及投资评估规划分析研究报告
- 酒驾查处流程
- DB51∕T 2428-2017 高速公路施工标准化技术指南
评论
0/150
提交评论