毕业设计数字电压表.docx

上传人:b****3 文档编号:27199641 上传时间:2023-06-28 格式:DOCX 页数:21 大小:267.46KB
下载 相关 举报
毕业设计数字电压表.docx_第1页
第1页 / 共21页
毕业设计数字电压表.docx_第2页
第2页 / 共21页
毕业设计数字电压表.docx_第3页
第3页 / 共21页
毕业设计数字电压表.docx_第4页
第4页 / 共21页
毕业设计数字电压表.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

毕业设计数字电压表.docx

《毕业设计数字电压表.docx》由会员分享,可在线阅读,更多相关《毕业设计数字电压表.docx(21页珍藏版)》请在冰豆网上搜索。

毕业设计数字电压表.docx

毕业设计数字电压表

江西理工大学应用科学学院

控制系统综合课程设计报告

题目:

数字电压表

姓名:

xxx

学号:

xx号

专业班级:

xxxxxxxxx班

指导教师:

xxxxx

完成时间:

xxxx年xx月xx日

 

设计报告

综合测试

平时

总评

格式

(10分)

内容

(10分)

图表

(5分)

功能测试

(35分)

答辩

(20分)

考勤

(20分)

指导教师签名:

目录

绪论1

第一章课题的设计要求、目的、意义3

1.1课题的设计要求:

3

1.2课题的设计目的与意义:

3

第2章系统总体方案选择与说明4

2.1通道转换方案设计4

2.2显示部分方案设计4

2.3P89V51RB2单片机4

2.3.1P89V51RB2单片机概述4

2.3.2P89V51RB2单片机功能框图与引脚配置5

2.3.3P89V51RB2单片机的特性6

第3章系统结构框图与工作原理7

3.1系统结构框图7

3.2工作原理7

第4章各单元硬件设计说明及计算方法8

4.1单片机的选择8

4.2时钟电路与复位电路的设计8

4.3LED显示电路设计与器件选择10

4.4A/D转换电路和测量电路的设计11

第5章软件设计与说明12

5.1系统软件设计(流程图)12

5.2程序设计12

第6章操作说明与调试结果14

6.1操作说明14

6.2调试结果与性能分析15

课程设计总结和心得体会16

附录1系统原理图17

附录2源程序18

参考文献20

绪论

随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成CPU、存储器、定时器/计数电路,这就很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。

