毕业设计简易数字电压表设计Word格式文档下载.docx
《毕业设计简易数字电压表设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《毕业设计简易数字电压表设计Word格式文档下载.docx(27页珍藏版)》请在冰豆网上搜索。
学号
200707007060
题目:
简易数字电压表设计
指导教师姓名
指导教师职称
主
要
研
究
内
容
本文主要描述采用AT89S51芯片和ADC0809芯片来完成一个简易的数字电压表,能够对输入的0~5V的模拟直流电压进行测量,并通过一个4位一体的7段LED数码管进行显示,测量误差约为0.02V。
从而研究单片机数字电压表使用中的问题以及其解决办法。
参
考
文
献
1.(9787560935911)胡乾斌、《单片机原理与应用》、2006年2月、第二版、华中科技大学出版社、P20~P24。
2.(9787810778374)李广弟朱月秀冷祖祁、《单片机基础》、2007年6月、第一版、北京航空航天大学出版社、P65~P67
3.(978-7-301-10760-7/TN0032)魏立峰王宝兴、《单片机原理及应用技术》、2006年8月、第一版、北京大学出版社、P165~P169。
指
导
教
师
意
见
签名:
年月日
系部意见
年月日
湖南科技经贸职业学院毕业论文任务书
教研室
指导教师
职称
专业(班级)
07级机电一体化机电一班
设计题目
设计内容
和目标
设计要求
简易数字电压表可以测量0~5V的8路输入电压值,并在四位LED数码管上轮流显示或单路选择显示。
测量最小分辨率为0.019V,测最误差约为0.02V
进度安排
1.查阅相关资料进行筛选;
2010.04.12
2.初步构思,确定大的框架;
2010.04.17
3.论文的撰写;
2010.05.21
4.论文格式的修改;
2010.05.25
5.老师的意见及引导;
2010.05.28
6.再次修改,大体完成.2010.06.04
教研室审核
室主任签名:
系部审核
系主任签名:
说明:
此表一式两份,系部和学生各留存一份
湖南科技经贸职业学院毕业论文开题报告
设计(论文)题目
选题背景、意义
研究
内容
采用AT89S51芯片和ADC0809芯片来完成一个简易的数字电压表,能够对输入的0~5V的模拟直流电压进行测量,并通过一个4位一体的7段LED数码管进行显示,测量误差约为0.02V。
技术路线、方案
本系统采用AT89S51单片机芯片配合ADC0809模/数转换芯片构成一个简易的数字电压表。
该电路通过ADC0809芯片采样输入口IN0输入的0~5V的模拟量电压,经过模/数转换后,产生相应的数字量经过其输出通道D0~D7传送给AT89S51芯片的P0口。
AT89S51负责把接收到的数字量经过数据处理,产生正确的7段数码管的显示段码,并通过其P1口经驱动芯片74HC245驱动,再传送给数码管。
同时它还通过其三位I/O口P3.0、P3.1、P3.2产生位选信号,控制数码管的亮灭。
从而读出测量值,以达到测量目的。
计划
进度
指导老师意见
指导教师签名:
开题组
意见
组长签名:
湖南科技经贸职业学院毕业论文成绩考核表
作者姓名
题目
指导教师评阅意见
建议等级:
指导教师(签名):
系部终审意见
(盖章)
审定等级
负责人(签名):
本章重点介绍单片A/D转换器以及由它们构成的基于单片机的数字电压表的工作原理,本文主要描述采用AT89S51芯片和ADC0809芯片来完成一个简易的数字电压表,能够对输入的0~5V的模拟直流电压进行测量,并通过一个4位一体的7段LED数码管进行显示,测量误差约为0.02V。
显示模块主要由7段数码管及相应的驱动芯片(74HC245)组成,显示测量到的电压值。
【关键词】7段数码管ADC0809芯片简易数字电压表。
第一章实现方案
本系统采用AT89S51单片机芯片配合ADC0809模/数转换芯片构成一个简易的数字电压表,原理电路如图1-1所示。
另外,AT89S51还控制着ADC0809的工作。
其ALE管脚为ADC0809提供了1MHz工作的时钟脉冲;
P2.3控制ADC0809的地址锁存端(ALE);
P2.4控制ADC0809的启动端(START);
P2.5控制ADC0809的输出允许端(OE);
P3.7控制ADC0809的转换结束信号(EOC)。
系统框图如图1-2所示。
图1-1电路原理图
图1-2系统框图
1.1硬件选择方案:
一.所需元器件:
1.
AT89S51芯片1块
2.
ADC0809芯片1块
3.
74HC245芯片2块
4.
4位一体数码1个
5.
6MHz晶振1个
6.
33pF电容2个
7.
0.1uF滤波电容2个
8.
10uF电解电容1个
9.
按键开关1个
10.发光二极管1个
11.4.7KΩ精密电位器1个
12.510Ω电阻12个
13.8.2KΩ电阻1个
14.10KΩ电阻1个
15.导线若干
1.2主要元器件的介绍:
(1).模数转换芯片ADC0809:
ADC0809是典型的8位8通道逐次逼近式A/D转换器,其实物如图1-3所示。
它可以和微型计算机直接接口。
ADC0809转换器的系列芯片是ADC0808,可以相互替换。
图1-3ADC0809实物图
1)ADC0809内部逻辑结构
图1-4ADC0809的内部逻辑结构及引脚图
ADC0809的内部逻辑结构如图1-4所示。
图中多路模拟开关可选通8路模拟通道,允许8路模拟量分时输入,并共用一个A/D转换器进行转换。
地址锁存与译码电路完成对A、B、C三个地址位进行锁存与译码,如表1-1所示。
表1-1ADC0809通道选择表
C(ADDC)
B(ADDB)
A(ADDA)
选择的通道
IN0
1
IN1
10
IN2
IN3
IN4
IN5
IN6
IN7
2)ADC0809的引脚
ADC0809芯片为28引脚双列直插式封装,其引脚排列如图1-4所示。
(1)IN0~IN7:
8路模拟量输入通道。
(2)A、B、C:
模拟通道地址线。
这3根地址线用于对8路模拟通道的选择,其译码关系如表1-1所示。
其中,A为低地址,C为高地址,引脚图中为ADDA,ADDB和ADDC。
(3)ALE:
地址锁存允许信号。
对应ALE上跳沿,A、B、C地址状态送入地址锁存器中。
(4)START:
转换启动信号。
START上升沿时,复位ADC0809;
START下降沿时启动芯片,开始进行A/D转换;
在A/D转换期间,START应保持低电平。
本信号有时简写为ST。
(5)D7~D0:
数据输出线。
为三态缓冲输出形式,可以和单片机的数据线直接相连。
D0为最低位,D7为最高。
(6)OE:
输出允许信号。
用于控制三态输出锁存器向单片机输出转换得到的数据。
OE=0,输出数据线呈高阻;
OE=1,输出转换得到的数据。
(7)CLK:
时钟信号。
ADC0809的内部没有时钟电路,所需时钟信号由外界提供,因此有时钟信号引脚。
通常使用频率为500KHz的时钟信号。
(8)EOC:
转换结束信号。
EOC=0,正在进行转换;
EOC=1,转换结束。
使用中该状态信号即可作为查询的状态标志,又可作为中断请求信号使用。
(9)Vcc:
+5V电源,GND:
地。
(10)Vref:
参考电压。
参考电压用来与输入的模拟信号进行比较,作为逐次逼近的基准。
其典型值为+5V(Vref(+)=+5V,Vref(-)=0V)。
3)ADC0809的工作原理:
首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。
此地址经译码选通8路模拟输入之一到比较器。
START上升沿将逐次逼近寄存器复位。
下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。
直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。
当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。
(注意:
ALE信号常与START信号连在一起,这样连接可以在信号的前沿写入地址信号,在其后沿启动A/D转换,图1-5为ADC0809信号的时序配合图)。
图1-5ADC0809信号的时序配合
(2).数据处理及控制芯片AT89S51:
AT89S51是美国ATMEL公司生产的低功耗、高性能CMOS8位单片机。
图1-6和1-7分别为其实物图和内部总体结构图。
AT89S51片内含有4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,看门狗(WDT),两个数据指针,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,S51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89S51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
图1-6AT89S51实物图
1)主要性能参数
与MCS-51产品指令系列完全兼容;
4K字节在系统编程(ISP)Flash闪速存储器;
1000次擦写周期;
4.0~5.5V工作电压范围;
全静态工作模式:
0Hz~33MHz;
三级程序加密锁;
128字节内部RAM;
32个可编程I/O口线;
2个16位的定时/计数器;
6个中断源;
图1-7AT89S51芯片内部总体结构图
全双工串行UART通道;
低工耗空闲和掉电模式;
中断可从空闲模式唤醒系统;
看门狗(WDT)及双数据指针;
掉电标识和快速编程特性;
灵活的在系统编程(ISP-字节或页写模式)。
2)AT89S51的引脚:
AT89S51芯片为40引脚双列直插式封装,其引脚排列如图1-8所示。
图1-8AT89S51的引脚图
(5)P2口:
P2口是一个内部提供上拉电阻的8位双向I/O口,P2口的输出缓冲器可驱动4个TTL逻辑门电路。
对P2口管脚写入“1”后,被内部上拉电阻拉高,可用作输入。
P2口被外部下拉为低电平时,将输出电流,这是由于内部接有上拉电阻的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在访问8位地址外部数据存储器时,P2口线上的内容,在整个访问期间不改变。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
(6)P3口:
P3口是一个内部提供上拉电阻的8位双向I/O口,P3口的输出缓冲器可驱动4个TTL逻辑门电路。
对P3口管脚写入“1”后,被内部上拉电阻拉高,可用作输入。
P3口被外部下拉为低电平时,将输出电流,这是由于内部接有上拉电阻的缘故。
P3口除了一般I/O线的功能外,还具有更为重要的第二功能,如表1-3所示。
P3口同时为FLASH编程和编程校验接收一些控制信号。
(1)V
(1)VCC:
电源电压;
(2)GND:
接地;
(3)P0口:
P0口是一组8位漏极开路双向I/O口,每位引脚可驱动8个TTL逻辑门路。
对P0口的管脚写“1”时,被定义为高阻抗输入。
在访问外部数据存储器或程序存储器时,它可以被定义为数据总线和地址总线的低八位。
在FLASH编程时,P0口作为原码输入口;
当FLASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。
(4)P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口的输出缓冲器可驱动4个TTL逻辑门电路。
对P1口管脚写入“1”后,被内部上拉电阻拉高,可用作输入。
P1口被外部下拉为低电平时,将输出电流,这是由于内部接有上拉电阻的缘故。
在FLASH编程和校验时,P1口作为低八位地址接收。
P1口还具有第二功能,如表1-2所示。
表1-2P1口的第二功能
端口引脚
第二功能
P1.5
MOSI(用于ISP编程)
P1.6
MISO(用于ISP编程)
P1.7
SCK(用于ISP编程)
表1-3P3口的第二功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
/INTO(外部中断0)
P3.3
/INT1(外部中断1)
P3.4
T0(定时器0外部输入)
P3.5
T1(定时器1外部输入)
P3.6
/WR(外部数据存储器写选通)
P3.7
/RD(外部数据存储器读选通)
(7)RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
(8)ALE//RPOG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
(9)/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的信号将不出现。
(10)/EA/VPP:
当保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;
当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
(11)XTAL1:
片内高增益反向放大器的输入及内部时钟工作电路的输入。
(12)XTAL2:
片内高增益反向放大器的输出端。
3)AT89S51与AT89C51的区别
AT89S51在AT89C51的基础上,又增加了许多功能,性能有了较大提升。
(1)ISP在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。
是一个强大易用的功能。
(2)工作频率为33MHz,大家都知道89C51的极限工作频率只有24M,就是说S51具有更高工作频率,从而具有了更快的计算速度。
(3)具有双工UART串行通道。
(4)内部集成看门狗计时器,不再需要像89C51那样外接看门狗计时器单元电路。
(5)双数据指示器。
(6)电源关闭标识。
(7)全新的加密算法,这使得对于89S51的解密变为不可能,程序的保密性大大加强,这样就可以有效的保护知识产权不被侵犯。
(8)兼容性方面:
向下完全兼容51全部字系列产品。
比如8051、89C51等等早期MCS-51兼容产品。
在89C51上一样可以照常运行,这就是所谓的向下兼容。
4)AT89S51的复位电路
AT89S51的复位电路如图1-9所示。
当单片机一上电,立即复位;
另外,如果在运行中,外界干扰等因素使单片机的程序陷入死循环状态或“跑飞”,就可以通过按键使其复位。
复位也是使单片机退出低功耗工作方式而进入正常状态的一种操作。
图1-9复位电路
电容C和电阻R1实现上电自动复位。
增加按键开关S和电阻R2又可实现按键复位功能。
R2的作用是在S按下的时候,防止电容C放电电流过大烧坏开关S的触点。
因保证R1/R2>
10。
一般取C=10uF,R2=100Ω,R1=8.2KΩ。
5)AT89S51与ADC0809的连接
AT89S51与ADC0809的连接电路如图1-10所示。
AT89S51与ADC0809的连接必须注意处理好3个问题:
(1)在START端送一个100ns宽的启动正脉冲;
(2)获取EOC端上的状态信息,因为它是A/D转换的结束标志;
(3)给“三态输出锁存器”分配一个端口地址,也就是给OE端送一个地址译码器的输出信号。
(图见下页)
图1-10AT89S51与ADC0809的连接电路
(3).驱动芯片74HC245
74HC245为三态输出的八组总线收发器,在本实验中作为驱动芯片使用,用于驱动数码管的点亮。
图1-11和图1-12分别为其实物图和引脚图。
(1)A:
A总线端;
(2)B:
B总线端;
(3)/G:
三态允许端(低电平有效);
(4)DIR:
方向控制端;
(5)Vcc:
电源;
(6)GND:
(图1-11)74HC245的实物图(图1-1