基于单片机的数字电压表设计.docx
- 文档编号:5845023
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:10
- 大小:84.31KB
基于单片机的数字电压表设计.docx
《基于单片机的数字电压表设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的数字电压表设计.docx(10页珍藏版)》请在冰豆网上搜索。
基于单片机的数字电压表设计
单片机原理及系统课程设计
评语:
考勤(10)
守纪(10)
过程(40)
设计报告(30)
答辩(10)
总成绩(100)
专业:
电气工程及其自动化
班级:
姓名:
学号:
指导教师:
兰州交通大学自动化与电气工程学院
2013年3月7日
基于单片机的数字电压表设计
摘要
本设计是基于单片机的数字电压表设计,电路中主要使用AT89C51、ADC0809及共阳极数码管组成,AT89C51是主控电路,ADC0809起着A/D转换的功能,能将模拟信号转化成数字信号,而共阳数码管则是显示电压。
该电压表测量范围0-5V的直流电压,其测量误差为0.04%,结构和原理都比较简单,易于操作。
关键字单片机;A/D转换;数码管
Abstract
Thevoltmetermeasuringrangeof0-5VDCvoltage,Thedesignisbasedonsingle-chipdigitalvoltmeterdesign,circuitmainlyonAT89C51andADC0809andcommonanodedigitaltubes,AT89C1isamastercircuit,ADC0809playsthefunctionoftheA/Dconverter,Commonan5odedigitaltubedisplayvoltageislow,strobedigitaltube.themeasurementerroris0.04%,andthestructureandprinciplearerelativelysimple.
KeywordSCM,A/Dconverter,Digitaltube
1引言
本设计目的是为能把输入的模拟信号转变成数字信号,从而使人们能直观的看到。
要求能利用上学期学过的单片机知识来实现数字电压表的设计,其输入模拟电压是从0V到5V,能显示出电压,可以显示到小数点后三位数字。
方法上采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表,利用ADC0809把输入的模拟信号转化成数字信号,从而在利用单片机的程序来实现在数码管上的显示。
2设计方案及原理
该电路可以分为单片机主控模块、A/D转换模块、LED显示模块、电源电路、模拟信号电路等几部分,其系统框图如1所示。
主控模块采用AT89C51单片机,他和晶振电路构成单片机最小系统,晶振给的是12MHZ,电容是30pF。
A/D转换模块采用ADC0809(由于proteus仿真元件库里没有ADC0809,故使用ADC0808芯片),用于A/D转换,它的脉冲是1MHZ,可以把模拟信号转化成数字信号,通过单片机的处理来显示电压。
显示模块采用4位七段共阳数码管,当给低电平时,就选通这个数码管,其就会发光,表示数码管的某一段给了低电平导通发光二极管了。
模拟电压用仿真电路。
图1设计的系统框图
3硬件设计
3.1AT89C51的功能介绍
RST复位输入,高电平有效,是单片机恢复到初始状态。
/PSEN外部程序存储器读选通信号,低电平有效。
ALE是地址锁存信号,高电平有效。
在不访问片外存储器时,89C51自动在ALE线上输出频率为1/6震荡器频率的脉冲序列。
/EA访问程序存储器控制信号,低电平时,访问外部存储器。
XTAL1和XATAL2可以构成晶振电路。
AT89C51的引脚图如图2所示。
图2单片机的引脚图
3.2ADC0809的引脚及功能介绍
ADC0809的引脚图如下图3所示。
(由于proteus仿真元件库里没有ADC0809,且芯片ADC0808与芯片ADC0809不但引脚相同且功能基本相同,故使用ADC0808芯片)
图3ADC0809的引脚图
EOC引脚为转换结束标志,OE引脚为输出允许控制,ALE引脚是地址锁存信号,它们都是高电平有效。
CLK是时钟信号输入端,START是启动A\D转换的引脚,IN0~IN7是8路模拟量输入端。
D0~D7是8位数字量输出端口。
ADDA、ADDB、ADDC都接地时,其选择IN0通道。
本设计中ADC809的最小分辨率为5/255,其中引脚CLK是接上1MHZ的脉冲,以使ADC809正常工作。
3.3LED数码管的选择
共阳和共阴数码管对设计都可,由于个人习惯,故选用了4个七位共阳数码管,共阳极接法是将发光二极管的阳极连在一起构成公共阳极,这样把阴极端输入相应的低电平,则发光二极管就会发亮。
LED数码的段码输入,由并行端口P0产生;位码输入,用并行端口P2低四位产生。
在proteus中,CA表示共阳数码管,而CC则表示共阴数码管。
3.4模拟信号的输入
由于电压信号本身就是一个电气量,不需要传感器之类的元件,proteus中有滑动变阻器和电源等元器件,故直接用它们给个模拟信号,其模拟电压给0到5V。
另又加了个电压表,可以用来计算误差,直观地看到该电压表的精度。
4软件设计
AT89C51与晶振电路构成单片机最小系统,先采集模拟信号,可以通过滑动变阻器来改变模拟信号的大小,把模拟信号再给到ADC0809的IN0口,后ADC0809把模拟信号转化成数字信号,后传输到AT89C51的P3口,然后在经过放大,通过程序是数码管点亮,P1口控制数码管的位码,P2口控制数码管的段码。
4.1流程图如下
主程序流程图如图4所示。
N
Y
Y
图4设计的主程序流程图
该程序有延时模块、AD转换模块、电压放大模块、数码管显示模块,主程序按照该流程图执行,后根据EOC的状态来判断AD转换是否结束,最后达到显示电压的目的。
5系统仿真及其调试
在proteus中,找到各个元件,并模拟仿真,并用软件生成hex文件,后把该程序导入51单片机中,其仿真图如下图5所示。
图5仿真图
6总结
该设计方法比较简单,容易操作,利用元器件也比较少,当我们遇到一个问题时,要抓住问题的关键,这样才能找到本源,设计出较简单的电路。
该程序是我在课本上找的,但是在proteus上仿真时就是没办法正常显示,我就开始改程序,但是一改就会出现好多错误,后来老师让我一个模块一个模块改程序,终于有所突破了。
当我们遇到一件较复杂的事,要想把复杂的事分成多个简单的事来做,这样就一定会有收获的。
另外,有时候电路图忘保存了,就会使自己长时间的努力白费,我们就要心细,有耐心,才能很好地做好一件事情。
参考文献
[1]王思明.单片机原理及应用系统设计[M].北京:
科学出版社,2012.5
[2]王毓银.数字电路逻辑设计[M].北京:
高等教育出版社,2005.12
[3]于殿泓王新年.单片机原理与程序设计实验教程[M].西安:
西安电子科技大学出版社,2007.5
附录
源程序
#include
#defineucharunsignedchar
#defineuintunsignedint
#defineAD_dataP3
#defineLED_portP0
#defineLED_posP1
sbitSTART=P2^5;
sbitOE=P2^6;
sbitEOC=P2^7;
sbitALE=P2^4;
uintDCtemp=0;
ucharcodeLED_seg[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
ucharcodepos[4]={0x01,0x02,0x04,0x08};
voidDelay(uchart)//延时函数
{
uchari,j,k;
for(i=0;i for(j=0;j<20;j++) for(k=0;k<20;k++) ; } ucharAD_get()//AD0808控制,实现模数转换,采集到的数值 { ucharDCdata; START=0; ALE=1; START=1; START=0; ALE=0; while(EOC==0) ; OE=1; DCdata=AD_data; OE=0; Delay(10); returnDCdata; } voidAD_shift(ucharDCdata)//将ADC0808读取数值转化为电压值 { uchari; floatDC=0; for(i=0;i<8;i++) { if(DCdata&1< { DC+=(1< } } DCtemp=(int)DC; } voidvalue_shift(ucharvalue[])//将电压值的每一位放到数组中 { value[0]=DCtemp/1000; value[1]=DCtemp/100%10; value[2]=DCtemp/10%10; value[3]=DCtemp%10; } voidDisplay(ucharvalue[])//数码管显示 { uchari; for(i=0;i<4;i++) { LED_pos=pos[i]; if(i==0) LED_port=LED_seg[value[i]]+0x80; else LED_port=LED_seg[value[i]]; Delay (1); } } voidmain() { ucharvalue[4]; while (1) { AD_shift(AD_get()); value_shift(value); Display(value); } }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 数字 电压表 设计