数字电压表(DigitalVoltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。

与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。

本章重点介绍单片A/D转换器以及由它们构成的基于单片机的数字电压表的工作原目前,由各种单片A/D转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力理。

本设计AT89C51单片机的一种电压测量电路,该电路采用ADC0808本文介绍一种基于A/D转换电路,测量范围直流0~5V的4路输入电压值,并在四位LED数码管上显示或单路选择显示。

测量最小分辨率为0.019V,测量误差约为正负0.02V。

数字电压表出现在50年代初,60年代末发起来的电压测量仪表,简称DVM。

它采用的是数字化测量技术,把连续的模拟量,也就是连续的电压值转变为不连续的数字量,加以数字处理然后再通过显示器件显示。

这种电子测量的仪表之所以出现,一方面是由于电子计算机的应用逐渐推广到系统的自动控制信实验研究的领域,提出了将各种被观察量或被控制量转换成数码的要求,即为了实时控制及数据处理的需要;另一方面,也是电子计算机的发展,带动了脉冲数字电路技术的进步,为数字化仪表的出现提供了条件。

所以,数字化测理仪表的产生与发展与电子计算机的发展是密切相关的;同时,为革新电子测量中的烦锁和陈旧方式也催促了它的飞速发展,如今,它又成为向智能化仪表发展的必要桥梁。

如今,数字电压表已绝大部分取代了传统的模拟指针式电压表。

因为传统的模拟指针式电压表功能单一、精度低,读数的时候也非常不方便,很容易出错。

而采用单片机的数字电压表由于测量精度高、速度快,读数时也非常方便,抗干扰能力强,可扩展性强等优点已被广泛的应用于电子及电工的测量、工业自动化仪表、自动测试系统等智能化测量领域,显示出强大的生命力。

数字电压表最初是伺服步进电子管比较式,其优点是准确度比较高,但是采样速度慢,重量达几十公斤,体积大。

继之出现了斜波式电压表,它的速度方面稍有提高,但是准确度低,稳定性差,再后来出现了比较式仪表改进逐次渐近式结构,它不仅保持了比较式准确度高的优点,而且速度也有了很大的提高,但它有一缺点是抗干扰能力差,很容易受到外界各种因素的影响。

随后,在斜波式的基础上双引伸出阶梯波式,它的唯一的进步是成本降低了,可是准确宽,速以及抗干扰能力都未能提高。

而现在,数字电压表的发展已经是非常的成熟,就原理来讲,它从原来的一,二种已发展到多种,在功能上讲,则从测单一参数发展到能测多种参数;从制作元件来看,发展到了集成电路,准确度已经有了很大的提高,精度高达1NV;读数每秒几万次,而相对以前,它的价格也有了降低了很多。

目前实现电压数字化测量的方法仍然模-数(A/D)转换的方法,而数字电压表种类繁多,型号新异,目前国际仍未有统一的分类方法。

而常用的分类方法有如下几种:

1.按用途来分:

有直流数字电压表,交、直流数字电压表,交直流万用表等。

2.按显示位数来分:

有4位,5位,6位,7位,8位等。

3.按测量速度来分:

有低准确度,中准确度,高准确度等。

4.按测量速度来分:

有低速,中速,高速,超高速等。

但在日常生活中,数字电压表一般是按照原理不同进行分类的,目前大致分为以下几类:

比较式,电压——时间变换式,积分式等。

在电量的测量中,电压、电流和频率是最基本的三个被测量。

其中,电压量的测量最为经常。

随着电子技术的发展,更是经常需要测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器。

另外,由于数字式仪器具有读数准确方便、精度高、误差小、灵敏度高和分辨率高、测量速度快等特点而倍受用户青睐,数字式电压表就是基于这种需求而发展起来的,是一种必不可少的电子测量仪表。

第一章课题的设计要求、目的、意义

1.1课题的设计要求:

设计并制作用单片机控制一个数字式电压表。

本电压表为8路模拟量输入,范围为0~5V,将采集的数据转换成工程量在LED数码显示器上显示,测量最小分辨率为0.02V,测量误差为±0.02V。

1.2课题的设计目的与意义:

课程设计是让我熟练掌握了课本上的一些理论知识,课程设计也是一个学习新知识、巩固加深所学课本理论知识的过程,它培养了我们综合运用知识的能力,独立思考和解决问题的能力。

加深我们对单片机原理与应用课程的理解。

 

第2章系统总体方案选择与说明

实现数字电压表的方案很多,目前广泛采用的时基于P89V51RB2系列逻辑器件,本章将介绍基于单片机实现的方案

2.1通道转换方案设计

考虑到ADC0809CCN的8路模拟量输入本质上也是模拟开关,因此可以利用其8个模拟通道中的3个作为通道转换器,即根据通道对应的电压测量范围确定对应的电压方法倍数设计对应的放大电路。

利用手动开关实现通道转换。

该方案可简化控制程序,消减系统开销。

缩短反应时间,不足之处在于操作麻烦。

综上所述:

方案所需元件少、成本低且易于实现,则选此方案。

2.2显示部分方案设计

单片机的P0、P3.0~P3.7端口来驱动控制三位数码管。

P0端口用作A/D转换数据读入,P2端口用作ADC0809CCN的A/D转换控制。

综上所述,方案所需元件少、成本低,则选择此方案。

2.3P89V51RB2单片机

2.3.1P89V51RB2单片机概述

P89V51RB2/RC2/RD2是一款增强型80C51微控制器,包含16/32/64kBFlash和1024字节的数据RAM。

  P89V51RB2/RC2/RD2的典型特性是它的X2方式选项。

利用该特性,设计工程师可使应用程序以传统的80C51时钟频率(每个机器周期包含12个时钟)或X2方式(每个机器周期包含6个时钟)的时钟频率运行,选择X2方式可在相同时钟频率下获得2倍的吞吐量。

从该特性获益的另一种方法是将时钟频率减半而保持特性不变,这样可以极大地降低电磁干扰(EMI)。

  Flash程序存储器支持并行和串行在系统编程(ISP)。

并行编程方式提供了高速的分组编程(页编程)方式,可节省编程成本和上市时间。

  ISP允许在软件控制下对成品中的器件进行重复编程。

应用固件的产生/更新能力实现了ISP的大范围应用。

P89V51RB2/RC2/RD2也可采用在应用中编程(IAP),允许随时对Flash程序存储器重新配置,即使是应用程序正在运行也不例外。

2.3.2P89V51RB2单片机功能框图与引脚配置

功能框图

 

引脚配置

P89V51RB2单片机引脚

2.3.3P89V51RB2单片机的特性

*80C51核心处理单元;

*5V的工作电压,操作频率为0~40MHZ;

*具有ISP(在系统编程)和IAP(在应用中编程功能;

*通过软件或ISP选择支持12时钟(默认)或6时钟的工作模式;

*SPI(串行外围接口)和增强型UART;

*PCA(可控编程计数器阵列),具有PWM和捕获/比较功能;

*4个8位I/O口,含有3个高电流PI口(每个I/O的电流为16mA);

*3个16位定时器/计数器;

第3章系统结构框图与工作原理

3.1系统结构框图

根据项目要求,确定该系统的设计方案,图3-1为该方案的硬件电路设计框图。

由6个部分组成,即单片机、时钟电路、复位电路、LED显示电路、A/D转换器和测量电压输入电路

图3-1系统结构框图

3.2工作原理

系统采用12M晶振产生脉冲做P89V51RB2的内部时钟信号,通过软件设置单片机的内部定时器T0产生中断信号。

利用中断设置单片机的P2.4口取反产生脉冲做P89V51RB2的时钟信号。

通过按键选择八路通道中的一路,将该路电压送入ADC0809CCN相应通道,单片机软件设置ADC0809CCN开始A/D转换,转换结束ADC0809CCN的EOC端口产生高电平,同时将ADC0809CCN的EO端口置为高电平,单片机将转换后结果存到片内RAM。

系统调出显示子程序,将保存结果转化为0.00-5.00V分别保存在片内RAM;系统调出显示子程序,将转化后数据查表,输出到LED显示电路,将相应电压显示出来,程序进入下一个循环。

 

第4章各单元硬件设计说明及计算方法

根据设计要求与思路,确定该系统的设计方案。

硬件电路由4个部分组成,即单片机时钟电路、复位电路、3位显示器电路、A/D转换电路和测量电路。

4.1单片机的选择

系统设计使用MCS-51单片机8051芯片。

8051芯片由以下部分组成:

中央处理器、256单元的内部数据存储器、4KB的程序存储器、定时器/计数器、四个八位的I/O口,中断控制系统及时钟电路。

图4.1所示为采用双列直插式封装的8051AH芯片管脚图。

图4.180C51芯片管脚图

4.2时钟电路与复位电路的设计

时钟电路是计算机最核心的部分,它控制着计算机的工作MCS-51单片机允许的时钟频率典型值为12MHZ。

80C51单片机内部有一个高增益反相放大器,用于构成振荡器。

反相放大器的输入端为XTAL1,输出端为XTAL2,分别是80C51的19脚和18脚。

在XTAL1和XTAL2两端跨接石英晶体及两个电容就可以构成稳定的自激振荡器。

石英晶振起振后要能在XTAL2线上输出一个3V左右的正弦波,使MCS-51片内的OCS电路按石英晶振相同频率自激震荡。

通常,OCS的输出时钟频率fosc为0.5MHZ~16MHZ,典型值为12MHZ电容器C1和C2通常取30pF左右,对震荡频率有微调作用。

调节它们可以达到微调震荡周期fosc的目的。

单片机的RST管脚为主机提供一个外部复位信号输入端口。

复位信号是高电平有效,高电平有效的持续时间应为2个机器周期以上。

单片机的复位方式有上电自动复位和手工复位两种。

图4-2所示是51系列单片机常用的上电复位电路,只要Vcc上升时间不超过1ms,它们都能很好地工作。

复位以后,单片机内各部件恢复到初始状态。

电阻电容器件的参考值:

R1=200Ω,R2=1KΩ,C3=22μF。

RET按键可以选择专门的复位按键,也可以选择轻触开关。

电路图如图4-2所示。

图4-2时钟电路与复位电路

4.3LED显示电路设计与器件选择

单片机应用系统中,通常都需要进行人机对话。

这包括人对应用系统的状态干预与数据输入,以及应用系统向人们显示运行状态与运行结果。

LED显示器的驱动是一个非常重要的问题,此设计不采用段驱动芯片和位驱动芯片,直接由单片机的P1,P2口驱动,实验证明可行。

在应用系统中,设计要求不同,使用的LED显示器的位数也不同,因此生产厂家就生产了多种位数、尺寸、型号不同的LED显示器。

在我们的设计中,选择4位一体的共阴极时钟型LED显示器,采用动态显示方式。

图4-2为本系统LED显示电路,采用P1口作为LED的段码输出信号,P2口的低四位作为LED位码的输出控制信号。

图4-3LED显示原理图

说明:

1位显示转换通道,2、3和4位显示电压表数值。

4.4A/D转换电路和测量电路的设计

A/D转换器的功能是将模拟量转换为与其大小成正比的数字量信号。

能实现这种转换的原理和方法很多,此设计采用ADC0809CCN转换器。

ADC0809CCN是一种逐次逼近型的8位A/D转换器件,片内有8路模拟开关,可输入8个模拟量,

用单片机的P2.3对应ADC0808的ALE端,P2.5对应EOC端,P2.6对应O端口,P3.3对应CLK端,用软件设定给定的值。

ADDA、ADDB和ADDC连接P89V51RB2的输出端,由输出值选择通道。

IN0~IN7分别8个被测电位器,根据选择的通道,ADC0808选择测量相应通道的电位。

电路图如图4-4所示。

图4-4A/D转换测量电路

第5章软件设计与说明

5.1系统软件设计(流程图)

其中A/D转换子程序是将0809CCN转化后的数字量,需通过转化子程序转化成工程量并通过查表送到P1口送给LED显示。

5.2程序设计

(1)初始化程序给ADC0809CCN时钟脉冲信号,并指向0809CCN的0通道启动A/D转换,通过延时等待8路采集完毕。

(2)数据读入控制0809CCN芯片的ALE、START、EOC和OE,STRT为正脉冲时转换开始,EOC为低电平时A/D转化结束,OE为高电平时转换结果送到数据线并被单片机读入,ALE为上升沿信号地址锁存允许。

#defineucharunsignedchar

#defineuintunsignedint

sbitALE=P2^3;

sbitSTART=P2^4;

sbitOE=P2^5;

sbitEOC=P3^7;

sbitDISX=Disdata^7;

(3)消抖防抖动的时间是10ms。

(4)通道转换当判断有按键按下后P3.2口置位即允许74373地址锁存,DPTR加1指向下一通道。

 

 

第6章操作说明与调试结果

6.1操作说明

该数字电压表可以同时测量8路直流数据,电压表测量范围为0.00~5.00V,测量最小分辨率为0.02mv。

整个系统由一个按钮控制,最左边个LED显示器是指向当前通道,即电位器编号。

用Proteus仿真中点PLAY电压表默认显示第8通道即第8个电位器RV8的测量值。

第一次按下按钮后,改变测量通道即第1通道RV1的值,第2下为第2通道,依次循环测量8个电位器的电压值。

选择其中任意电位器并拨动其位置能改变其值,最大值为5V,最小值为0V,在中间时为2.49V,单片机能读出并正确显示。

本设计应用Proteus6及KEIL51软件,首先根据自己设计的电路图用Proteus6软件画出电路模型,关于这个软件的使用通过查一些资料和自己的摸索学习;然后我们用KEIL51软件对所编写的程序进行编译、链接,如果没有错误和警告便可生成程序的hex文件,将此文件加到电路图上使软硬件结合运行,最后进行端口电压的对比测试,测试的第一路对比见图6-1中标准电压值采用Proteus6软件中的模拟电压表测得。

 

从图中可以看出,简易数字电压表与“标准”数字电压表测得的绝对误差均在0.02V以内,这与采用8位A/D转换器所能达到的理论误差精度相一致,在一般的应用场合可以完全满足要求。

6.2调试结果与性能分析

万用表和设计电压表测量同一组电压值所得结果如表一所示。

电压值(v)

0.00

0.54

1.06

1.54

2.05

2.54

3.03

3.50

4.02

4.51

5.03

测量值(v)

0.000

0.513

1.020

1.508

2.016

2.512

3.010

3.509

4.012

4.516

5.014

误差(v)

0.000

0.027

0.015

0.027

0.014

0.028

0.007

0.009

0.008

0.006

0.000

在板子上焊接了一个5V电源作为演示测量电压,经测量是5V,故能测量。

由于单片机为8位处理器,当输入电压为5.00V时,输出数据值为255(FFH)因此单片机最大的数值分辨率为0.0196V(5/255)。

这就决定了该电压表的最大分辨率(精度)只能达到0.0196V。

测试时电压数值的变化一般以0.02V的电压幅度变化,如要获得更高的精度要求,应采用12位、13位的A/D转换器。

简易数字电压表测得的值基本上均比标准值偏大0.01-0.02V。

这可以通过校正0808的基准电压来解决,因为该电压表设计时直接用7805的供电电源作为基准电压,电压可能有偏差。

另外可以用软件编程来校正测量值。

ADC0808的直流输入阻抗为1M欧姆,能满足一般的电压测试需要。

另外,经测试ADC0808可直接在2MHz的频率下工作,这样可省去分频率14024。

 

课程设计总结和心得体会

这次课程设计对我来说学到的不仅是那些知识,更多的是团队和合作。

现在想来,也许学校安排的课程设计有着它更深层的意义吧,它不仅仅让我们综合那些理论知识来运用到设计和创新,还让我们知道了一个团队凝聚在一起时所能发挥出的巨大潜能!

在团队中,我们互帮互助,对整个课程设计来说,这是至关重要的,缺少每一个人都会对我们的设计产生影响。

还有要感谢指导老师在我们遇到困难时,给予我们的建议与鼓励。

 在一个星期后的今天我已明白课程设计对我来说的意义,它不仅仅是让我们把所学的理论知识与实践相结合起来,提高自己的实际动手能力和独立思考的能力,更重要的是同学间的团结,虽然我们这次花去的时间比别人多,但我相信我们得到的也会更多!

发现、提出、分析、解决问题和实践能力的提高都会受益于我在以后的学习、工作和生活中。

谢谢李老师的真挚热情的帮助,此次收获颇多!

 

附录1系统原理图

 

附录2源程序

#include"reg51.h"

#include"intrins.h"

#definead_conP2

#defineaddataP0

#defineDisdataP1

#defineucharunsignedchar

#defineuintunsignedint

sbitALE=P2^3;

sbitSTART=P2^4;

sbitOE=P2^5;

sbitEOC=P3^7;

sbitDISX=Disdata^7;

ucharcodedis_7[11]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xFB,0x80,0x90,0xFF};

ucharcodescan_con[3]={0xfe,0xfd,0xfb};

uchardataad_data[8]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};

