基于ADC0809的数字电压表

出处:tyw 发布于:2012-08-24 14:11:24

  摘要:本设计用ADC0809来进行电压的采集及模数转换,用AT89S52单片机来做控制单元,进行电压的测量和显示。该数字电压表具有电路简单,成本低等优点,可以方便地进8路A/D转换量的测量,并可选择在数码管上滚动显示或单路显示的不同工作模式。

  1.引言

  本设计待测的输入电压为8路,电压范围为0~5V,使用目前广泛使用的AT89S52来做控制系统,用ADC0809来进行模拟电压的采集及模数转换,实现采集8路数据,并将结果在四位一体数码管上进行滚动显示或单独显示的功能,测量的分辨率为0.019V.

  2 硬件设计

  2 . 1 系统构成

  该系统主要包括几大模块:数据采集模块、A/D转换模块、控制模块、显示模块、按键模块等。采用AT89S52作为控制模块,A/DC0 8 0 9作为A/D转换模块的,ADC0809本身具有8路模拟量输入端口,通过C、B、A,3位地址输入端,能从8路中选择一路进行转换。如每隔一段时间依次轮流改变3位地址输入端的地址,就能依次对8路输入电压进行测量。LED数码管的显示采用软件译码动态显示,通过按键模块的操作可以选择8路循环显示,也可以选择某条单路显示。

  2 . 2 数据采集电路

  数据采集电路是系统的主要组成部分,ADC0 8 09具有8路模拟量输入通道IN0~IN7,通过3位地址输入端C、B、A(引脚23~25)进行选择。引脚22为地址锁存控制端ALE,当输入为高电平时,C、B、A引脚输入的地址锁存于ADC0809内部锁存器中,经内部译码电路译码选中相应的模拟通道。引脚6为启动转换控制端START,当输入一个2 μ s宽的高电平脉冲时,就启动ADC0809开始对输入通道的模拟量进行转换。引脚7为A/D转换器,当开始转换时,EOC信号为低电平,经过一段时间,转换结束,转换结束信号EOC输出高电平,转换结果存放于ADC0809内部的输出数据寄存器中。引脚9脚为A/D转换数据输出允许控制端OE,当OE为高电平时,存放于输出数据锁存器中的数据通过ADC0809的数据线D0~D7输出。引脚10为ADC0809的时钟信号输入端CLOCK.在连接时,ADC0809的数据线D0~ D7与AT89S52的P1口相连接,ADC0809的地址引脚、地址锁存端ALE、启动信号START、数据输出允许控制端OE分别与AT89S51的P3口相连接,转换结束信号EOC与AT89S52的P3.2相连接。时钟信号输入端CLOCK信号,由单片机的地址锁存信号ALE得到,采集电路如图1所示。

图1 数据采集电路

图1 数据采集电路

  3 软件设计

  3 . 1 主程序

  主程序包含初始化部分,调用A/D转换子程序和调用显示子程序,如图2所示。

图2 主程序流程图

图2 主程序流程图

  初始化部分包含存通道数据缓冲区初始化和显示缓冲区初始化。另外,对于单路显示和循环显示,系统设置了一个初始标志位。

  初始化时标志位设置为0,默认为循环显示,当它为1时,则单路显示,标志位通过外部按键控制。

  3 . 2 数据处理子程序

  ADC0809转换之后输出的结果是8位二进制数。由公式(1)可知,当ADC0809输出为(111111111)时,输入电压值VI=5.00V;当ADC0809输出为(00000000)时,输入电压值为VI=0.00V;当ADC0809输出为(10000000)时,输入电压值VI=2.50V.由于单片机进行数学运算时结果只取整数部分,因此当输出为(10000000)时计算出的电压值VI=2.00V,很不准确。为了提高度,必须把小数部分保留,具体方法是:如果小数点后保留两位,在运算的时候分子乘以100,保留三位就乘以1000.本设计是在小数点后保留两位,运算方式如公式(2)。

  VI=Dout /255×5 (1)

  VI=Dout/255×5×100=Dout×100/51 (2)

  由式(2)可知当ADC0809输出为(10000000)时,单片机运算结果为250.然后由单片机将250除以10得到商为25,余数为0,再将25除以10得到商为2,余数为5.由此得到较为的数值。

  4 结语

  本设计是基于ADC0809设计的电压检测装置。采用AT89S52单片机进行数据控制、处理,结构简单,元件较少,成本较低,软件采用C语言实现,程序简单可读写性强,效率高。能够实现八路待测电压测量,还能够自由选择要测量的通道,与传统的电路相比,具有方便操作、处理速度快、稳定性高、性价比高的优点,具有一定的使用价值。

参考文献:

[1]. ADC0809 datasheet https://www.dzsc.com/datasheet/ADC0809_123186.html.
[2]. AT89S52 datasheet https://www.dzsc.com/datasheet/AT89S52_970343.html.
[3]. AT89S51 datasheet https://www.dzsc.com/datasheet/AT89S51_970858.html.

关键词:基于ADC0809的数字电压表

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:
技术客服:

0571-85317607

网站客服电话

0571-85317606

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!