1、华东交通大学理工学院毕业设计Institute of Technology.East China Jiao tong University毕业设计Graduation Design(2011 2015 年)题 目数字电压表的设计分院:电气与信息工程分院专业:工程及其自动化班级:电力2011-1学 号:学生姓名:田唯油指导教师:起讫日期: 2015-01-012015-05-10在电子应用领域,工业自动化仪表已经有了非常广泛的应用。 本文设计的数字电压表 以AT89C5俾片机为主要控制器件,利用ADC080-巴模拟信号转换为数字信号并加以显示 的电路。它的设计主要包括硬件电路和系统程序两部分设计
2、。硬件电路主要是单片机最小设计模块、A/D转换模块和显示模块的设计,系统程序设计则是通过AT89C51单片机先将系统初始化,通过ADC0808专换芯片把模拟量转换成数字量,最后通过数码管显示数据。 设计的数字电压表的测量范围为 200mL 10v,对直流电压进行测量。该电路功能强大, 有报警系统,可控制测量范围,数码管显示精度高,可扩展性强等优点。数字电压表的应用在很多领域,有非常好的应用前景。对数字电压表进行研究很有必 要性。这对我们研究单片机技术是很有帮助的。关键词:AT89C51 ADC0808电压测量;A/D转换5AbstractIn electronic applications,
3、industrial automation instruments have a very wide range of applications. This design of a digital voltmeter to AT89C51 microcontroller as the main control device, use it ADC0808 analog signals into digital signals and display them circuit. Its design includes hardware and system design program in t
4、wo parts. The hardware circuit design module is the smallest single-chip design A/D converter module and display module, system programming is through the first AT89C51 SCM system initialization, by ADC0808 converter chip to convert analog to digital, and finally through a digital display data. Meas
5、uring range designed digital voltmeter is 200mv-10v, DC voltage measurement. The circuit is powerful, alarm system, control measuring range, digital display and high precision, scalability and other advantages.Application of digital voltmeter in many areas, there is a very good prospect. Conduct res
6、earchon the digital voltmeter very necessity. This single-chip technology for our study is helpful.Key words: T89C52; ADC0808; Voltage measurement A/D converter目 录摘要 2英文摘要 3目录 4引言 11绪论 21.1 选题的依据及意义 21.2 国内外现状研究及发展趋势 21.3 研究的主要内容 32设计方案与论证 42.1 电压表功能设计 42.2 设计思路 42.3 设计方案 43系统硬件电路的设计 63.1 单片机最小系统设计
7、63.1.1 AT89C51单片机的主要特征 63.1.2 时钟电路 73.1.3 复位电路 73.2 A/D转化模块 83.2.1 A/D 转化器的工作原理 83.2.2 ADC0808 主要特征 83.3 显示模块设计 103.3.1 数码管介绍 103.3.2 数码管显示模块电路 113.3.3 LED数码管与单片机接口设计 123.4 高阻隔放大电路 133.5 总体电路设计 134程序设计 154.1 主程序流程图 154.2 A/D转换子程序流程图 164.3 显示子程序 184.4 编程软件keil介绍 185仿真与调试 195.1 protues仿真的介绍 195.2 prot
8、ues仿真电路图 195.3 仿真结果 20总 结 23参考文献 24附 录 25后 记 错误!未定义书签。华东交通大学理工学院毕业设计数字电压表简称DVM它是采用数字化测量技术,能将连续的模拟量(直流输入电压) 转换成不连续的、离散的数字形式并加以显示的仪表。目前,数字电压表已被广泛用于电 子电气测量、工业自动化仪表、自动测试系统等领域。数字电压表有很多优点:(1).通过数码管显示数字清晰直观,读数准确,相对于借用 指针和刻度盘的读数有了很大的改进。(2).数码管显示位数多,能测量的范围更加广,用 途更加广泛。(3).测量准确度高,误差越来越小。准确度表示测量结果与真实值的一致性, 反映了测
9、量误差的大小。(4).分辨率高。数字电压表测量灵敏度高,微小电压变化能在数 码管的动态显示中显示。(5).扩展能力强。在数字电压表的基础上,可改造成用于不同工 业领域的仪器仪表。(6).测量速率快。它取决于 A/D转换器的转换速率。测电压时,电 表两端接触被测电压,数码管即刻显示被测电压数值,相对于指针和刻度盘测量更加稳定 和便捷。(7).输入阻抗高。数字电言表在测量时从被测电路上吸取的电流极小,为显示更 加精确,可以用放大电路放大电流,不会影响被测信号源的工作状态,能减小由信号源内 阻引起的测量误差。(8).集成度高,耗能少。新型的数字电压表采用CMO纵规模集成电路,工作状态时功耗很低,电池
10、可用时间长。(9).抗干扰能力强。(10)测量电压时系统 恢复初始化,无需像指针式电压表那样置零。1绪论1.1 选题的依据及意义微型单片机自上世纪70年代首次出现,因为其价格低而性能有很高,便于携带所占 地方小、可以适配各种功能等等特点很快便引起了人们关注度,之后很多年的发展,现在 常见于家用电器控制,节能设备、电子仪器、智能机器人等方向也有着广泛的应用,在军 事设备、工业控制领域都用到单片机控制,可见现在的单片机更加微型,智能,在提高了 产品的功能与质量同时,还降低了设计和使用成本。传统模式的电压表测量精度低,容易引入误差,测量范围小,功能简单,不能满足数 字化时代的需求,很有必要选用既要精
11、度高又要有很强的抗干扰能力,并且同时还需要满足扩展性强,外形小巧集成方便的芯片最为首选,体积小易于携带,还能与电脑端进行实 时通信。现阶段,在电工检测方向、工业自动化仪表控制、智能自动测试系统中,由 A/D 转换器作为核心器件的数字电压表被越来越广泛的应用,并且再有很大的份额和很强的生命力。由DV般术发展而形成的通用及专用的更高级的数字仪器仪表也更多的应用在监测 电量和非电量的测试中并且得到了较快的发展,也将这项技术提高到了崭新高度。1.2 国内外现状研究及发展趋势电子技术近20年的发展,微电子技术、计算机技术、集成技术、网络技术等高新技 术越来越成熟。在这样的情况下,人们不断对数字电压表提出
12、了更高的要求,加快了数字 电压表的发展,技术人员要求数字电压表速度更快、性能更稳定,灵敏度更高、以及操作 更方便,做到成本更低,样品量提供量更少、和零污染。数字电压表的发展大致如下:1 .新技术的广泛应用新的A/D转换技术于上世纪90年代初在世界许多国家研发。自动校准技术、 A/D转 换技术、资源再利用技术,使得数字电压表更加精度化、智能化、经济化、环保化,向着 更高水平发展。2 .智能化阶段在电子技术、大规模集成电路及计算机技术日新月异的大背景下, 人们很快研制出并 量产了 DVMK据处理和可编程程序在微处理器控制下的芯片,因为数字电压有数据存储器 RO使用C软件编程,通过可进行信息处理,仪
13、器仪表经过接口监测系统,从而进行自校、自检,自查三个步骤,以及高准确性的运行,这样便实现了监测系统的智能化当前,智能化的DVM勺出现以及智能化仪表发展的良好态势, DVM等会成为未来的发展趋势,并 且会得到更多领域的应用。这样为各种物理量的动态检测的实现提供了可能。1.3研究的主要内容本文介绍的一种简易数字电压表。 主要是由AT89c51单片机控制,显示模块由A/D转 换器和数码管控制,数据处理模块及显示模块组成,芯片由ADC080杯集到的模拟量转化 为相应的数字量再传送到相应的模块处理中。芯片的主要任务是处理数据,并且把 0808 送来的数字量进行分析处理,再送到显示模块中显示,由于元件较少
14、,成本低,测量精度 和可靠性较高系统的数字电压表电路简单实现。292设计方案与论证2.1电压表功能设计(1)对直流电压的测量。(2)能对常见的交流信号的电压进行测量。(3)测量电压的范围从200mv到10V之间。(4)当输入电压过大时能够具有保护功能。(5)显示功能。(6)其它附加功能。2.2 设计思路电压表由模拟和数字转换两大部分,电路应尽量采用中、大规模集成电路。(1) 为了满足各方面的设计需求,选择 AT89C5H1片机为核心控制器件。(2) ADC0808和输入放大器用来用作 A/D转换器,基准电源构成了模拟部分;数字 部分由计数器、译码器、电流放大器、逻辑控制器、振荡器和显示器构成。
15、数字量经由转 换器将输入端输入的模拟量转换而成, 与此同时产生控制信号并根据产生的频率,经过分析处理整合检测最终输出需要显示的数字。(3) 电压显示采用两位一体的LED码管。(4) LED数码的段码输入,由并行端口 P0产生:位码输入,用并行端口 P2低两位产 生;小数点位由P2 口产生。2.3 设计方案转换电路、A/D转换、单片机、时钟电路、复位电路、模拟电压输入构成了硬件设计 电路。硬件电路设计图如下图所示:时钟电路复位电路ATS9C51模拟电压图2-1数字电压表总体设计方案图3系统硬件电路的设计3.1 单片机最小系统设计3.1.1 AT89C51单片机的主要特征AT89C51单片机的外形
16、如图3-1所示:19U439XTAL1POlO/AIDOP0.1/A01P0L2/AJD2XTAL2P0 3/ACGPQ 川AD4P0 5/AO5FD.BMDSRSTPO 7/AD7P2 0W6P2,总P2 2/A10-18333733g3534322921222324PSENP2,3ZA11ALEP2 4ZA12EAP2.6/A13P2.6/A14P2 7/M5P1.0P3.a/FtXDP1JP3 1/TD30?531231772810211312P1.2P3.2ANT0PI.3P3WINT1P1.4P3.4/T0P1 5P3.5/T1P1.3P3.6MTRP1.7F37 麻41?51415
17、716817T8GC51图3-1 AT89C51引脚图P0 口引脚:这组引脚共有8个引脚,P0.0-P0.7这8个引脚有两种不同的功能,分别 用于通用I/O 口和对片外存储器的读/写数据,P0 口的字节地址为80H, 口的各位口线具 有完全相同但又相互独立的逻辑电路, 有一个锁存器两个三态输入缓冲器一个多路转接开 关,实际控制中,P0 口多数情况下都是作为地址/数据线使用。P1 口弓唧:只可作为普通的I/O 口使用,在电路结构上和P0 口不同,因为P1 口只传 送数据,所以不再需要转换开关,P1 口是准双向口,P1 口作为输出用时,可以独立对外 提供推拉电流负载,外电路就不再需要上拉电阻,作为
18、输入使用时,必须在锁存器写入1, 使FET截止。P2 口: P2 口字节地址为0A0H实际控制中为系统提供高位地址,这个功能和 P0 口一 样,在电路中有一个多路转接开关,但是转接开关的一段不再是作为地址数据使用,二就 是单一的作为地址用而控制功能是它的第二大功能,但是每个引脚不完全一样。ALE地址锁,使地址锁存于使能端。访问外部存储器,如 RAM ROM有51个外部总线,16位地址线,数据线为8,而低8位的地址跟数据线是重合,所 以单独访问低8位的地址和数据,这就需要用到 ALE信号。访问存储器的时候,P2 口输出高地址,P0输出低地址。利用外部的锁存器(设计用 74HC245ff储器)配合
19、ALE脉冲,锁存P0地址,这时读写信号开始起作用,P0 口读入或 者输出数据。RST单片机复位电路,当单片机系统在运行中受到环境干扰时,程序运行若有错误, 及时按复位按钮,系统电路将自动初始化,起重置作用。在设计时单片机系统如上图3.1P0 口接收由ADC080磔来的数据,然后通过 P1 口将数据送给LED显示器,通过显示 器将数值都显示出来。3.1.2 时钟电路单片机中指令执行都需要在晶振产生的固有频率下进行,按节拍有顺序的一次进行下 去,而单片机时钟脉冲是由时序电路发出的。 单片机芯片内部有一个串联的反相放大器来 增强震荡器高增益,XTAL1为输入端,XTAL2为输出端,用一个晶振和2个3
20、0uf的电容 构成时钟电路,如下图所示:图3-2时钟电路电路中的器件选择有三种方法,一是通过计算,二是实验确定,三是参考一些典型电路,电容器C1和C2取值范围是3010uF,本文选择了 30uF的电容,这样会对对震荡频 率起到调节的作用电路产生的时钟信号震荡频率由石英晶振来决定,最高可选24MHz本系统中选择6MHz乍为时钟信号的震荡频率。3.1.3 复位电路复位电路是用来返回到电路设备初始化状态的电路,AT89C51的上电复位电路,只要在复位输入引脚上接一电容在 ACC上端,下端接地就行了。 CMO期单片机,由于在 RST 端内部有一个下拉电阻,故可拆除外部电阻,外接电容减至10uF。上电复
21、位的工作过程:在加电时,复位电路通过电容加给 RS础一个短暂的高电平信号,此高电平信号随着 Vcc 对电容的充电过程而逐渐回落,RST端的高电平持续时间取决于电容的充电时间。 加在RST 端的高电平信号要维持足够长的时间才能保证系统可靠复位。一般来说复位方式有上电自动复位和按钮复位两种。图3-3是AT89c51单片机的上电复位和按钮复位组合电路。3.2 A/D转化模块现实中大多数都是模拟量,这样并不能被我们直接采用,所以人们研制了数字量的器 件,它能把模拟的物理量转变成我们能够利用的数字量,这是单片机几桶收集整理转变数据的关键,在电路设计中必不可少,经过人们不断努力改进,现在的转换器已经具备了
22、很 强的抗干扰能力,转换精度十分准确,性能强,价格低廉,种类多,常用的有逐次逼近型, 双重积分型等。逐次逼近式 A/D转换的转换速度和精度都比双积分型更高,ADC0808专换器可以与单片机连接,把转换得到的数字量送入单片机,并对数字量进行分析和显示。每 个位比较一次,那么一个n位久需比较n次,这过程中所消耗的由位数和单片机时钟周期 来共同决定,因为现实中更注重效率,而逐次逼近型A/D转换器转换速度快,在现实的生产生活中被大量采用。3.2.1 A/D转化器的工作原理转换器要想工作,必须先做几个步骤如寄存器每一个都必须归零,开始转换工作时,必须将最高位置高电也就是置1才能把数据送入转换器中进行转换
23、, 转换后的结果与输入 时的比较,若经转换的模拟量小于输入的模拟量,则1被保留,如转换的模拟量大于输入的模拟量,则1不保留,接着第二位第三位第四位并最终到最低位,最终寄存器中所存储 的便是输入模拟量所对应的二进制的数字量。3.2.2 ADC0808主要特征ADC0808是有使能控制端和彳机直接接口的 CMO曲片型逐次逼近式 A/D转换器,首先应用在智能仪器和机床控制领域片内可以对模拟电压信号对8路同时进行转换,之所以这么做,是因为ADC0808f其他相比有着先天的优势:第一,它是8路8位的转换器;其 次,8路模拟开关并具有锁存控制功能再次可以接各种微控制器口;第三,锁存三态,与 TTL转换电压
24、低且精度高低功耗等特点。ADC0808的外部引脚特征:ADC0808t 28条弓I脚,其引脚图如下所示:2INOIN1IN2IN3IN4ININ6IN7ADD AADD C ALEVREF(+)VREF(?)CLOCKS STARTEOC0UT1OUT2OUT3 0UT4 0UT5OUTB UT7OUTSOE1027_9261722134_Z2. 1Q51825324152314221712169ADC0808图3-4 ADC0808的引脚图下面说明各个引脚功能:IN0-IN7 (8条):用来进行输入控制转换模拟电压。地址控制:ALE为地址输入锁存许可线,输入高电平时有效,当 ALE置高电平时
25、,做 为地址输入线使用。START启动信号脉冲线,正脉冲宽度不小于 100ns,否则无法启动,EOC:标志着转换结束的输出线,电位处于高电平时则表示A/D转换已经结束,且数字量自动锁入锁存器中。D1-D8:数字量输出端口, D8位最低位,D1位最高位。OE输出允许端,高电平时,把转换后的数字量通过D1-D8引脚上输出。REF+ REF-:输入电压参考量,指给电阻阶梯网络的参考电压和标准值。Vcc、GND: Vcc一般R与EF琏接在一起为主电源输入端,地端是 GNDf REF旌接在 一起,这样便是VCC , GND勺作用。转换器和单片机的链接,如下图:图3-5转换器和单片机的链接3.3 显示模块
26、设计3.3.1 数码管介绍本文的电压值是选用LED数码管来显示的。LED数码管由8个发光二极管组成,其中 7个按“8”字型排列,还有一个是位于右下角且发光管的圆点形状为 dp,用来显示小数 点。LED有低功耗、亮度强、线路简单、寿命长等优点,数码管的引脚图如图 3-6所示:图3-6数码管引脚排列发光二极管有两种接法,分别是共阳极接法和共阴极接法,把8个点连在一起,高电平在公共端接入的叫共阳极,低电平在公共端接入的叫共阴极。数码管有静态和动态两种显示方式。 静态显示,就是指一个I/O端口只能控制一个数 码管的段码数据。这样各个数码管显示相对独立,每个数码管接收的显示字符一经确定, 相应I/O 口
27、的输出段码将保持不变,直到显示下一个字符,此特点使得数码管的显示亮度 也较高。但是也存在着缺点,大量的I/O端口在数码管过多时将被占用。动态显示,指逐位地点亮显示器的各个位,点亮一次显示器的亮度与间隔时间、导通 电流和点亮时间的比例三者相关。 动态显示的亮度要比静态显示要暗, 所以在选择静态显 示电路中的限流电阻应该要大于限流电阻时阻值,防止数码管损坏。采用了自动显示8路模拟电压值动态显示对于设计的实现非常容易。3.3.2 数码管显示模块电路数码管要求的驱动电流在 10mA-20mA为防止数码管灌入的电流太大,超出了单片 机允许的电流范围而导致器件损坏,在 P1 口输出段码显示处,要加入10K
28、的限流电阻排 阻,一共8个同阻值的电阻,分别对应LED的8个接口,既保护数码管,又简单电路。本 设计选用软件译码的方式来简化电路和进行数值显示。显示电路采用LED数码管通过软件译码动态显示,通过单片机的 P1、P3.2、P3.3、P3.5 口控制。通过译码器驱动将依次循 环点亮数码管,如图3-7所示:U1-cTIXT妒1L-_X7AL1P 口 Q/ADOpojwcnPO 2WD2XTAL2P0.3WD3POPO.SJAD5PO 6JWD6RSTPO 7/AD7P2.DI/ABR2.1/A9P2 2*A1QPSENP23 MliALEP2 4/A12EAP2.5阂 3P2 的14P2.7/A1S
29、pi aPJWXDPMP(3.1/rXDPl .2PWZflNTOPl . 3PS.SrtNTlPI .4P3.47F0Pl .5R.5/T1PI .8P3.6WRFl .7P3 7JRDATSgK? LED0UZPOD 卷7flHC245U3ABCQEFG DFQHQGI456P3孑 iTi JTi _&一于 一aITIV KEY1 ALED 士汗 AM5000) .delay_count=0; /延时计数清 0value=GetValue(); / 获取电压ValueDis(value); / 显示电压if(valueXZOr|口ICZ4S JJ图5-3仿真效果图3 瑞_UK LOG胤Ra
30、pr n当INTO输入为5.05V时,对应的显示结果如图5-4所示:U4P3Qjnrra fuHII pj.+nn pjm图6-4仿真效果图当INT0 口输入为9.85V时,与输出结果稍微有点误差,对应的输出结果如图5-5所示:U-PEItO二X 然” FnTwK5三二-Ii-il llftA niD F213Ali FZ.-iUlZ P2I3 阻修Mt M?iaiCri忆 CT HMD 3 m:UJWTT ra.-rfTD njfiTiF3J5(nr ,”3口3田 mvMH F 口皿ff2FQ 珀Bd 口附R Fn.T*DT图5-5仿真效果图当输入电压10.5V时,被测电压超过数字电压表测量
31、范围,报警器鸣笛报警。显示最 高测量电压为10V。at q , . DK-&2H EK-iEUTTEE 重索 中 O 口 口 口 n:u-OLKKFJlk 皿仿真成功RP1rzor.u rz vw,1 13M.m NHvll ,墨中 PSfAll ,= SJ , F3?/AlfrimiK| FJlirTXP 0吧巴 rjjITTP3 rayri .目 mr rnrtrr图5-6仿真效果图总 结本设计是我第一次设计的电路,利用 Proteus的仿真与实现。在这个过程中,我学到 了许多课外的知识,提高了自己思考和设计的能力,对使用单片机有新的体会。通过本设 计利用Proteus和Keil软件,我也学到了很多知识,在硬件设计、系统程序编程、功能 模块划分、设计原理图和电路仿真设计的过程中,积累了很多经验。基于单片机的数字电 压表功能强大,它结构简单,电路原理易懂,成本低,用到外部元件少,能够在实践中很 好地工作,测量电压精度高。该系统的功能,得到了理想的效果,在系统硬件设计有可扩 展性,增加了限值电压测量范围,过压报警等功能。本设计实现了对简易数字电压表的测 量电压的功能,详细描述了电路原理,设计与仿真,绘画出电路原理图及软件调试。通过本次设计,加深了我对单片机的认知,体积虽小,但有着强大功能。本设计采用 AT89C51单片机,功能更完善,应用领域更广泛。该设计也可用