单片机交流数字电压表表设计

基于单片机设计的交流数字电压表
12:52:14&&&来源:eechina &&
传统的电压表在测量电压时需要手动切换量程,不仅不方便,而且要求不能超过该量程。如果在测量时忘记改变量程,则会出现很大的测量误差,甚至有将电压表烧坏的可能。&&
本文中采用运算放大器和集成多路模拟开关电路设计了电压表量程自动切换技术,通过单片机检测可实现电压表量程的自动转换。它具有体积小,驱动电流小,动作快,结构简单,操作方便的优点,可用于实验教学中。&&
1 技术要求&&
电压测量范围:0~500 V;测量精度:0.5%;量程自动切换;采用LED显示;可用现场提供的220 V交流电源。&&
2 基本原理&&
基本原理如图1所示,信号经过衰减处理后通过采样保持器采样保持,由A/D转换成数字信号,再由单片机控制和计算后将结果送LED显示。量程的自动切换由单片机通过程序控制多路模拟开关来完成。由于要求采用现场的220 V交流电源,所以本文设计了电源电路,将220 V交流电转换成电路可用的低压直流电。&&
3 硬件系统设计&&
在硬件电路设计中多次采用了电容滤波来消除干扰信号,同时采用了跟随器,跟随器的输入阻抗很大,可以解决信号传输中的衰减问题。又考虑到单片机的驱动能力很小,在设计中加入了7407用来驱动LED显示。整个硬件系统主要由以下几部分组成:&&
(1)电压信号衰减电路:将输人的0~500 V被测电压信号衰减成0~5 V。&&
(2)量程自动切换电路:完成信号量程选择及其小数点位置选择。&&
(3)采样保持器:对模拟信号进行采样并保持。&&
(4)模数转换及控制电路:完成对采集的数据处理和对系统的控制。&&
(5)显示器:由74LS164和数码管组成,将测量的电压信号显示出来。&&
(6)整流电路:将交流电整流成直流电,作为电源给数字电压表供电。&&
3.1 电压信号衰减电路&&
电压信号衰减电路如图2所示。为了在输入大电压时不损坏电压表内部器件先对电压进行衰减,该设计中用阻抗进行1:100衰减,为防止衰减后信号电压过小又通过运算放大电路以及多路开关CD4052进行信号放大,其中的5.1 V稳压管起过压保护作用。&&
3.2 量程自动切换电路&&
量程的自动切换由初设量程开始,直至选出最佳的量程为止。量程自动切换电路如图3所示,控制开关的闭合和断开都有一个短暂的过程,为解决这个问题系统中采用软件延时,然后再进行测量与判断。为了避免相邻两量程交叉点上可能出现的跳动,在程序中把低量程的上限比较值和高量程的下限比较值之间设计了一定的重叠范围。该单元中运算放大器与多路模拟开关CD4052的其中一组开关执行相应量程的选择,另一组开关接LED的小数点,选择不同量程时分别点亮相应LED的小数点位。CD4052的A、B以及INH分别接单片机P21,P20,P22。&&
3.3 采样保持器&&
在测量交流电压时,A/D转换器的转换误差与信号的频率成正比。为了提高模拟量输入的频率范围,故选用采样保持器。在此设计中采用LF398作采样保持器,采样保持器的原理结构图如图4所示,保持电容Cn取值和采样频率以及精度有关,常选510~1 000 pF。一般选用聚苯乙烯,聚四氟乙烯等高质量的电容器。&&
3.4 A/D转换电路&&
A/D转换器是将模拟信号转换成数字信号的器件或装置,是一种模拟系统和计算机之间的接口,在数据采集和控制系统中得到了广泛的应用。常用的A/D转换方式有逐次逼近式和双斜积分式,考虑到前者转换时间短,因此选用逐次逼近式A/D转换器。AD574为12位逐次逼近式A/D转换器,分辨率为1/212,转换时间25&s。在本系统中的量程选用双极性-5~+5 V,与AT89C51的接口电路如图5所示。AD574的12/8引脚接+5 V,一次输出12位转换结果,3,5脚分别接至单片机控制总线的P3.1,P3.2,CE接单片机P3.0,状态引脚(STATUS)接单片机的P1.7。AD574的12引脚和10引脚接两个0.1 k&O的电位器,分别用于零点调整和满刻度调整。AD574的数据输出线与单片机数据总线的连接时,12位分别接单片机的P0.0~P0.7和P1.0~P1.3。&&
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
单片机相关资源
交流数字电压表相关资源
测量电压相关资源
编辑:什么鱼
本文引用地址:
大学堂最新课程
本周热门资源推荐
EEWORLD独家本类论文总排行版
本类论文本月排行
本类论文本周排行[1]丁元杰.单片微机原理及应用[M].北京:机械工业出版社,2005
[2]张永枫.单片机应用实训教程[M].西安:西安电子科大出版社,1993
[3]何立民.MCS-51系列16位单片微型计算机[M].北京:北京航空航天大学出版社,1989
[4]周明德.微机原理与接口技术[M].北京:人民邮电出版社,2002
[5]陈红卫.微型计算机基本原理与接口技术[M].北京:科学出版社,2003
[6]徐爱钧,徐阳.智能化测量控制仪表原理与设计[M].北京:北京航空航天大学出版社,2012
[7] 李光飞,楼然苗.单片机课程设计实例指导[M] .北京:北京航空航天大学出版社,2004
[8] 余永权.ATMEL89系列单片机应用技术[M].北京:北京航空航天大学出版社,2002
[8] 杨文龙.单片机原理及应用[M].西安:西安电子科技大学出版社,1998
[9] 黄继昌.电子元器件应用手册[M].北京:人民邮电出版社,2004
[10] 刘文涛.单片机应用开发实例[M].北京:清华大学出版社,2005
[11] 孙涵芳,徐爱卿.MCS-51系列单片机原理及应用[M].北京:北京航空航天大学出版社,1998
[12] 范立南,李雪飞,尹授远.单片微型计算机控制系统设计[M].北京:人民邮电出版社,2004
[13] 李刚,林凌.与8051兼容的高性能、高速单片机[M].北京:北京航空航天大学出版,2002
[14] 周航慈.PHILIPS51PC系列单片机原理及应用设计[M].北京:北京航空航天大学出版社,2002
[15] 阎石.数字电子技术基础[M].北京:高等教育出版社,1998基于51单片机的数字电压表仿真设计
> 基于51单片机的数字电压表仿真设计
基于51单片机的数字电压表仿真设计
  引言本文引用地址:
  随着电子科学技术的发展,电子测量成为广大电子工作者必须掌握的手段,对测量的精度和功能的要求也越来越高,而电压的测量甚为突出,因为电压的测量最为普遍。数字电压表是采用数字化测量技术设计的电压表。数字电压表与模拟电压表相比,具有读数直观、准确、显示范围宽、分辨力高、输入阻抗大、集成度高、功耗小、抗干扰能力强,可扩展能力强等特点,因此在电压测量、电压校准中有着广泛的应用。本文采用对输入模拟信号进行转换,控制核心AT89C对转换的结果进行运算和处理,最后驱动输出装置显示数字电压信号,通过Proteus仿真软件实现接口电路设计,并进行实时仿真。
  Proteus软件是一种电路分析和实物模拟仿真软件。它运行于Windows操作系统上,可以进行仿真、分析(SPICE)各种模拟器件和集成电路,是集单片机和SPICE分析于一身的仿真软件,功能强大,具有系统资源丰富、硬件投入少、形象直观等优点,近年来受到广大用户的青睐。
  1 系统概述
  1.1 设计任务
  利用单片机AT89C51与设计一个数字电压表,将模拟信号0~5 V之间的电压值转换成数字量信号,以两位数码管显示,并通过虚拟电压表观察模拟量输入信号的电压值,LED数码管实时显示相应的数值量。
  1.2 总体方案
  数字电压表电路组成框图如图1所示。
  本设计中需要用到的电路有电源电路、模/数转换电路、单片机控制电路、显示电路等。设计中需要用到的芯片有AT89C、ADC-、LED数码管等。
  2 数字电压表的Proteus软件仿真电路设计
  待测电压输入信号在ADC0808芯片承受的最大工作电压范围内,经过模/数转换电路实现A/D转换,通过单片机控制电路进行程序数据处理,然后通过七段译码/驱动显示电路实现数码管显示输入电压。
  硬件电路原理图如图2所示。
  2.1 AT89C和数码管显示电路的接口设计
  利用单片机AT89C51与ADC0808设计一个数字电压表,将模拟信号0~5 V之间的直流电压值转换成数字量信号0~FF,以两位数码管显示。Proteus软件启动仿真,当前输入电压为2.5 V,转换成数字值为7FH,用鼠标指针调节电位器RV1,可改变输入模/数转换器ADC0808的电压,并通过虚拟电压表观察ADC0808模拟量输入信号的电压值,LED数码管实时显示相应的数值量。
  在Proteus软件中设置AT89C51单片机的晶振频率为12 MHz。本电路EA接高电平,没有扩展片外ROM。
  2.2 A/D转换电路的接口设计
  A/D转换器采用集成电路ADC0808。ADC0808具有8路模拟量输入信号IN0~IN7(1~5脚、26~28脚),地址线C、B、A(23~25脚)决定哪一路模拟输入信号进行A/D转换,本电路将地址线C、B、A均接地,即选择0号通道输入模拟量电压信号。22脚ALE为地址锁存允许控制信号,当输入为高电平时,对地址信号进行锁存。6脚START为启动控制信号,当输入为高电平时,A/D转换开始。本电路将ALE脚与START脚接到一起,共同由单片机的P2.0脚和WR脚通过或非门控制。7脚EOC为A/D转换结束信号,当A/D转换结束时,7脚输出一个正脉冲,此信号可作为A/D转换是否结束的检测信号或向CPU申请中断的信号,本电路通过一个非门连接到单片机的P3.2脚。9脚OE为A/D转换数据输出允许控制信号,当OE脚为高电平时,允许读取A/D转换的数字量。该OE脚由单片机的P2.0脚和RD脚通过或非门控制。10脚CLOCK为ADC0808的实时时钟输入端,利用单片机30引脚ALE的六分频晶振频率得到时钟信号。数字量输出端8个接到单片机的P0口。
  3 数字电压表的软件程序设计
  系统上电状态,初始化ADC0808的启动地址,数码管显示关闭,开始启动A/D转换。等待启动结束后,将ADC0808的0号通道模拟量输入信号转换输出的数字量结果通过数码管动态显示的方式显示到三位数码管上。
  根据设计要求结合硬件电路,在输入模拟信号时采用电阻分压,最终的采样输入电压只有实际输入电压的十分之一,所以在编写程序中要编写一段数据调整程序,其中还应注意硬件显示电路采用了动态扫描显示,在动态扫描显示方式中,动态扫描的频率有一定的要求,频率太低,数码管LED将会出现闪烁现象,通常数码管点亮时间间隔一般均取5ms左右为宜,这就要求在编写程序时,使其点亮并保持一定的时间。总结以上分析,程序流程图如图3,图4所示。
  本电路的程序设计主要包括A/D转换部分、LED显示、初始化和定时器中断部分。部分程序代码如下所示。
  5 结束语
  本文的数字电压表可以测量0~5 V的电压值,AT89C51为8位单片机,当ADC0808的输入电压为5 V时,输出数字量值为+4.99 V。如果要获得更高的精度,需采用I2位、I3位等高于8位的A/D转换器。数字电压表的显示部分可以增加BCD码调整程序来通过三位数码管显示其数据。本设计的显示偏差,可以通过校正0808的基准参考电压来解决,或用软件编程来校正其测量值。本系统在设计过程中通过Proteus仿真软件的调试,具有电路简单、成本低、精度高、速度快和性能稳定等特点。
模拟信号相关文章:
51单片机相关文章:
单片机相关文章:
单片机相关文章:
单片机相关文章:
晶振相关文章:
分享给小伙伴们:
我来说两句……
最新技术贴
微信公众号二
微信公众号一

我要回帖

更多关于 交流数字电压表 的文章

 

随机推荐