摘要:设计采用AT89C51单片机、A/D转换器ADC0808和共阳极数码管为主要硬件,分析了数字电压表Proteus软件仿真电路设计及编程方法。将单片机应用于测量技术中,采用ADC0808将模拟信号转化为数字信号,用AT89C51实现数据的处理,通过数码管以扫描的方式完成显示。设计的数字电压表可以测量0~5 V的电压值,AT89C51为8位单片机,当ADC0808的输入电压为5 V时,输出数字量值为+4.99 V。本设计电路简单、成本低、性能稳定。
引言
随着电子科学技术的发展,电子测量成为广大电子工作者必须掌握的手段,对测量的精度和功能的要求也越来越高,而电压的测量甚为突出,因为电压的测量最为普遍。数字电压表是采用数字化测量技术设计的电压表。数字电压表与模拟电压表相比,具有读数直观、准确、显示范围宽、分辨力高、输入阻抗大、集成度高、功耗小、抗干扰能力强,可扩展能力强等特点,因此在电压测量、电压校准中有着广泛的应用。 Proteus软件是一种电路分析和实物模拟仿真软件。它运行于Windows *** 作系统上,可以进行仿真、分析(SPICE)各种模拟器件和集成电路,是集单片机和SPICE分析于一身的仿真软件,功能强大,具有系统资源丰富、硬件投入少、形象直观等优点,近年来受到广大用户的青睐。
1 系统概述
1.1 设计任务
利用单片机AT89C51与ADC0808设计一个数字电压表,将模拟信号0~5 V之间的电压值转换成数字量信号,以两位数码管显示,并通过虚拟电压表观察ADC0808模拟量输入信号的电压值,LED数码管实时显示相应的数值量。
1.2 总体方案
数字电压表电路组成框图如图1所示。
本设计中需要用到的电路有电源电路、模/数转换电路、单片机控制电路、显示电路等。设计中需要用到的芯片有AT89C51单片机、ADC-0808、74LS74、LED数码管等。
2 数字电压表的Proteus软件仿真电路设计
待测电压输入信号在ADC0808芯片承受的最大工作电压范围内,经过模/数转换电路实现A/D转换,通过单片机控制电路进行程序数据处理,然后通过七段译码/驱动显示电路实现数码管显示输入电压。
硬件电路原理图如图2所示。
2.1 AT89C51单片机和数码管显示电路的接口设计
利用单片机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口。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)