数字式电压表AT89C51单片机AD转换数据处理毕业设计doc.docx
- 文档编号:5520103
- 上传时间:2022-12-18
- 格式:DOCX
- 页数:31
- 大小:568.18KB
数字式电压表AT89C51单片机AD转换数据处理毕业设计doc.docx
《数字式电压表AT89C51单片机AD转换数据处理毕业设计doc.docx》由会员分享,可在线阅读,更多相关《数字式电压表AT89C51单片机AD转换数据处理毕业设计doc.docx(31页珍藏版)》请在冰豆网上搜索。
数字式电压表AT89C51单片机AD转换数据处理毕业设计doc
摘要
传统的模拟式(即指针式)电压表已有100多年的历史,虽然不断的改进与完善,仍无法满足现代电子测量的需求。
数字式电压表作为数字化仪表的基础和核心,已成为在电子和电工测量、工业自动化仪表、自动测试系统等领域中应用最广泛的一种仪表,并显示出其强大的生命力。
本设计在利用AT89C51单片机的基础上,结合TLC2543转换芯片及LCD显示器构建了测量范围在0~300V的数字式电压表。
电压表分为三个档位:
6V、30V、300V。
该数字式电压表的设计主要由三个模块组成:
模拟数据采集处理模块、A/D转换模块及LCD显示模块。
模拟数据的采集处理模块由输入电路部分完成。
A/D转换模块主要由芯片TLC2543来完成,它负责把采集到的模拟量数据转换成相应的数字量再传送到AT89C51单片机进行数据处理。
显示模块是将单片机处理好的数据传送到LCD显示器进行显示。
关键词:
数字式电压表,AT89C51单片机,A/D转换,数据处理
ABSTRACT
Traditionally,theanalog(i.e.pointertype)voltmeterhasahistoryover100years.Althoughithasacontinuousimprovementandperfection,itstillcannotmeetthedemandformodernelectronicmeasurement.Asthebasisandcoreofdigitalinstrumentation,digitalvoltmeterhasbecomeaninstrumentthatwidelyusedintheareaofelectronicandelectricalmeasurement,industrialautomationinstrument,automatictestsystem,etc.Andshowitsstrongvitality.
ThedesignisbasedontheuseofAT89C51single-chipmicrocomputerandcombineswithTLC2543converterandLCD.Alloftheseconstructionsformedadigitalvoltmeterwhichcanmeasurevoltagefrom0to300V.Thevoltmeterisdividedintothreestages:
6V,30V,300V.Thedesignofthisdigitalvoltmetermainlyconsistsofthreemodules:
analogdataacquisitionandprocessingmodule,theA/DconvertermoduleandtheLCDmodule.Analogdataacquisitionandprocessingmoduleiscomposedofaninputcircuitpart.A/DconvertermoduleismainlycomposedofTLC2543chiptocomplete,anditisresponsiblefortheconversionofanalogdataintocorrespondingdigitalquantityandthenitdeliversdatatotheAT89C51single-chipmicrocomputerfordataprocessing.Thedisplaymoduletransfersdatathatprocessedbysingle-chipmicrocomputertoaLCDfordisplaying.
Keywords:
digitalvoltmeter,AT89C51single-chipmicrocomputer,A/Dconverter,dataprocessing
1绪论
数字式电压表(DigitalVoltmeter)简称DVM,作为智能仪表的一种,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转化成不连续,离散的数字形式并加以显示的仪表。
传统的指针式电压表功能单一,精度低,不能满足数字化时代的需求。
采用单片机设计的数字式电压表,精度高,抗干扰能力强,可扩展性强,集成方便。
目前,由各种单片机,A/D转换器构成的数字式电压表,已经被广泛用于电子及电工测量,工业自动化仪表,自动测量系统等智能化测量领域,显示出强大的生命力。
本文就数字式电压表加以叙述。
1.1课题研究的相关背景
数字式电压表之所以出现,一方面是由于电子计算机的应用逐渐推广到系统的自动控制实验研究的领域,提出了将各种被观察量或被控制量转换成数码的要求,即为了实时控制及数据处理的要求;另一方面,也就是电子计算机的发展,带动了脉冲数字电路技术的进步,为数字化仪表的出现提供了条件。
所以,数字化测量仪表的产生于发展与电子计算机的发展是密切相关的;同时为了革新电子测量中的繁琐与陈旧方面也催促了它的飞速发展。
如今,它又成为向智能化仪表发展的必要桥梁。
数字式电压表最初是伺服步进电子管比较式,其优点是准确度比较高,但是采用速度慢,重量达几十公斤,体积大。
后来出现了斜波式电压表,它的速度方面稍有提高,但是准确度低,稳定性差。
再后来出现了比较式仪表改进逐次渐近式结构,它不仅保持了比较式准确度高的优点,而且速度也有了很大的提高。
但它有一缺点是抗干扰能力差,很容易受到外界各种因素的影响。
随后,在斜波式的基础上引伸出阶梯波式。
而现在,数字式电压表的发展已经是非常的成熟,就原理来讲,它从原来的一、两种已发展到了多种。
在功能上讲,则从测单一参数发展到能测多种参数;从制作的元件来看,发展到了集成电路,准确度已经了有了很大的提高,准确度高达1NV;读数每秒几万次,而相对以前,它的价格也降低了很多。
在电量的测量中,电压、电流和频率是最基本的三个被测量。
其中,电压量的测量最为经常。
而且随着电子技术的发展,更是经常需要测量高精度的电压,所以数字式电压表就成为一种必不可少的测量仪器。
1.2设计的基本技术要求
本设计利用Keil与Proteus软件搭建仿真开发平台作为前期的仿真调试,通过仿真后确定使用的原理电路及元器件,在这一基础上着手绘制PCB图,最后设计出一个实物装置。
设计中使用51系列单片机配以A/D转换芯片TLC2543来实现电压的测量。
系统能实现6V、30V、300V三个量程档位的电压测量。
1.3主要设计内容及设计思路
1.3.1主要设计内容
(1)输入电路中反相放大器的工作原理及衰减电压信号时电阻的选择;
(2)输入电路与单片机和数模转换器的连接;
(3)单片机与数模转换器的连接;
(4)单片机和LCD的连接。
1.3.2设计思路
三量程的数字式电压表的核心部分就是在输入电压时各档位对电压的衰减,然后将衰减后的电压值通过A/D转换器将模拟电压信号转换为对应的数字量,再经过单片机处理后显示在LCD显示器上。
1.4预期成果及其意义
1.4.1预期成果
使用51系列单片机配以TLC2543实现对电压的测量。
最高量程为300V,分三个档位量程,即6V、30V、300V,可以通过调档开关来实现各个档位,最高精度为0.01MV,误差控制在0.02V。
当测得电压的数值小于1V时,系统会自动的将电压数值转换为以MV为电压单位的电压值显示。
1.4.2本设计的意义
本设计先简要介绍设计电压表的主要方式以及单片机系统的优势;然后详细介绍数字式电压表的设计流程,以及硬件系统和软件系统的设计,并给出硬件电路的设计细节,包括各部分电路的方向、芯片的选择以及方案的可行性分析等。
在参阅了大量前人设计的数字式电压表的基础上,利用单片机技术结合A/D转换芯片的设计,并在此基础上应用了C语言编程来完成数字式电压表的设计,其测量范围是0~300V。
本次设计的意义在于能够熟练使用C语言进行编程,学会使用Protel99SE绘制原理图及PCB图,通过软件与硬件的结合完成实物制作。
在设计过程中通过分析、调试能将所学的电子及单片机知识进行归纳和总结,凭所学的知识和当前的硬件条件来完成本次设计。
通过这次设计不仅可以掌握单片机的工作原理,A/D转换器的性能,单片机与LCD显示的接口技术,而且在运用编程语言对数字式电压表设计的基础上,融会贯通大学期间所学的专业知识。
在完成毕业设计的前提下,掌握工程设计流程及其开发技术。
本设计的数字式电压表可直接读取数值且比较精确,适合在多种场合下使用。
具有传统数字式电压表无法比拟的特点,这使得它的开发和应用具有良好的前景。
2数字式电压表设计的两种可行性方案研究
数字式电压表有多种设计方法,方案是多种多样的,由于大规模集成电路数字芯片的高速发展,各种数字芯片品种多样,导致对模拟数据的采集部分的不一致性,进而又使对数据的处理及显示的方式的多样性。
又由于在现实的工作生活中,电压表的测量测程范围是比较大的,所以必须要对输入电压作分压处理,而各个数据处理芯片的处理电压范围不同,则各种方案的分段也不同。
下面介绍两种数字式电压表的设计方案。
2.1由数字电路及芯片构建
这种设计方案是由模拟电路与数字电路两大部分组成,模拟部分包括输入放大器。
A/D转换器和基准电压源;数字部分包括计数器,译码器,逻辑控制器,振荡器和显示器。
其中A/D转换器是它的核心器件,它将输入的模拟量转换成数字量。
模拟电路和数字电路是相互联系的,由逻辑控制电路产生控制信号,按规定的时序将A/D转换器中各组模拟开关接通或断开,保证A/D转换正常进行。
A/D转换结果通过计数译码电路变换成段码,最后驱动显示器显示出相应的数值。
此方案设计的优点是设计成本低,能够满足一般的电压测量。
但设计不灵活,都是采用纯硬件电路,很难将其在原有的基础上进行扩展。
2.2由单片机系统及A/D转换芯片构建
这种方案是利用单片机系统与模数转换芯片,显示模块等组合构建成数字式电压表。
由于单片机的发展已经成熟,利用单片机系统的软硬件结合,可以组装出来。
此方案的原理是A/D转换芯片将被测量电压输入端所采集到的模拟电压信号转换成相应的数字信号,然后通过对单片机系统进行软件编程,使单片机系统能按规定的时序来采集这些数字信号,通过一定的算法计算出被测量电压的值。
最后单片机系统将计算好了的被测电压值按一定的时序送入显示电路模块加以显示。
此方案不仅能够继承上一种方案的各种优点,还能改进上一种设计方案设计不灵活,难与在原基础上进行功能扩展等不足。
故本课题采用此方案进行设计。
3系统设计中相关硬件简介
3.1AT89C51单片机简介
AT89C51单片机是Atmel公司89系列单片机的一种8位Flash单片机。
它最大特点是片内含有Flash存储器,用途十分广泛,特点是在生产便捷式商品,手提式仪器等方面,有着十分广泛的应用。
AT89C51的主要性能包括:
AT89C51与MCS-51控制器系列产品兼容,片内有4K可在线重复编程闪速电擦除存储器(FlashMemory),存储器可循环写入或擦除1000次;存储器数据保存时间可达10年;工作电压范围宽:
VCC可由2.7V到6V;全静态工作可由0Hz到16MHz;程序存储器具有3级锁存保护;128*8位内部RAM;32条可编程I/O线;两个16位定时器/计数器;中断结构具有5个中断源和2个中断优先级;可编程全双工串行通信;空闲状态维持低功耗和掉电状态保存存储内容。
本设计中,单片机起着连接硬件电路与程序运行及存储数据的任务。
一方面,它将A/D转换器、显示器和开关选择档位等通过I/O口地址线和数据线连接起来;另一方面,它将用户下载的程序通过控制总线控制数据的输入输出,从而实现测量电压和显示测量电压值的功能。
3.2模数(A/D)芯片TLC2543简介
TLC2543是TI公司的12位串行模数转换器,使用开关电容逐次逼近技术完成A/D转换过程。
每个器件有三个控制输入端,片选,输入/输出时钟以及地址输入端。
它可以从主机高速传输转换数据。
它有高速的转换、简化比率转换、刻度以及模拟电路与逻辑电路和电源噪声隔离、耐高温等特点。
由于是串行输入结构,能够节省51系列单片机I/O资源;且价格适中,分辨率较高,因此在仪器仪表中有较为广泛的应用。
在本设计中,目的是制作一个较高精度的电压表。
因此本设计选择精度为12位的TLC2543芯片。
下面就具体介绍一下这个芯片的各方面资料。
3.2.1TLC2543的特点
(1)12位分辩率A/D转换器;
(2)在工作温度范围内10μs转换时间;
(3)11个模拟输入通道;
(4)3路内置自测试方式;
(5)采样率为66kbps;
(6)线性误差±1LSBmax;
(7)有转换结束输出EOC;
(8)具有单、双极性输出;
(9)可编程的MSB或LSB前导;
(10)可编程输出数据长度。
3.2.2TLC2543封装引脚图及引脚说明
TLC2543芯片的封装引脚如下图所示,为20引脚双列直插式。
图3-1TLC2543芯片封装
TLC2543各引脚说明如下表,使用详细介绍如下所列。
表3-1引脚说明
引脚号
名称
I/O
说明
1-9,11,12
AIN0-AIN10
I
模拟输入端
15
CS
I
片选端
17
DataInput
I
串行数据输入端
16
DataOutput
O
A/D转换结果的三态串行输出端
19
EOC
O
转换结束端
10
GND
接地端
18
I/OCLOCK
I
输入/输出时钟端
14
REF+
I
正基准电压端
13
REF-
I
负基准电压端
20
VCC
电源
(1)AIN0-AIN10这11个模拟信号输入由内部多路选器选择。
对4.1MHZ的I/OCLOCK驱动源阻抗必须小于或等于50Ω并且能够将模拟电压由60PF的电容来限制其斜率。
(2)在CS端一个由高到低的变化将复位内部计数器并控制使能端DataOutput、DataInput和I/OCLOCK。
一个由低到高的变化将在一个设置时间内禁止DataInput和I/OCLOCK。
(3)串行数据输入端DataInput是一个4位的串行地址选择下一个即将被转换的所需的模拟输入或测试电压。
串行数据以MSB为前导并在I/OCLOCK的前4个上升沿被移入。
在4个地址位被读入地址寄存器后,I/OCLOCK将剩下的几位依次输入。
(4)DataOutput在CS位高电平时处于高阻抗状态,而当CS为低电平时处于激活状态。
CS一旦有效,按照前一次转换的结果的MSB/LSB值将DataOutput从高阻抗状态转变成相应的逻辑电平,I/OCLOCK的下一个下降沿将根据下一个MSB/LSB将DataOutput驱动成相应的逻辑电平,剩下的各位依次移出。
(5)EOC在最后的I/OCLOCK下降沿之后,从高电平变为低电平并保持低电平直到转换完成及数据准备传输。
(6)GND端是内部电路的接地端,除加有说明外,所有电压测量都相对于GND。
(7)I/OCLOCK端串行输入并完成以下四个功能:
第一,在I/OCLOCK的前8个上升沿,它将8个输入数据信号输入数据寄存器。
在第4个上升沿之后为多路器的地址。
第二,在I/OCLOCK的第4个下降沿,在选定的多路器的输入端上的模拟输入电压开始和电容器充电并继续到I/OCLOCK的最后一个下降沿。
第三,它将前一次转换的数据的其余11位移出DataOutput端。
在I/OCLOCK的下降沿时数据变化。
第四,在I/OCLOCK的最后一个下降沿它将变换的控制信号传送到内部的状态控制位。
(8)REF+端通常接VCC,最大输入电压范围取决于加于本端与加于REF-端的电压差。
(9)REF-端通常接地。
3.3常用显示器简介及本设计显示器的选择
本次设计中有显示模块,而常用的显示器件也比较多,有数码管,LED点阵,1602液晶,12864液晶等。
数码管是最常用的一种显示器件,它是由几个发光二极管组成的8字段显示器件,其特点是价格便宜,使用也非常的方便,显示的效果很清楚。
小电流下可以驱动发光,发光响应时间极短,体积小,重量轻,抗冲击性能好,寿命长。
但数码管只能显示0~9的数据。
不能够显示字符。
这也是数码管的不足之处。
LED点阵显示器件是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。
它具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内环境适应能力强等优点。
LED点阵显示器件可以显示数字,英文字符,中文字符等。
但用LED点阵显示的软件程序设计比较麻烦。
1602液晶是工业字符型液晶显示器,能够同时显示16*2即32个字符。
1602液晶模块内部的字符发生存储器已经存储了160个不同的点阵字符图形,这些字符有:
阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码。
使用时直接编写软件程序按一定的时序驱动即可。
它的特点是显示字迹清楚,价格相对便宜。
12864液晶也是一种工业字符型液晶,它不仅能够显示1602液晶所可以显示的字符,数字等信息,而且还可以显示8*4个中文汉字和一些简单的图片,显示信息也非常的清楚。
使用时也直接编写软件程序按一定的时序驱动即可。
不过它的价格比1602液晶昂贵的很多。
本设计只需要显示最后电压的数字值和电压的单位,综合上面各种显示器件的特点:
数码管只能显示数字,不能显示单位字符,不符合本设计的要求。
而点阵显示器件驱动显示软件程序编写麻烦,占用的引脚相对也较多。
也不是理想的显示器件。
因此在本设计中考虑用液晶作为显示器件,虽然12864液晶比1602液晶的功能强,不过在价格方面却贵了很多。
而1602液晶也足以满足本设计的要求。
所以,本设计选择了1602液晶显示器。
3.41602液晶显示器介绍
本设计选择1602液晶作为显示器件。
下面是1602液晶显示的各方面参数。
3.4.1基本操作时序
(1)读状态:
输入:
RS=0,RW=1,E=1。
输出:
D0-D7为状态字。
(2)写状态:
输入:
RS=0,RW=0,D0-D7为指令码,E位高脉冲。
输出:
无。
(3)读数据:
输入:
RS=1,RW=1,E=1。
输出:
D0-D7为数据。
(4)写数据:
输入:
RS=1,RW=0,D0-D7为数据,E为高脉冲。
输出:
无。
3.4.2接口信号说明
表3-2接口信号说明
编号
符号
引脚说明
1
VSS
电源地
2
VDD
电源正极
3
V0
液晶显示偏压信号
4
RS
数据/命令选择短
5
R/W
读/写选择端
6
E
使能信号
续表3-2
编号
符号
引脚说明
7-14
D0-D7
DataI/O
15
BLA
背光源正极
16
BLK
背光源负极
3.4.3状态字说明
表3-3状态字说明
STA7
STA6
STA5
STA4
STA3
STA2
STA1
STA0
STA0-6
当前数据地址指针的数值
STA7
读写操作使能
1:
禁止0:
允许
3.4.4指令的说明
表3-4数据控制
指令码
功能
80H+地址码(0-27H,40H-67H)
设置数据地址指针
01H
显示清屏:
1.数据指针清0
2.所有显示清0
02H
显示回车:
数据指针清0
表3-5显示模式控制
指令码
功能
0
0
1
1
1
0
0
0
设置16*2显示,5*7点阵,8位数据口
表3-6显示开/关及光标设置
指令码
功能
0
0
0
0
1
D
C
B
D=1开显示;D=0关显示。
C=1显示光标;C=0不显示光标。
B=1光标闪烁;B=0光标不闪烁。
续表3-6
指令码
功能
0
0
0
0
0
1
N
S
N=1当读写一个字条款后地址指针加一,且光标加一。
N=0当读或写一个字符后地址指针减一,且光标减一。
S=1当写一个字条款,整屏显示左移(N=1)或右移(N=0),以得到光标不移动而屏幕移动的效果。
S=0当写一个字符,整屏显示不移动。
4硬件系统设计
4.1设计要求
(1)最高量程为:
300V。
(2)分为三档量程:
6V、30V、300V。
可以通过调档开关实现各档位选择。
(3)最高精度为0.01MV,误差控制在0.02V。
(4)当被测电压的电压值小于1V时,可自动换以MV为单位显示。
4.2设计方案
根据上述,选择了单片机与A/D转换芯片结合的方法来实现本设计。
使用的基本元器件是:
AT89C51单片机、TLC2543模数转换芯片、1602液晶显示器、LM324运放芯片、7660极性反转电源转换器、换挡开关、电容、电阻、电位器、晶振、标准电源等等。
图4-1设计的基本框图
4.3硬件电路系统模块的设计
根据上述选择的各元器件,各电路模块的电路图如下描述。
4.3.1单片机最小系统设计
单片机最小系统包括时钟振荡电路和复位电路。
单片机必须在时钟的驱动下才能工作。
在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。
单片机的第9号脚RESET为硬件复位端,只要将该端持续4个周期的高电平即可实现复位,复位后单片机的各状态都恢复到初始化状态。
图4-2单片机最小系统接线图
一般选用石英晶体振荡器。
其振荡频率主要由石英晶振的频率确定。
电路中两个电容C1,C2的作用有两个:
一是帮助振荡器起振;二是对振荡器的频率进行微调。
下图中C1,C2的值为30pf。
单片机在工作时,由内部振荡器产生或由外部直接输入的送至内部控制逻辑单元的时钟信号的周期称为时钟周期。
其大小是时钟信号频率的倒数,常用fosc表示。
上图中时钟频率为12MHz,即fosc=12MHz,则时钟周期为1/12µs。
上图中由按键RESET以及电解电容C3、电阻R1,R2及按键构成电复位电路。
由于单片机是高电平复位,所以当按键RESET按下的时候,单片机的9号脚RESET管脚处于高电平,此时单片机处于复位状态。
当上电后,由于电容的缓慢充电,单片机的9号脚电压逐步由高到低转化,经过一段时间后,单片机的9号脚处于稳定的低电平状态,此时单片机复位完毕,系统程序从0000H开始执行。
4.3.2输入电路设计
由于输入电路的电压比基准电压(5V)高很多,因此在输入电路中利用了运算放大器的负反馈从而达到了衰减电压的作用。
衰减电路可由手动开关来选择不同的衰减率,从而切换开关,达到选择不同量程的效果。
通过计算可知,设计衰减器用的是运算放大器,利用了运放的负反馈来实现对电压的衰减。
电阻R4,R5和R6的阻值分别为:
50K,10K和1K。
电阻R7,R8为平衡电阻,它的作用就是调
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字式 电压表 AT89C51 单片机 AD 转换 数据处理 毕业设计 doc