温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
2023
基于
单片机
简易
数字
电压表
设计
基于单片机的简易数字电压表的设计
本文介绍了一种基于单片机的简易数字电压表的设计。该设计主要由三个模块组成:A/D转换模块,数据处理模块及显示模块。A/D转换主要由芯片ADC0808来完成,它负责把采集到的模拟量转换为相应的数字量在传送到数据处理模块。数据处理那么由芯片AT89C51来完成,其负责把ADC0808传送来的数字量经过一定的数据处理,产生相应的显示码送到显示模块进行显示;此外,它还控制着ADC0808芯片工作。
该系统的数字电压表电路简单,所用的元件较少,本钱低,且测量精度和可靠性较高。此数字电压表可以测量0-5V的1路模拟直流输入电压值,并通过一个四位一体的7段数码管显示出来。
关键词 单片机;数字电压表;A/D转换;AT89C51;ADC0808
Design of Simple Digital Voltmeter Based on Single-chip Microcontroller
Tian Mingming
Abstract This paper which introduces a kind of simple digital voltmeter is based on single-chip microcontroller design. The circuit of the voltage meter is mainly consisted of three mould pieces: A/D converting mould piece, A/D converting is mainly completed by the ADC0808, it converts the collected analog data into the digital data and transmits the outcome to the manifestation controlling mould piece. Data processing is mainly completed by the AT89C51 chip, it processes the data produced by the ADC0808 chip and generates the right manifestation codes, also transmits the codes to the manifestation controlling mould piece. Also, the AT89C51 chip controls the ADC0808 chip to work.
The voltmeter features in simple electrical circuit, lower use of elements, low cost, moreover, its measuring precision and reliability. The voltmeter is capable of measuring voltage inputs from 1 route ranging from 0 to 5 volt, and displaying the measurements though a digital code tube of 7 pieces of LED.
Keywords Single-chip microcontroller; Digital voltmeter; A/D converter; AT89C51; ADC0808
目 录
1 引言 1
2 设计总体方案 2
2.1设计要求 2
2.2 设计思路 2
2.3 设计方案 2
3 硬件电路设计 3
3.1 A/D转换模块 3
3.2 单片机系统 7
3.3 复位电路和时钟电路 9
3.4 LED显示系统设计 11
3.5 总体电路设计 13
4 程序设计 15
4.1 程序设计总方案 15
4.2 系统子程序设计 15
5 仿真 17
5.1 软件调试 17
5.2 显示结果及误差分析 17
结 论 20
参考文献 21
附录 程序代码 22
致谢 25
1 引言
在电量的测量中,电压、电流和频率是最根本的三个被测量,其中电压量的测量最为经常。而且随着电子技术的开展,更是经常需要测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器。数字电压表简称DVM,它是采用数字化测量技术,把连续的模拟量转换成不连续、离散的数字形式并加以显示的仪表。由于数字式仪器具有读数准确方便、精度高、误差小、测量速度快等特而得到广泛应用[1]。
传统的指针式刻度电压表功能单一,进度低,容易引起视差和视觉疲劳,因而不能满足数字化时代的需要。采用单片机的数字电压表,将连续的模拟量如直流电压转换成不连续的离散的数字形式并加以显示,从而精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC实时通信。数字电压表是诸多数字化仪表的核心与根底[2]。以数字电压表为核心,可以扩展成各种通用数字仪表、专用数字仪表及各种非电量的数字化仪表。目前,由各种单片机和A/D转换器构成的数字电压表作全面深入的了解是很有必要的。
最近的几十年来,随着半导体技术、集成电路〔IC〕和微处理器技术的开展,数字电路和数字化测量技术也有了巨大的进步,从而促使了数字电压表的快速开展,并不断出现新的类型[4]。数字电压表从1952年问世以来,经历了不断改良的过程,从最早采用继电器、电子管和形式开展到了现在的全固态化、集成化〔IC化〕,另一方面,精度也从0.01%-0.005%。
目前,数字电压表的内部核心部件是A/D转换器,转换的精度很大程度上影响着数字电压表的准确度,因而,以后数字电压表的开展就着眼在高精度和低本钱这两个方面[3]。
本文是以简易数字直流电压表的设计为研究内容,本系统主要包括三大模块:转换模块、数据处理模块及显示模块。其中,A/D转换采用ADC0808对输入的模拟信号进行转换,控制核心AT89C51再对转换的结果进行运算处理,最后驱动输出装置LED显示数字电压信号[11]。
2 设计总体方案
2.1设计要求
⑴以MCS-51系列单片机为核心器件,组成一个简单的直流数字电压表。
⑵采用1路模拟量输入,能够测量0-5V之间的直流电压值。
⑶电压显示用4位一体的LED数码管显示,至少能够显示两位小数。
⑷尽量使用较少的元器件。
2.2 设计思路
⑴根据设计要求,选择AT89C51单片机为核心控制器件。
⑵A/D转换采用ADC0808实现,与单片机的接口为P1口和P2口的高四位引脚。
⑶电压显示采用4位一体的LED数码管。
⑷LED数码的段码输入,由并行端口P0产生:位码输入,用并行端口P2低四位产生。
2.3 设计方案
硬件电路设计由6个局部组成; A/D转换电路,AT89C51单片机系统,LED显示系统、时钟电路、复位电路以及测量电压输入电路。硬件电路设计框图如图1所示。
时钟电路
复位电路
A/D转换电路
测量电压输入
显示系统
AT89C51
P1
P2
P2
P0
图1 数字电压表系统硬件设计框图
3 硬件电路设计
3.1 A/D转换模块
现实世界的物理量都是模拟量,能把模拟量转化成数字量的器件称为模/数转换器〔A/D转换器〕,A/D转换器是单片机数据采集系统的关键接口电路,按照各种A/D芯片的转化原理可分为逐次逼近型,双重积分型等等。双积分式A/D转换器具有抗干扰能力强、转换精度高、价格廉价等优点。与双积分相比,逐次逼近式A/D转换的转换速度更快,而且精度更高,比方ADC0809、ADC0808等,它们通常具有8路模拟选通开关及地址译码、锁存电路等,它们可以与单片机系统连接,将数字量送到单片机进行分析和显示。一个n位的逐次逼近型A/D转换器只需要比拟n次,转换时间只取决于位数和时钟周期,逐次逼近型A/D转换器转换速度快,因而在实际中广泛使用[1]。
3.1.1 逐次逼近型A/D转换器原理
逐次逼近型A/D转换器是由一个比拟器、A/D转换器、存储器及控制电路组成。它利用内部的存放器从高位到低位一次开始逐位试探比拟。
转换过程如下:
开始时,存放器各位清零,转换时,先将最高位置1,把数据送入A/D转换器转换,转换结果与输入的模拟量比拟,如果转换的模拟量比输入的模拟量小,那么1保存,如果转换的模拟量比输入的模拟量大,那么1不保存,然后从第二位依次重复上述过程直至最低位,最后存放器中的内容就是输入模拟量对应的二进制数字量[5]。其原理框图如图2所示:
顺序脉冲发生器
逐次逼近存放器
ADC
电压
比拟器
输入电压
输入数字量
图2 逐次逼近式A/D转换器原理图
3.1.2 ADC0808 主要特性
ADC0808是CMOS单片型逐次逼近式A/D转换器,带有使能控制端,与微机直接接口,片内带有锁存功能的8路模拟多路开关,可以对8路0-5V输入模拟电压信号分时进行转换,由于ADC0808设计时考虑到假设干种模/数变换技术的长处,所以该芯片非常适应于过程控制,微控制器输入通道的接口电路,智能仪器和机床控制等领域[5]。
ADC0808主要特性:8路8位A/D转换器,即分辨率8位;具有锁存控制的8路模拟开关;易与各种微控制器接口;可锁存三态输出,输出与TTL兼容;转换时间:128μs;转换精度:0.2%;单个+5V电源供电;模拟输入电压范围0- +5V,无需外部零点和满度调整;低功耗,约15mW[6]。
3.1.3 ADC0808的外部引脚特征
ADC0808芯片有28条引脚,采用双列直插式封装,其引脚图如图3所示。
图3 ADC0808引脚图
下面说明各个引脚功能:
IN0-IN7〔8条〕:8路模拟量输入线,用于输入和控制被转换的模拟电压。
地址输入控制〔4条〕:
ALE:地址锁存允许输入线,高电平有效,当ALE为高电平时,为地址输入线,用于选择IN0-IN7上那一条模拟电压送给比拟器进行A/D转换。
ADDA,ADDB,ADDC:3位地址输入线,用于选择8路模拟输入中的一路,其对应关系如表1所示: