数字电压表.docx
《数字电压表.docx》由会员分享,可在线阅读,更多相关《数字电压表.docx(22页珍藏版)》请在冰豆网上搜索。
![数字电压表.docx](https://file1.bdocx.com/fileroot1/2022-12/14/57c5c446-5bb9-43e8-be4b-311af2b51826/57c5c446-5bb9-43e8-be4b-311af2b518261.gif)
数字电压表
1前言
单片机是大规模集成电路技术发展的产物,1974年美国fairchild公司研制出世界上第一台由两块集成电路芯片组成的单片微型计算机F8,从此单片机开始迅速发展。
从4位机到8位机到现在的16位机和32位机,单片机功能越来越强大,应用范围也越来越广泛。
单片机的发展通常分为以下几个阶段:
(1)第一代单片机(1974—1976)这是单片机发展的起步阶段。
在这个时期生产的单片机属于4位机型,集成度低。
典型的代表产品有intel公司的404四位单片机,主要用于家电家用电器领域。
(2)第二代单片机机(1976—1978)这是单片机的发展阶段。
这个时代生产的单片机属于低档、中档8位机型,片内集成有cpu、输入输出接口、定时器和rom等功能部件,是8位机的早期产品,存储量较小,性能低,目前很少用。
典型的产品有intel公司的mcs-48系列单片机。
(3)第三代单片机(1979—1982)这一代单片机的存储量和寻址范围都有扩展,而且还增加了中断源,并行I/O口和定时器计数器,集成了全双工串行通信接口电路。
代表产品有intel公司的mcs-51系列单片机。
(4)第四代单片机(1982年以后)这是16位单片机和8位单片机高性能单片机并行发展的时代。
16位单片机的特点是工艺先进、高度集成和内部功能强,代表产品有intel公司的mcs-96系列等。
随着大规模集成电路及超大集成规模电路的发展,单片机向着更深层次发展,主要体现在以下几个方面
(1)高度集成,一片单片机内部集成的rom/ram容量增大,增加了电闪存存储器,具有掉电保护功能,并集成了A/D、D/A转换器、定时器、计数器、系统故障检测和dma电路。
(2)引脚多功能化,随着芯片内部功能的增强和资源的丰富,一脚多用的设计方案日益显出重要的地位。
(3)高性能,这是单片机的发展所追求的一个目标,更高的性能将会使单片机应用的系统更加简单、可靠。
(4)低功耗,这将是未来单片机发展所追求的一个目标,随着单片机集成度不断提高由单片机构成的系统体积越来越小,低功耗将是设计单片机产片首先考虑的指标。
总之在现在科学快速发展的今天,我们所使用的的仪器越来越智能化,本次设计对于单片机以后的学习中会有很大的帮助。
2设计方案
将数据采集接口电路输入电压传入ADC0809数模转换元件,经转换后通过D0至D7与单片机P0口连接,把转换完的模拟信号以数字信号的信号的形式传给单片机,信号经过单片机处理从LED数码显示管显示。
P3口,实现复位。
P2口接数码管位选,P1接数码管,实现数据的动态显示,如下图所示。
图2-1系统总体方案结构图
3单片机内部结构简单介绍
3.151系列单片机内部基本器件组成
1中央处理器(CPU):
是MCS-51的CPU能处理8位二进制数或代码;
2内部数据存储器(RAM):
8051芯片共有256个RAM单元,其中后128单元被专用寄存器占用(稍后我们详解),能作为寄存器供用户使用的只是前128单元,用于存放可读写的数据。
因此通常所说的内部数据存储器就是指前128单元,简称内部RAM。
地址范围为00H~FFH(256B)。
是一个多用多功能数据存储器,有数据存储、通用工作寄存器、堆栈、位地址等空间。
3内部程序存储器(ROM):
8051内部有4KB的ROM,用于存放程序、原始数据或表格。
因此称之为程序存储器,简称内部RAM。
地址范围为0000H~FFFFH(64KB)。
4定时器/计数器8051共有2个16位的定时器/计数器,以实现定时或计数功能,并以其定时或计数结果对计算机进行控制。
定时时靠内部分频时钟频率计数实现,做计数器时,对P3.4(T0)或P3.5(T1)端口的低电平脉冲计数。
5并行I/O口MCS-51共有4个8位的I/O口(P0、P1、P2、P3)以实现数据的输入输出。
具体功能在后面章节中将会详细论述。
6串行口MCS-51有一个全双工的串行口,以实现单片机和其它设备之间的串行数据传送。
该串行口功能较强,既可作为全双工异步通信收发器使用,也可作为移位器使用。
RXD(P3.0)脚为接收端口,TXD(P3.1)脚为发送端口。
7中断控制系统MCS-51单片机的中断功能较强,以满足不同控制应用的需要。
共有5个中断源,即外中断2个,定时中断2个,串行中断1个,全部中断分为高级和低级共二个优先级别。
8时钟电路MCS-51芯片的内部有时钟电路,但石英晶体和微调电容需外接。
时钟电路为单片机产生时钟脉冲序列。
系统允许的晶振频率为12MHZ
3.28051单片机引脚功能简单介绍
51单片机引脚功能:
MCS-51是标准的40引脚双列直插式集成电路芯片,引脚分布请参照----单片机引脚图:
L、P0.0-P0.7P0口8位双向口线(在引脚的39-32号端子)。
2、P1.0-P1.7P1口8位双向口线(在引脚的1-8号端子)。
3、P2.0-P2.7P2口8位双向口线(在引脚的21-28号端子)。
4、P3.-P3.7P2口8位双向口线(在引脚的10-17号端子)。
P0口有三个功能:
1、外部扩展存储器时,当做数据总线(如图1中的D0-D7为数据总线接口)
2、外部扩展存储器时,当作地址总线(如图1中的A0-A7为地址总线接口)
3、不扩展时,可做一般的I/O使用,但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。
P1口只做I/O口使用:
其内部有上拉电阻。
P2口有两个功能:
1、扩展外部存储器时,当作地址总线使用;
2、做一般I/O口使用,其内部有上拉电阻;
P3口有两个功能:
除了作为I/O使用外(其内部有上拉电阻),还有第二功能如下:
1、串行I/O处于运行状态(RXD,TXD);
2、打开了处部中断(INT0,INT1);
3、定时器/计数器处于外部计数状态(T0,T1);
4、执行读写外部RAM的指令(RD,WR);
在应用中,如不设定P3端口各位的第二功能(WR,RD信号的产生不用设置),则P3端口线自动处于第一功能状态,也就是静态I/O端口的工作状态。
在更多的场合是根据应用的需要,把几条端口线设置为第二功能,而另外几条端口线处于第一功能运行状态。
在这种情况下,不宜对P3端口作字节操作,需采用位操作的形式
4A/D转换器的类型及其引脚的简单介绍
4.1AD转换器(模/数转换器)的分类
常用的几种类型的基本原理及特点:
积分型、逐次逼近型、并行比较型/串并行型、Σ-Δ调制型、电容数组逐次比较型及压频变换型。
1)积分型(如TLC7135)
积分型AD工作原理是将输入电压转换成时间(脉冲宽度信号)或频率(脉冲频率),然后由定时器/计数器获得数字值。
其优点是用简单电路就能获得高分辨率,但缺点是由于转换精度依赖于积分时间,因此转换速率极低。
初期的单片AD转换器大多采用积分型,现在逐次比较型已逐步成为主流。
2)逐次比较型(如TLC0831)
逐次比较型AD由一个比较器和DA转换器通过逐次比较逻辑构成,从MSB开始,顺序地对每一位将输入电压与内置DA转换器输出进行比较,经n次比较而输出数字值。
其电路规模属于中等。
其优点是速度较高、功耗低,在低分辨率(12位)时价格很高。
3)并行比较型/串并行比较型(如TLC5510)
并行比较型AD采用多个比较器,仅作一次比较而实行转换,又称FLash(快速)型。
由于转换速率极高,n位的转换需要2n-1个比较器,因此电路规模也极大,价格也高,只适用于视频AD转换器等速度特别高的领域。
串并行比较型AD结构上介于并行型和逐次比较型之间,最典型的是由2个n/2位的并行型AD转换器配合DA转换器组成,用两次比较实行转换,所以称为Halfflash(半快速)型。
还有分成三步或多步实现AD转换的叫做分级(Multistep/Subrangling)型AD,而从转换时序角度又可称为流水线(Pipelined)型AD,现代的分级型AD中还加入了对多次转换结果作数字运算而修正特性等功能。
这类AD速度比逐次比较型高,电路规模比并行型小。
4)Σ-Δ(Sigma-delta)调制型(如AD7705)
Σ-Δ型AD由积分器、比较器、1位DA转换器和数字滤波器等组成。
原理上近似于积分型,将输入电压转换成时间(脉冲宽度)信号,用数字滤波器处理后得到数字值。
电路的数字部分基本上容易单片化,因此容易做到高分辨率。
主要用于音频和测量。
5)电容数组逐次比较型
电容数组逐次比较型AD在内置DA转换器中采用电容矩阵方式,也可称为电荷再分配型。
一般的电阻数组DA转换器中多数电阻的值必须一致,在单芯片上生成高精度的电阻并不容易。
如果用电容数组取代电阻数组,可以用低廉成本制成高精度单片AD转换器。
最近的逐次比较型AD转换器大多为电容数组式的。
6)压频变换型(如AD650)
压频变换型(Voltage-FrequencyConverter)是通过间接转换方式实现模数转换的。
其原理是首先将输入的模拟信号转换成频率,然后用计数器将频率转换成数字量。
从理论上讲这种AD的分辨率几乎可以无限增加,只要采样的时间能够满足输出频率分辨率要求的累积脉冲个数的宽度。
其优点是分辨率高、功耗低、价格低,但是需要外部计数电路共同完成AD转换。
4.2ADC0809的简单介绍
ADC0809是采样频率为8位的、以逐次逼近原理进行模—数转换的器件。
其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。
1.主要特性
1)8路8位A/D转换器,即分辨率8位。
2)具有转换起停控制端。
3)转换时间为100μs。
4)单个+5V电源供电。
5)模拟输入电压范围0~+5V,不需零点和满刻度校准。
6)工作温度范围为-40~+85摄氏度。
7)低功耗,约15mW。
2.内部结构
ADC0809是CMOS单片型逐次逼近式A/D转换器,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型D/A转换器、逐次逼近。
3.外部特性(引脚功能)
ADC0809芯片有28条引脚,采用双列直插式封装,如图4.2所示。
下面说明各引脚功能。
IN0~IN7:
8路模拟量输入端。
2-1~2-8:
8位数字量输出端。
ADDA、ADDB、ADDC:
3位地址输入线,用于选通8路模拟输入中的一路。
ALE:
地址锁存允许信号,输入,高电平有效。
START:
A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。
EOC:
A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。
OE:
数据输出允许信号,输入,高电平有效。
当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。
CLOCK:
时钟脉冲输入端。
要求时钟频率不高于640KHZ。
REF(+)、REF(-):
基准电压。
Vcc:
电源,单一+5V。
GND:
地。
ADC0809的工作过程是:
首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。
此地址经译码选通8路模拟输入之一到比较器。
START上升沿将逐次逼近寄存器复位。
下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。
直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。
当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。
5硬件电路的设计
5.1单片机主电路设计
在本次课题设计中我们选择了8951芯片,其原因如下:
89C51为EEPROM型单片机,这种单片机是80C51的升级版,其引脚功能并未发生变化,89C51不但可以将程序加到“加载”芯片内大程序存储器中,而且只要以5伏电压,即可轻松、快速的清除程序存储器里的数据,早已成为目前的主流产品,这种芯片可重复写入与清除1000次,如非操作上的错误或引脚折断,出现芯片烧毁的情况几乎为零,所以作为从实际出发,89C51不论从性能上还是从价格上考虑都将是本次设计的不二之选。
5.1.1复位电路
复位电路如图5.1所示,单片机系统常常有上电复位和操作复位两种。
上电复位是指单片机上点瞬间,要在RST引脚上出现宽度大于10ms的正脉冲,才能使单片机进入复位状态。
操作复位是指用户按下“复位”按钮使单片机进入复位状态。
图5-1复位电路
5.1.2晶振电路
晶振电路用于产生单片机工作所需的时钟信号,使用晶体震荡器时,c2,c3取值20~40PF,使用陶瓷震荡器时c2,c3取值30~50PF。
在设计电路板时,晶振和电容应尽量靠近芯片,以减小分布电容,保证震荡器的稳定性。
18引脚接XTAL1,19引脚接XTAL2,20引脚接地。
图5-2晶振电路
5.1.3按键电路设计
按键选择上有两种方法可供选择,独立式按键与矩阵式按键,再此使用了独立式按键。
对按键的工作过程可分为两步:
第一步是CPU首先检测键盘上是否有键按下;第二步是在识别是哪一个键按下。
检测键盘上有无键按下可采取查询各自方式、定时扫描构造方式和中断耕作方式。
在此选择了查询工作方式。
按键模块如图5.1.3所示,其与P3口连接,实现通道选择。
5.1.4显示电路设计
LED数码管构成
LED数码管显示器是由发光二极管显示字段的显示器件,也称为数码管。
其外形结构如图所示。
它由8个发光二极管构成,通过不同的组合可用来显示0-9、A-F及小数点“.”等字符。
数码管有共阴极和共阳极两种结构规格,如图5-3(A/B)所示。
图中电阻为外接。
共阴极数码管的发光二极管阴极共地,当某发光二极管的阳极为高电平时,二极管点亮;共阳极数码管的发光二极管是阳极,并接高电平,对于需点亮的发光二极管将其阴极接低电平即可。
对照图5.1.4中的字段:
7段发光二极管,在加上1个小数点位,共计8段,因此提供给LED显示器的字形码正好一字节。
图5-3(a)共阴极图5-3(b)共阳极
图5-4(C)字段显示
5.1.5显示方式
(1)静态显示方式
直接利用并行口输出。
LED显示工作于静态显示方式时,各位的共阴极连接在一起接地;每位的段选线分别于一个8位的锁存输出相连。
一般称之为静态显示,是由于显示器中的各位相互独立。
而且各位的显示字符一经确定,相应锁存器的输出将维持不变,直到显示另一个字符为止。
利用通信号串行输出。
在实际应用中,多位LED显示时,为了简化电路,在系统不需要通信功能时,经常采用串行通信口工作方式0,外接移位寄存器74LS164、CD4094来实现静态显示。
(2)动态显示方式
对多位LED显示器的动态显示,通常都时采用动态扫描的方法进行显示,即逐个循环点亮各位显示器。
这样虽然在任一时刻只有一位显示器被点亮,但是由于间隔时间较短,且人眼具有视觉残留效应,看起来与全部显示器持续点亮一样。
为了实现LED显示器的动态扫描,除了要给显示器提供的输入之外,还要对显示器加位选择控制,这就是通常所说的段控和位控。
因此多位LED显示器接口电路需要有两个输出口,其中一个用于输出8位控信号;另一个用于输出段控信号,其连接图如下。
5-5LED显示电路
6软件设计
6.1主程序设计
6.1.1工作流程
首先拨动拨码开关k1,如果是低电平,程序转向选择通道程序,拨动k2的次数即是选择的通道号,拨动k3表示确认。
转向数据读取程序,再到显示程序,显示出通道号和电压值。
如果k1是高电平,则转向循环显示程序,即先显示第0路最后显示第7路电压值和相应通道号。
工作流程图如下:
6.1.2存储空间定义安排
60H用于存放A/D转换结果,30H、31H、32H分别存储显示用的三位数据如下表:
表6-2存储空间定义表
60H
用于存放A/D转换结果
30H
电压值整数部分
31H
电压值小数部分
6.2模块程序设计
6.2.1A/D转换测量程序流程
A/D转换的常用方法有:
①计数式A/D转换,②逐次逼近型A/D转换,③双积分式A/D转换,④V/F变换型A/D转换。
在这些转换方式中,记数式A/D转换线路比较简单,但转换速度较慢,所以现在很少应用。
双积分式A/D转换精度高,多用于数据采集及精度要求比较高的场合,如5G14433(31/2位),AD7555(41/2位或51/2位)等,但速度更慢。
逐次逼近型A/D转换既照顾了转换速度,有具有一定的精度,这里选用的是逐次逼近型的A/D转换芯片ADC0809。
采用中断控制的方式实现,不浪费时间,效率较高。
其流程图如下:
6.2.2显示程序流程
对多位LED显示器的动态显示,通常都是采用动态扫描的方法进行显示,即逐个循环点亮各位显示器。
这样虽然在任一时刻只有一位显示器被点亮,但是由于间隔时间较短,且人眼具有视觉残留效应,看起来与全部显示器持续点亮一样。
为了实现LED显示器的动态扫描,除了要给显示器提供的输入之外,还要对显示器加位选择控制,这就是通常所说的段控和位控。
因此多位LED显示器接口电路需要有两个输出口,其中一个用于输出8位为控信号;另一个用于输出段控信号。
7程序
ORG0000H
AJMPMAIN
ORG0003H
AJMPJINT0
MAIN:
NOP
MOVR0,#60H
MOVR2,#00H
MOVA,R2
MOVDPTR,#1FFFH
SETBIT0
SETBEX0
SETBEA
LOOP1:
MOVX@DPTR,A
LOOP:
AJMPLOOP
JINT0:
NOP
CLREX0
MOVXA,@DPTR
MOV@R0,A
SJMPXS
SJMPLOOP2
LOOP2:
SETBEXO
MOVX@DPTR,A
AJMPLOOP
XIANSHI:
MOVXA,@R0
MOVB,#10
DIVAB
DAA
MOV30H,A;整数
MOVA,B
DAA
MOV31H,A;小数
MOVDPTR,#TAB
MOVA,30H
MOVCA,@A+DPTR
MOVP1,A
MOVP2,#01H
CALLD20
MOVDPTR,#TAB
MOVA,31H
MOVCA,@A+DPTR
MOVP1,A
MOVP2,#O2H
CALLD20
TAB:
DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;0123456789
RET
D20:
MOVR4,#10H
L1:
MOVR5,#10H
L2:
DJNZR5,L2
DJNZR4,L1
RET
8仿真截图
9谢辞
时间过得很快,经过了资料的搜集和查询,方案的选择,各种元器件的选择和原理图设计,程序编写,修改调试等,我的毕业设计也接近了尾声。
此次设计是在廉文利老师的悉心指导下完成的,在整个设计过程中,廉老师给我提供了很大的帮助。
无论是在方案确定还是在图形绘制的每一个环节,都给予了我悉心指导。
我希望借此机会向廉老师表示最衷心的感谢!
毕业设计是大学里的最后一课,每个同学都希望交上一份满意的答卷,每个老师也都希望同学们能给自己大学三年的学生生涯画上一个圆满的句号。
回顾三年的学习,担任自动化专业的各位老师们无论在学习上还是在生活上都给予了我很大的帮助。
在此向各位老师表示诚挚的感谢,非常感谢各位老师的教导与栽培!
本次设计期间也得到了许多同学的帮助,在此表示感谢,但是由于本人的水平有限和经验的不足,设计中难免会存在一些错误和不知之处,恳请大家指正,不胜感激!
在未来的日子里,我将更加努力的学习和工作,来报答曾经关心过我的老师,同学和朋友。
10参考文献
[1]黄智伟编著.凌阳单片机课程设计指导.北京:
北京航空航天大学出版社,2007
[2]高吉祥.模拟电子线路设计.北京:
电子工业出版社,2007
[3]张华林,周小方编著.电子设计竞赛实训教程.北京:
北京航空航天大学出版社,2007
[4]王彦朋主编.大学生电子设计与应用.北京:
中国电力出版社,2007
[5]穆兰主编.单片微型机算机原理及接口技术.北京:
机械工业出版社,2006
[6]刘文涛.单片机应用开发实例.北京:
清华大学出版社,2005
[7]刘同法,陈忠平编著.单片机基础与最小系统实践.北京:
北京航空航天出版社,2007
[8]孙余凯等编著.常用集成电路实用手册.北京:
电子工业出版社,2005
[9]王新贤主编.通用集成电路速查手册.济南:
山东科学技术出版社,2002(2006重印)
[10]胡宴如主编.模拟电子技术.北京:
高等教育出版社,2000
[11]彭为,黄科,雷道仲编著.单片机典型系统设计实例精讲.北京:
电子工业出版社,2006
[12]殿栋.数字电路设计实用手册[M].北京:
北京电子工业出版社,2003年
[13]范立南,李雪飞,尹授远.单片微型计算机控制系统[M].北京:
人民邮电出版,2004.
[14]李群芳.单片微型计算机与接口技术(第二版)[M].北京:
电子工业出版社,2005.
[15]童诗白.模拟电子技术基础[M].北京:
高等教育出版社,2000.
[16]徐爱钧.智能化测量控制仪表原理与设计(第二版).北京:
北京航空航天大学出版社,2004
[17]吴金戌.8051单片机实践与应用.北京:
清华大学出版社,2002
[18]张国勋.缩短ICL7135A/D采样程序时间的一种方法,1993
[19]高峰.单片微型计算机与接口技术.北京:
科学出版社,2003
[20]PhilipsSemiconduetorsDatasheet.ULN2003ADARLINGTONTRANSISTORARRAY[S].2001.
11外文资料
英文原文
Microcontrollerapplications
SCMisanintegratedhighdegreeofmicro-computer,acomputerwiththefunctionsintegratedinasmallchip.TheMCUhastheadvantagesofultra-small,compact,highreliability,highanti-interferenceabilityandhighcostperformance,especiallysuitablefortimelyindustrialmeasurementandcontrol,intelligentinstrumentation,computerperipheralsandhomeappliancescontrolapplications.
Thedirectionofdevelopmentofthemicrocontrollerare:
toincreasethestoragecapacity,on-chipEPROMstartEEPROMmemoryencodingconfidential,o