自动化综合设计总结报告题目:电容数字测量仪二级学院电子信息与自动化学院专业自动化专业班级自动化2班、3班指导老师刘晓东组员考核项目设计50分平时成绩20分答辩30分电容数字测量仪得分总分考核等级教师签名摘要本设计是基于555定时器构成多谐振荡器产生输入脉冲信号,然后通过AT89C51对方波脉冲中断计数而测量电容的。在多谐振荡器输出端加入一个74HC08对方波消除毛刺产生方波输入到单片机外部中断0,再通过单片机内部计数器对方波进行脉宽计数。555定时器中所涉及的电容,即是被测量的电容xC。信号的频率可以根据所选的电阻,电容的参数而调节,这样便可以定量的确定被测电容的容值范围。最后通过LCD1602显示被测电容数值。关键词:电容,555定时器,AT89C51,LCD1602目录1、引言当前数字系统的设计正朝着快速以及大容量和便利的方向发展。现代电子产品几乎几乎应用到各个领域,有力推动了现代社会信息化的进展,这反过来也要求电子产品要以更快的速度节奏升级。在日常的电路工程或者电路试验中,电容为一个最常见的电子元件,在实际电路中对电容的要求也愈加精确,传统的电容测量仪表现的不够直观、精确度不高以及便利。因此,这次,我们选择一个数字式电容测量仪,只要打开开关就可以直观的观察电容数量值大小。相比以前的更为方便、高精确度的有点,这也为本次选题带来了意义,同时也提高了我们对设计的兴趣。2.1设计要求1、设计电容数字测量仪电路,测量并显示电容大小2、测量电容范围为100pf~50F3、系统工作满足电容测量一般要求。2.2系统整体方案设计本设计是通过一块555芯片来测量电容,让555芯片工作在直接反馈无稳态的状态下,555芯片输出一定频率的方波,其频率的大小跟被测量的电容之间的关系是:0.772/(*)xfRC,我们固定R的大小,其公式就可以写为:/xfkC,只要我们能够测量出555芯片输出的频率,就可以计算出测量的电容。计算频率的方法可以利用单片机的计数器0T和中断0INT配合使用来测量,这种研究方法相当的简单。系统框图见下图。系统框图图中给出了整个系统设计的系统框图,系统主要由四个主要部分组成,单片机和晶振电路设计,555芯片电路设计,LCD1602显示电路,复位电路设计。3、硬件电路设计3.1单片机AT89C51简介MCS-51单片机是美国INTE公司于1980年推出的产品,与MCS-48单片机相比,它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元和指令,指令数达111条,MCS-51单片机可以算是相当成功的产品,一直到现在,MCS-51系列或其兼容的单片机仍是应用的主流产品,各高校及专业学校的培训教材仍与MCS-51单片机作为代表进行理论基础学习。AT89C51是一个低电压,高性能CMOS8位单片机,片内含4kbytes的可反复擦写的Flash只读程序存储器和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型计算机的AT89C51提供了高性价比的解决方案。AT89C51是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出AT89C51555晶振电路被测电容LCD1602显示复位电路测量按键(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,AT89C51可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。3.2.2单片机最小系统复位电路与1、从原理上,一般采用上电复位电路。这种复位电路的工作原理是:通电时,电容两端相当于短路,于是RST引脚上为高电平,然后电源通过电阻对电容充电,RST端电压慢慢下降到一定程序,即为低电平,单片机开始正常工作。该设计中复位电路采用按键复位方式。电路选用22uF的电容、200k欧姆的电阻、1000欧姆电阻和一个按键组成。2、内部时钟电路和晶振频率一般选择在4MHz~12MHz之间(该设计选用12MHz),外接两个谐振电容。本系统采用内部时钟方式。3.2.3按键控制电路本设计采用3个按键来执行检测作用,因为根据测量范围要求该设计制定了3个档位,每个按键对应555定时器上规定档位,该按键在软件程序用来控制程序是否往下面执行,如检测到按键按下,再对程序变量置位进而控制显示程序的执行;同时单片机上设定了开始测量电容输入的按键,单片机通过P3.7端口对按键进行检测;该四个按键如图所示:3.2555定时器多谐振荡器3.2.1555定时器概述555芯片电路是一种将模拟功能与逻辑功能巧妙结合在同一硅片上的组合集成电路。它设计新颖,构思奇巧,用途广泛,备受电子专业设计人员和电子爱好者的青睐,人们将其戏称为伟大的小IC。1972年,美国西格尼蒂克斯公司(Signetics)研制出TmerNE555双极型时基电路,设计原意是用来取代体积大,定时精度差的热延迟继电器等机械式延迟器。但该器件投放市场后,人们发现这种电路的应用远远超出原设计的使用范围,用途之广几乎遍及电子应用的各个领域,需求量极大。美国各大公司相继仿制这种电路1974年西格尼蒂克斯公司又在同一基片上将两个双极型555单元集成在一起,取名为NF556。1978年美国英特锡尔(Intelsil)研制成功CMOS型时基电路ICM555ICM556,后来又推出将四个时基电路集成在一个芯片上的四时基电路558由于采用CMOS型工艺和高度集成,使时基电路的应用从民用扩展到火箭、导弹、卫星、航天等高科技领域。在这期间,日本、西欧等各大公司和厂家也竞相仿制、生产。尽管世界各大半导体或器件公司、厂家都在生产各自型号的555/556时基电路,但其内部电路大同小异,且都具有相同的引出功能端。555电路,也称555芯片电路,是一种中规模集成电路。它具有功能强、使用灵活、适用范围宽的特点。通常只要外接少量几个元件,就可构成各种不同用途的脉冲电路以及许多实用电路,如多谐振荡器、单稳态电路及施密特触发器等等。从而能够实现振荡、定时、调光、调压、调速等。555集成电路有双极型和CMOS两种。CMOS型的优点是功耗低、电源电压低、输入阻抗高。对于初学者来说,可以把555电路等效看成一个带放电开关的RS触发器,这个特殊的触发器有两个输入端:阈值端TH可看成是置零端R,要求高电平,触发端R可看成置位端低电平有效。它只有一个输出端Vo,Vo可等效为触发器的Q端。放电端DIS可看成由内部放电开关控制的一个接点,放电开关由触发器的端控制:Q=1时DIS端接地;Q=0时,DIS端悬空。此外,这个触发器还有复位端MR加上低电平(0.3V)时可使输出为低电平。该特殊的RS触发器有两个输入端,这两个输入端的触发电平要求一高一低,其中置零端R即阈值端TH要求高电平,置位端即触发端则要求低电平,也就是使它们翻转的阈值电压值不同。当VK端不接控制电压时,对TH端(即R端)来讲,大于2/3VDD是高电平1,小于2/3VDD时是低电平0;而对TR端(即端)来讲,大于1/3VDD是高电平1,小于1/3VDD是低电平O。3.2.2555定时器与AT89C51接口555定时器芯片电路的应用电路很多,在实际应用中,除了单一品种的电路外,还可组合出很多不同电路。本次设计中应用的电路是直接反馈型无稳类电路,外设按键控制三个档位,555定时器的4脚复位端有单片机P3.6端口来控制发出芯片发出方波的发生;另外多555谐振荡器7端口接入P3.2端口来进行单片机的中断控制,由于我们是进行方波脉宽计数,说以选择中断请求方式为边沿触发方式;3.2.3555程序设计档位算法整个程序设计过程中遇到的最大的问题的如何根据测量到的方波的频率来计算所测量的电容的大小。在前面的介绍中我们知道:555时基芯片的输出频率跟所使用的电阻R和电容C的关系是:又因为1Tf,所以*0.772RTC即:0.772*CTR如果单片机采用12M的晶振,计数器T0的值增加1,时间就增加1μS,我们采用中断的方式来启动和停止计数器T0,中断的触发方式为脉冲下降沿触发,第一次中断到来启动T0,计数器的值为1N,第二次中断到来停止T0,计数器器的值为2N,则测量方波的周期为21()*1TNNus,如何开始时刻计数器的值10N,则6*10TN。简单时序图如下。则:60.772**10CNRT555输出的方波启动T0停止T0单片机的计数器的值N=0-65535,为了测量的精度,N的取值一般在100~5000,当电阻R越大,电容C的值就越小。我们取不同的电阻值,就得到不同的电容测量的量程。第一档:177.2R6*10100NC*1100NCuF1~50uF第二档:2772R16*10*10100NC1*10*1100NCuF0.1~5uF第三档:37.72RK26*10*10100NC2*10*1100NCuF0.01~0.5uF为了编写程序的方便,我们只计算100N,后面的单位可以根据使用的量程自行添加。测量范围的大小100pf~50F。3.2.474H08对发出方波消刺在555芯片输出方波后,由于硬件的原因,输出的方波会有很多毛刺,为了去除这些毛刺本设计中使用了一个两输入与门(74HC08),让信号通过74HC08后会使输出的波形毛刺减少很多,使单片机的测量结果变得精确。黄线为没有加74HC08前555输出波形,蓝线为加入74HC08后输出波形图;下图为两种波形的对比图;3.3基于AT89C51电容测量系统LCD1602显示电路LCD以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。这里介绍的字符型液晶模块是一种用5x7点阵图形来显示字符的液晶显示器,根据显示的容量可以分为1行16个字、2行16个字、2行20个字等等,这里我们使用的是2行16个字的1602液晶模块。3.3.1LCD1602显示器引脚介绍3.3.2LCD1602内部储存器CGROM1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如表1所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”3.3.3lcd1602显示自定义符步骤如下:1.先将字符写入CGRAM2.再将CGRAM中的字符写入DDRAM,DDRAM为待显示字符的储存空间;下图为CGROM和CGRAM中字符代码与字符图形对应关系4、软件设计软件设计是一个创造性的过程,对一些设计者来说需要一定的资质,而最后设计通常都是由一些初步设计演变而来的。从书本上学不会设计,只能经过实践,通过对实际系统的研究和实践才能学会。对于高效的软件工程,良好的设计是关键,一个设计得好的软件系统应该是可直接实现和易于维护、易懂和可靠的。设计得不好的系统,尽管可以工作,但很可能维护起来费用昂贵、测试困难和不可靠,因此,设计阶段是软件开发过程中最重要的阶段。直到最近,软件设计在很大程度上仍是一个特定过程。一般用自然语言给定一个需求集,预先作非正式设计,常常用流程图的形式说明,接着开始编码,当系统实现时设计还需修改。当实现阶段完成后,设计往往已与起初形式相去甚远以至于设计的原始文档完全不适合对系统的描述。软件设计主要是针对硬件设计里面的控制部分的,这里指AT89C51单片机,一般的单片机均可用汇编语言和C语言进行编程。C语言直观,相对比较的简单,但占用的程序存储器的内存比较大,汇编语言是针对硬件设计的语言,如果想用汇编语言设计的话必须要对硬件有很大的了解,相对C语言就比较的复杂,但是比较的精简,占用的程序存储器的空间比较的小。作为还在学生阶段的我们,用汇