新闻中心

EEPW首页 > 电源与新能源 > 设计应用 > 基于YL-236单片机实训装置的数字电压表的设计方案

基于YL-236单片机实训装置的数字电压表的设计方案

作者:时间:2016-12-09来源:网络收藏

一、引言

本文引用地址:http://www.eepw.com.cn/article/201612/328509.htm

数字电压表采用数字化测量技术,可以将模拟量转换成数字量并加以显示。由于其具有测量精度高、抗干扰能力强等优点,被广泛应用于工业自动化仪表领域。下面本文就以亚龙YL-236单片机实训装置为平台,介绍数字电压表的实现方法。

二、方案总体设计

本设计选择AT89C51单片机作为核心控制器件,采用ADC0809实现A/D转换,用3位LED数码管数字来显示采集电压(范围0~5V)。设计框图如图1所示。

三、硬件部分设计

1.转换芯片ADC0809

ADC0809具有8路模拟输入端口,8路模拟开关分时选通8个模拟通道,转换后的8位数字量锁存到三态输出锁存器中,在输出允许的情况下,可以从8条数据线D7~D0上读出,并可直接与单片机接口相连。ADC0809其引脚排列和具体功能可参考ADC0809说明文件,这里不再详述。

2.ADC0809与单片机的硬件连接

单片机与ADC0809接口电路如图2所示。

74HC02可实现4路2输入或非门功能。连接时,将主机模块中单片机的P0.0~P0.7接到ADC0809的数据输出端D0~D7,用来接收ADC0809转换输出的数据;将单片机的P2.5、P3.6、P3.7接到ADC0809的CS、WR、RD端,作为A/D采样的控制联络线;将ADC0809的A、B、C接到ADC0809的D0、D1、D2口,通过P0的控制来选择ADC的采样通道。

3.数字电压表硬件模块接线

用YL-236实训装置实现本任务要求的硬件模块接线如图3所示。该电路由主机模块(MCU01)、显示模块(MCU04)和ADC/DAC模块(MCU07)组成。将时钟源1MHZ接到ADC电路的CLK口,由模拟电压源提供0~5V输入电压。

地址锁存允许信号ALE由P3.6控制通道地址选择,以WR作写选通信号。我们将ALE信号与START信号接在一起,这样使得AD0809在锁存通道地址的同时,也启动了A/D转换。

将主机模块中单片机的P0口作为数码管显示的段码使用,接到数码管的a~dp段端,将单片机的P3.6、P2.6、P2.7分别接到数码管的WR、CS2、CS1端,对数码管进行动态扫描显示。

四、软件部分设计

1.AD转换

图4为利用ADC0809进行A/D转换的程序流程图。

A/D转换后的数据应传给单片机进行处理。数据传送之前必须确认A/D转换已经完成。常用的有以下几种方法:

(1)定时传送方式;

(2)查询法;

(3)中断控制法。

不管采用哪种方式,只要一旦确定转换完成,即可通过指令进行数据传送。

启动信号START启动后开始模数转换。对于ADC0809来说,当时钟频率一定时,其A/D转换时间是固定的(微秒级)。因此,我们可以设计一个延时函数delay(),等待一段时间(远大于A/D转换的时间),延时时间到时转换肯定已经完成了,之后就可以进行数据传送了。

参考流程图,我们可以编写对模拟通道0输入的模拟电压进行A/D转换的C语言程序,关键语句如下:

2.主函数流程图

主函数流程图如图5所示。

编程时应注意,变量vol单位为毫伏。

因为ADC0809为8位模数转换器,输入模拟电压最大值为5V,即5000mV,所以分辨率为5000mV/28,因此程序中测量的电压值为采样AD值乘以5000mV/255,再将所得的数依次通过数码管显示。完成后可改变输入直流电压值,观察输入电压的变化情况。

五、总结

本方案详细介绍了数字电压表系统的设计,重点介绍了以YL-236亚龙单片机实训装置为平台的硬件连接和软件设计的方案,系统具有转换速度快、精度高、性能稳定等优点,且电路简单,工作可靠,具有很好的实用价值。



关键词: YL-236单片

评论


技术专区

关闭