基于Proteus的数字电压表的设计毕业设计.docx
- 文档编号:30608594
- 上传时间:2023-08-18
- 格式:DOCX
- 页数:30
- 大小:273.06KB
基于Proteus的数字电压表的设计毕业设计.docx
《基于Proteus的数字电压表的设计毕业设计.docx》由会员分享,可在线阅读,更多相关《基于Proteus的数字电压表的设计毕业设计.docx(30页珍藏版)》请在冰豆网上搜索。
基于Proteus的数字电压表的设计毕业设计
毕业设计[论文]
题目:
基于proteus的数字
电压表的设计
系别:
电子信息工程工程技术
专业:
电子信息工程
姓名:
学号:
指导教师:
摘要
在现代检测技术中,传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,因此常用高精度数字电压表进行检测。
数字电压表(DigitalVoltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。
将检测到的数据送入微型计算机系统,完成计算、存储、控制等功能。
目前,由各种单片A/D转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,显示出强大的生命力。
与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。
本文中数字电压表的控制系统采用AT89C51单片机,A/D转换器采用ADC0808为主要硬件,实现数字电压表的硬件电路与软件设计。
该系统的数字电压表电路简单,所用的元件较少,成本低,调节工作可实现自动化,还可以方便地进行8路A/D转换的测量等功能。
数字电压表可以测量0~5V的电压值,并在四位LED数码管上轮流显示,并且应用Proteus的ISIS软件进行单片机系统设计与仿真。
关键词:
单片机,数字电压表,DVM,A/D转换ADC0808,Proteus
Abstract
Inmodernmeasuringtechnology,analogvoltagemeterfeaturesatraditionalsingle,lowaccuracy,cannotmeetthedigitalage,soitisoftenrequiredtoconductsitemeasuringwithadigitalvoltmeter.Digitalvoltagemeter(DigitalVoltmeter)referredtoasDVM,itistheuseofdigitalmeasuringtechnology,thecontinuousanalog(DCinputvoltage)intoanon-continuous,discretedigitalformandtodisplaytheinstrument.Thedatameasuredwillthenbeinputintothemicro-computersystemtoexecutesuchfunctionslikecalculating,storing,controlling,anddisplaying.Atpresent,byavarietyofsingleA/Dconverterconsistingofdigitalvoltagemeter,hasbeenwidelyusedinintelligentmeasuretementsuchaselectronicandelectricalmeasurement,industrialautomation,instrumentation,automatedtestsystems,showingstrongvitality.Atthesametime,theDVMextensiontothevariousgeneralandspecificdigitalinstruments,butalsothepowerandnon-powermeasurementuptoanewlevel.
ThedigitalvoltmetercontrolsystemdescribedinthispapermakesuseofAT89C51SinglechipcomputerandADC0808A/Dconvertertofulfillthedesigningofthesoftwareaswellastheelectricalcircuit.Thevoltmeterfeaturesinsimpleelectricalcircuit,loweruseofelements,lowcostandautomaticregulation,whileitcanalsoeasilycarryoutthedutiesofmeasuringA/Dconvertedvaluesfrom8routesandremotetransferofmeasuringdata.Themeteriscapableofmeasuringvoltagefrom0to5volt,anddisplayingthemeasurementsinturnonthefourdigitalLED,andusesoftwareISISofProteustorealizethecircuitdesignandsimulation.
Keywords:
Singlechipmicrocomputer,digitalVoltmeter,DVM,A/DswitchADC0808,Proteus
1绪论
1.1选题的目的意义
数字电压表(DigitalVoltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。
传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。
目前,由各种单片A/D转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,显示出强大的生命力。
与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。
数字电压表是诸多数字化仪表的核心与基础,电压表的数字化是将连续的模拟量如直流电压转换成不连续的离散的数字形式并加以显示,这有别于传统的以指针加刻度盘进行读数的方法,避免了读数的视差和视觉疲劳。
目前数字电压表的内部核心部件是A/D转换器,转换器的精度很大程度上影响着数字电压表的准确度,本文A/D转换器采用ADC0808对输入模拟信号进行转换,控制核心AT89C51再对转换的结果进行运算和处理,最后驱动输出装置显示数字电压信号。
随着微机测量与控制技术的发展,以单片机为核心的字电压表已占有很大的优势。
设计主要是研制直流输入数字电压表,以单片机AT89C51为核心部件,具有实时显示测量值的功能。
单片机体积小、重量轻、价格便宜,电路外围器件少,大大地降低了成本。
1.2国内外研究综述
数字电压表出现在上世纪50年代初,60年代末发展起来的电压测量仪表,简称DVM,它采用的是数字化测量技术,把连续的模拟量,也就是连续的电压值转变为不连续的数字量,加以数字处理然后通过显示器件显示。
这种电子仪表之所以出现,一方面是由于电子计算机的应用推广到系统的自动控制信号的实验领域,提出了各种被观测量或被控制量转换成数字量的要求,即为了实时控制和数据处理的要求;另一方面,也是电子计算机的发展,带动了脉冲数字电路技术的发展,为数字化仪表的出现提供了条件。
所以,数字化测量仪表的产生与发展与电子计算机的发展是密切相关的。
如今,数字电压表已经绝大部分取代了传统的模拟指针式电压表,因为传统的模拟指针式电压表功能单一,精度低,读数的时候非常不方便还经常出错,而采用单片机的数字电压表由于测量精度高,速度快,读数时也非常方便,抗干扰能力强,可扩展性强等优点已被广泛应用与电子和电工测量,工业自动化仪表,自动测量系统等领域,显示出强大的生命力。
数字电压表最初是伺服步进电子管比较式,其优点是准确度比较高,但是采样速度较慢,体积重达几十公斤。
继之出现了谐波式电压表,它的速度方面稍有提高但准确度低,稳定性差,再后来出现了比较式仪表改进逐次渐进式结构,它不仅保持了比较值准确度高的优点,而且速度也有了很大的提高,但它有一缺点就是抗干扰能力差,很容易受到外界因素的影响。
随后,在谐波式的基础上引申出阶梯波式,它的唯一进步就是成本降低了,可是准确度,速度及抗干扰能力都未提高。
而数字电压表的发展已经非常成熟,就原理来讲,它从原来的一两种已经发展到多种,在功能上讲,它从测单一的参数发展到能测多种参数;从制作原件看,发展到集成电路,准确度已经有了很大的提高,精度已经达到1nV,读数速度达到每秒几万次,而相对以前价格已经降低了很多。
例如国内上海乾丰电子仪器有限公司生产的PZ158A系列直流数字电压表,该型号电压表具有6½位显示,可测量0.1µV—1000V直流电压。
该表由于采用了微处理器和脉冲调宽模数转换技术,自动校零,数字模拟滤波等技术,从而赋予本表极其稳定的零位和良好的线性和抗干扰能力,本表还带有RS232C接口,可方便地与计算机系统相连接,组成数据采集系统。
采用八位VFD或LED显示,其中PZ158A/1为单量程(0.2V)VFD显示,读数清晰,光色柔和,适宜在科研、工业、国防等各种领域内使用。
目前实现电压数字化测量的方法仍然是模—数(A/D)转换的方法。
数字电压表分类繁多,日常生活中一般根据原理的不同进行分类,大致分为:
比较式,电压—时间变换式,积分式等。
1.3毕业设计(论文)所用的方法
利用MCS-51系列来作为程序的载体,通过C语言或汇编语言来设计程序对所采集到的信息进行存储和处理;
通过模数转换器将模拟电压值转化为数字信号;
通过数码管来显示数据。
2系统方案设计
2.1设计思路
本系统的控制电路采用AT89C51芯片,AT89C51是一种带4K字节Flash存储器的低电压、高性能CMOS8位微处理器,可与工业标准的MCS-51指令集和输出管脚相兼容。
1)该芯片提供以下标准功能:
4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,该芯片可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
2)该芯片管脚说明:
VCC:
供电电压;
GND:
接地;
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在Flash编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高;
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入“1”后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在Flash编程和校验时,P1口作为第八位地址接收;
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号;
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故;
P3口也可作为AT89C51的一些特殊功能口,如下所示:
P3.0RXD(串行输入口);
P3.1TXD(串行输出口);
P3.2/INT0(外部中断0);
P3.3/INT1(外部中断1);
P3.4T0(记时器0外部输入);
P3.5T1(记时器1外部输入);
P3.6/WR(外部数据存储器写选通);
P3.7/RD(外部数据存储器读选通);
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST/Vpd:
RST即为RESET,Vpd为备用电源,所以该引脚为单片机的上电复位或掉电保护端。
当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平就可实现复位操作,使单片机恢复到初始状态。
当Vcc发生故障、降低到低电平规定值或掉电时,该引脚可接上备用电源Vpd为内部RAM供电,以保证RAM中的数据不丢失;
ALE/PROG:
当访问外部存储器时,ALE(地址锁存允许信号)以每机器周期两次的信号输出,用于锁存出现在P0口得低8位地址。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效;
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现;
/EA/Vpp:
/EA为访问外部程序存器控制信号,当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP);
XTAL1:
接外部石英晶体的一端。
在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器,当采用外部时钟时,对于HMOS单片机,该引脚接地;对于CHMOS单片机,该引脚作为外部振荡信号的输入端;
XTAL2:
接外部晶体的另一端。
在单片机的内部,接至片内振荡器的反相放大器的输出端。
当采用外部时钟时,对于HMOS单片机,该引脚作为外部振荡信号的输入端;对于CHMOS芯片,该引脚悬空不接。
电压是模拟量,而数码管显示需要的是数字量,故需要采用A/D转换模拟信号为数字信号供显示电路显示出来。
本系统采用ADC0808芯片,通过ADC0808采集数据,输入到单片机内,再输入到显示电路显示。
ADC0808是典型的8位8通道逐次逼近式A/D转换器,采用CMOS工艺制造。
ADC0808的主要特性:
8路输入通道,8位A/D转换器,即分辨率为8位;具有转换起停控制端;转换时间为100μs(时钟为640kHz时),130μs(时钟为500kHz时);单个+5V电源供电;模拟输入电压范围0~+5V,不需零点和满刻度校准;工作温度范围为-40~+85摄氏度;低功耗,约15mW。
显示电路采用四位8段LED数码管来显示数据,满足本系统2%的精度要求。
数码管显示方法有静态显示和动态显示两种。
1)静态显示:
即在同一时刻只显示一种字符,或者说被显示的字符在同一时刻是稳定不变的,其显示方法是将显示段码送至段码口,并把位控字送至位控口即可;
2)动态显示:
利用人眼的视觉残留效应,采用动态扫描显示的方法,逐个的循环点亮个位数码管,每位显示1ms左右,使人看起来就好像在同时显示不同的字符一样。
在进行动态扫描时,往往事先并不知道应显示什么内容,这样也就无从选择被显示字符的显示段码。
为此,一般采用查表的方法,由显示的字符通过查表得到其对应的显示段码。
2.2设计方案
本系统利用AT89C51单片机设计简易数字电压表测量0~5v的8路输入电压值,并在四位LED数码管上轮流显示,测量误差约为±0.02V。
本设计主要分为两部分:
硬件电路及软件程序。
而硬件电路又大体可分为时钟电路、复位电路、数据采集电路、LED显示电路,各部分电路的设计及原理将会在硬件电路设计部分详细介绍;软件程序的设计使用汇编语言编程,利用KEIL和PROTEUS软件对其编译和仿真,详细的设计算法将会在程序设计部分详细介绍。
系统设计方框图如图2.1所示:
图2.1系统设计方框图
3硬件电路设计
3.1时钟电路
XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。
内部方式时,时钟发生器对振荡脉冲二分频。
本系统的时钟电路设计是采用的内部方式。
晶振的频率可以在1MHz-24MHz内选择,电容取30PF左右。
晶振在电气上可以等效成一个电容和一个电阻并联再串联一个电容的二端网络,电工学上这个网络有两个谐振点,以频率的高低分其中较低的频率是串联谐振,较高的频率是并联谐振。
由于晶体自身的特性致使这两个频率的距离相当的接近,在这个极窄的频率范围内,晶振等效为一个电感,所以只要晶振的两端并联上合适的电容它就会组成并联谐振电路。
这个并联谐振电路加到一个负反馈电路中就可以构成正弦波振荡电路,由于晶振等效为电感的频率范围很窄,所以即使其他元件的参数变化很大,这个振荡器的频率也不会有很大的变化。
晶振有一个重要的参数,那就是负载电容值,选择与负载电容值相等的并联电容,就可以得到晶振标称的谐振频率。
一般的晶振振荡电路都是在一个反相放大器(注意是放大器不是反相器)的两端接入晶振,再有两个电容分别接到晶振的两端,每个电容的另一端再接到地,这两个电容串联的容量值就应该等于负载电容。
时钟电路原理图如图3.1所示:
图3.1时钟电路图
3.2复位电路
89C51单片机的复位是由外部的复位电路来实现的。
最简单的上电自动复位电路,是通过外部复位电路的电容充电来实现的。
只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位。
除上电复位外,有时还需要按键手动复位。
按键手动复位有电平方式和脉冲方式两种。
其中电平方式复位是通过RST端经电阻和电源Vcc接通而实现的。
本系统采用电平方式按键手动复位电路,按键没有按下时,RST端接电容下极板是低电平,按键按下时,RST端接在电阻上端变为高电平,达到复位的目的。
电容选20uF左右,电阻选1K欧姆。
复位电路原理图如图3.2所示:
图3.2复位电路图
3.3数据采集电路
本系统模拟转换采用ADC0808芯片。
ADC0808具有8路模拟量输入信号引脚IN0~IN7(1~5、26~28脚),地址线C、B、A(23~25脚)决定哪一路模拟输入信号进行A/D转换,本电路将A、B、C脚分别置0、1、0,即选择通道2。
22号脚ALE为地址锁存允许控制信号,高电平有效。
6号脚START为启动控制信号,高电平有效,脉冲上升沿使0808复位,下降沿启动A/D转换。
本电路将ALE脚和START脚接到一起,共同由单片机的P3.2脚控制。
7号脚EOC为A/D转换结束信号,输出正脉冲表示转换结束,本电路将7号脚与P3.1连接。
9号脚OE为A/D转换数据输出允许控制信号,高电平有效,本电路将9号脚与P3.0脚连接。
10号脚CLOCK为实时时钟输入端,在proteus软件中仿真采用DCCLOCK时钟源提供时钟脉冲。
数字量输出端8个引脚OUT1~OUT8接到单片机的P1口。
本设计采集数据电路为了便于仿真分析,采用滑线电阻器分压,通过调节滑线电阻器的触头,来调节输入电压值,模拟不同大小的输入信号,采集信号通过ADC0808的IN2端接入芯片的通道2。
数据采集电路原理图如图3.3所示:
图3.3数据采集模块电路图
3.4显示电路
本电路采用LED数码管显示,由于单片数码管占用单片机口线较多,而本设计中需要四个数码管显示不同信息,因此采用数码管的动态扫描显示原理,利用人眼的视觉暂留特性,达到较好的显示效果,而且采用动态扫描法与单片机连接时,占用口线较少,方便进行程序编写和控制。
本设计中采用proteus仿真元件库中的7SEG-MPX4-CC型数码管来显示,7SEG-MPX4-CC为八段四位共阴极数码管,其中ABCDEFG共八个引脚为字形码控制输入端,DP为小数点控制输入端一段用于显示小数点,1234共四个引脚为数码管字位码控制输入端。
数码管的所有段码输入端均为高电平有效,位码输入端均为低电平有效,其中ABCDEFG脚在程序设计时应输入数字字形码原码。
上拉电阻RP1的公共端接高电平,其余端接控制线,以提供足够的输入电流,使数码管正常显示。
数码管位选端连接单片机的P0口,同时连接上拉电阻以增强驱动能力;片选段连接单片机的P2.0~P2.3口。
显示电路原理图如图3.4所示:
图3.4显示电路图
3.5总设计原理图
图3.5总设计电路原理图
4软件设计
4.1主程序流程图
4.1.1主程序流程图
主程序包含初始化部分,调用A/D转换子程序,调用数据处理子程序和调用显示子程序,初始化部分包含存通道数据缓冲区初始化和显示缓冲区初始化。
主程序流程图如图4.1所示:
图4.1主程序流程图
4.1.2主程序代码
LED1EQU30H;初始化定义
LED2EQU31H
LED3EQU32H;存放三个数码管的段码
ADCEQU35H;存放转换后的数据
STBITP3.2
OEBITP3.0
EOCBITP3.1;定义ADC0809的功能控制引脚
ORG0000H
LJMPMAIN;跳转到主程序执行
ORG0030H
MAIN:
MOVLED1,#00H
MOVLED2,#00H
MOVLED3,#00H;寄存器初始化
CLRP3.4
SETBP3.5
CLRP3.6;选择ADC0809的通道2
WAIT:
CLRST
SETBST
CLRST;在脉冲下降沿启动转换
JNBEOC,$;等待转换结束
SETBOE;允许输出信号
MOVADC,P1;暂存A/D转换结果
CLROE;关闭输出
MOVA,ADC;将转换结果放入A中,准备个位数据转换
MOVB,#51;变换个位调整值51送B
DIVAB
MOVLED1,A;将变换后的个位值送显示缓冲区LED1
MOVA,B;将变换结果的余数放入A中,准备十分位变换
MOVB,#5;变换十分位调整值5送B
DIVAB
MOVLED2,A;将变换后的十分位值送LED2
MOVLED3,B;最后的余数作百分位值送LED3
LCALLDISP;调用显示程序
AJMPWAIT
DISP:
MOVR1,#
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Proteus 数字 电压表 设计 毕业设计