uchardatadis[5]={0x00,0x00,0x00,0x00,0x00};

delay1ms(uintt)

{

uinti,j;

for(i=0;i

for(j=0;j<120;j++)

;

}

scan()

{

uchark,n;

inth;

for(n=0;n<8;n++)

{

dis[2]=ad_data[n]/51;

dis[3]=ad_data[n]%51;

dis[3]=dis[3]*10;

dis[1]=dis[3]/51;

dis[3]=dis[3]%51;

dis[3]=dis[3]*10;

dis[0]=dis[3]/51;

for(h=0;h<500;h++)

{

for(k=0;k<4;k++)

{

Disdata=dis_7[dis[k]];

if(k==2){DISX=0;}

P3=scan_con[k];delay1ms

(1);P3=0xff;

}

}

}

}

test()

{

ucharm;

uchars=0x00;

ad_con=s;

for(m=0;m<8;m++)

{

ALE=1;_nop_();_nop_();ALE=0;

START=1;_nop_();_nop_();START=0;

_nop_();_nop_();_nop_();_nop_();

while(EOC==0);

OE=1;ad_data[m]=addata;OE=0;s++;ad_con=s;

}

ad_con=0x00;

}

main()

{

P0=0xff;

P2=0x00;

P1=0xff;

P3=0xff;

while

(1)

{

scan();

test();

}

}

参考文献

151周向红.系列单片机应用与实践教程.北京:

北京航空航天大学出版社,2008

2王迎旭.单片机原理与应用.北京:

机械工业出版社,2004

3公茂法.单片机人机接口实例.北京:

北京航空航天大学出版社,2

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 文学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1