摘要:本文重点介绍了一种基于单片机的数字电压表设计方案,该电压表可以将测量的直流电压,通过数码管显示出测量数值。
关键词:单片机;数字电压表;ADC0809;LCD1602
引言
数字电压表是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统。
本次设计任务及功能要求是:基于单片机的电压测量系统,要求实现功能:(1)实现对输入电压值0-20V的测量;(2)精度达到0.05V:(3)实现200MV、2V、20V档位的自动切换;(4)使用液晶屏幕LCD1602进行显示。
1硬件设计
硬件系统主要有数据输入模块、A/D模块,控制模块和显示模块组成,如图1所示。
数据输入模块由运放LM324和模拟开关74HC4051组成,输入测量电压从最左端输入,以输入电压的范围在幅值200MV档为例,控制开关BA=10,X2=X,电压直接输出到IN端后输出到A/D中,通道X1、X0处于关闭状态。
A/D模块由ADC0809,7805组成,其中7805芯片主要为ADC0809提供5V的电源供电。12号引脚REF(+)为基准正电压输入端,必须保证是标准的5V电压输入。
控制模块控制芯片89S52,它的P3.0接ADC0809的START端,P3.1接OE端,P3.2接EOC端,P3.3接时钟CLK端,P3.4接ALE端,9脚接复位电路;18,19脚外接12MHZ晶振;P0口接LCD1602的数据端,用于传输数据让液晶屏显示;P2.5,P2.6,P2.7分别接LCD1602的RS、RW、E控制端。
显示模块显示的液晶屏LCD1602,其中3脚VEE用于调节显示的对比度,接滑动变阻器接地;4脚RS为数据指令选择端接单片机的P1.2口;5脚RW为读写控制端,接单片机的P1.1口;6脚E为使能端,接单片机的P1.0口;7—14脚为数据输入和指令传送端;15,16脚接+5V和地。
2软件设计
主程序主程序流程图如图2所示
初始化子程序初始化程序主要包括下面几个部分:设置中断,开启A/D转换器,对液晶屏的初始化以及对一些中间变量的初始化。
转换子程序当模拟量送至IN0后,CPU将标识该通道编码的三位地址信号经数据线或地址线输入到ADDC、ADDB、ADDA引脚上。地址锁存允许ALE锁存这三位地址信号,启动命令START启动A/D转换。转换开始,EOC变低电平,转换结束,EOC变为高电平。EOC可作为中断请求信号。转换结束后,可通过执行IN指令,设法在输出允许OE脚上形成一个正脉冲,打开三态缓冲器把转换的结果输入到DB,一次A/D转换便完成了。
3结语
该设计出的数字电压表具有电路结构简单,组成元件少,设计成本低,测量精度高等特点。整体设计思路是将外界电压模拟量输入输入端,然后通過模数转换器ADC0809转换变为数字信号传输给单片机,然后由单片机根据该数字信号控制数码管发光,显示测量数值。
参考文献:
[1]吴金戎,沈庆阳8051单片机实践与应用[M].清华大学出版社,2003.
[2]付家才单片机控制工程实践技术[M].化学工业出版社,2004.5
[3]赵波,杨迎春.基于A/D转换器件ADC0809的数字电压表设计[J].内蒙古石油化工,2010,(23)62-63.
[4]项丽萍,张志刚.基于51单片机的数字电压表的设计与仿真[J].洛阳师范学院学报,2012,3(02):39-41.
基金项目:淄博市校城融合发展计划项目——《基于“互联网+”的智能电子创新平台》(2019ZBXC127)。
作者简介:李轩(1981-),男,山东淄博人,硕士研究生,讲师,研究方向:电力系统自动化。
(淄博职业学院 山东淄博 255314)