当前位置:文档之家› 单片机数字电压表课程设计报告

单片机数字电压表课程设计报告

内容摘要电压表是测量仪器中不可缺少的设备,目前广泛应用的是采用专用集成电路实现的数字电压表。

本系统以8051单片机为核心,以逐次逼近式A/D转换器ADC0809、LED显示器为主体,设计了一款简易的数字电压表,能够测量0~5V 的直流电压,最小分辨率为0.02V。

该设计大体分为以下几个部分,同时,各部分选择使用的主要元器件确定如下:1、单片机部分。

使用常见的8051单片机,同时根据需要设计单片机电路。

2、测量部分。

该部分是实验的重点,要求将外部采集的模拟信号转换成数字信号,通过单片机的处理显示在显示器上,该部分决定了数字电压表的精度等主要技术指标。

根据需要本设计采用逐次逼近型A∕D转换器ADC0809进行模数转换。

3、键盘显示部分。

利用4×6矩阵键盘的一个按键控制量程的转换,3或4位LED显示。

其中一位为整数部分,其余位小数部分。

索引关键词:8051 模数转换LED显示矩阵键盘目录一概述 (4)二方案设计与论证 (4)三单元电路设计与参数计算 (4)3.1. A∕D转换器0809 (5)3.1. LED数码显示 (7)四总原理图及参考程序 (9)五结论 (10)六心得体会 (14)七参考文献 (15)一、概述数字电压表的基本工作原理是利用A/D转换电路将待测的模拟信号转换成数字信号,通过相应换算后将测试结果以数字形式显示出来的一种电压表。

较之于一般的模拟电压表,数字电压表具有精度高、测量准确、读数直观、使用方便等优点。

电压表的数字化测量,关键在于如何把随时连续变化的模拟量转化成数字量,完成这种转换的电路叫模数转换器(A/D)。

数字电压表的核心部件就是A/D 转换器,由于各种不同的A/D转换原理构成了各种不同类型的DVM。

一般说来,A/D转换的方式可分为两类:积分式和逐次逼近式。

积分式A/D转换器是先用积分器将输入的模拟电压转换成时间或频率,再将其数字化。

根据转化的中间量不同,它又分为U-T(电压-时间)式和U-F(电压-频率)式两种。

逐次逼近式A/D转换器分为比较式和斜坡电压式,根据不同的工作原理,比较式又分为逐次比较式及零平衡式等。

斜坡电压式又分为线性斜坡式和阶梯斜坡式两种。

在高精度数字电压表中,常采用由积分式和比较式相结合起来的复合式A/D 转换器。

本设计以8051单片机为核心,以逐次比较型A/D转换器ADC0809、LED显示器为主体,构造了一款简易的数字电压表,能够测量1路0~5V直流电压,最小分辨率0.02V。

二、方案设计与论证该设计是基于8051的数字电压表,大体分为以下几个部分,同时,各部分选择使用的主要元器件确定如下:(1)单片机部分使用常见的8051单片机,同时根据需要设计单片机电路。

(2)测量部分该部分是实验的重点,要求将外部采集的模拟信号转换成数字信号,通过单片机的处理显示在显示器上,该部分决定了数字电压表的精度等主要技术指标。

根据需要本设计采用逐次逼近式A/D转换器0809进行模数转换。

(3)键盘显示部分利用4×6矩阵键盘的一个按键控制量程的转换,3或4位LED显示。

其中一位为整数部分,其余位小数部分。

三、单元电路设计与参数计算3.1 ADC0809(1)主要特性1)8路8位A/D转换器,即分辨率8位。

2)具有转换起停控制端。

3)转换时间约为128μs4)单个+5V电源供电5)模拟输入电压范围0~+5V,不需零点和满刻度校准。

6)工作温度范围为-40~+85摄氏度7)低功耗,约15mW。

(2)内部结构图1 ADC0809内部结构框图ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构如图1所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型D/A转换器、逐次逼近寄存器、三态输出锁存器等其它一些电路组成。

因此,ADC0809可处理8路模拟量输入,且有三态输出能力,既可与各种微处理器相连,也可单独工作。

输入输出与TTL兼容。

(3)外部特性(引脚功能)ADC0809芯片有28条引脚,采用双列直插式封装,如上图所示。

下面说明各引脚功能。

IN0~IN7:8路模拟量输入端。

D0~D7:8位数字量输出端。

START: A/D转换启动信号,输入,高电平有效。

ALE:地址锁存允许信号,输入,高电平有效。

OE:数据输出允许信号,输入,高电平有效。

当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。

CLK:时钟脉冲输入端。

要求时钟频率不高于640KHZ。

ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路。

如表1所示。

EOC: A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。

VREF(+)、VREF(-):基准电压。

VCC:电源,接+5V。

GND:地。

表1 地址与通道对应关系ADC0809的工作过程是:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。

此地址经译码选通8路模拟输入之一到比较器。

START上升沿将逐次逼近寄存器复位。

下降沿启动 A/D转换,之后EOC输出信号变低,指示转换正在进行。

直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。

当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。

3.2 LED数码显示(1)LED显示器LED是由若干个发光二极管组成的。

当发光二极管导通时,相应的一个点或一个笔划发亮。

控制不同组合的二极管导通,就能显示出各种字符。

这种笔划式的七段显示器,能显示的字符数量少,但控制简单、使用方便。

发光二极管的阳极连在一起的称为共阳极显示器,阴极连在一起的称为共阴极显示器(2)LED结构及显示原理通常的七段LED显示块中有八个发光二极管,故也有人叫做八段显示块。

其中七个发光二极管构成七笔字形“8”。

一个发光二极管构成小数点。

七段显示块与单片机接口非常容易。

只要将一个8位并行输出口与显示块的发光二极管引脚相连即可。

8位并行输出口输出不同的字节数据即可获得不同的数字或字符。

通常将控制发光二极管的8位字节数据称为段选码或段数据。

一些字形的段选码如下表:(3)LED的结构及其工作原理点亮显示器有静态和动态两种方法。

1)静态显示:当显示某一个字符时,相应的发光二极管恒定地导通或截止。

例如七段显示器的a、b、c、d、e、f导通,g、dp截止,显示0。

静态显示的特点是:每一位都需要一个8位输出口控制,用于显示位数较少(仅一、二位)的场合。

较小的电流能得到较高的亮度,可以由8255的输出口直接驱动。

图示为三位显示器的接口逻辑。

2)动态显示:一位一位地轮流点亮各位显示器(扫描)。

对于每一位显示器来说,每隔一段时间点亮一次。

显示器的亮度既与导通电流有关,也和点亮时间与间隔时间的比例有关。

若显示器的位数不大于8位,则控制显示器公共极电位只需一个8位并行口(称为扫描口或位选口)。

控制各位显示器所显示的字形也需一个共用的8位口(称为段数据口),用于显示位数稍多的场合,需编写扫描程序。

四、总原理图及参考程序1、总原理图2、程序流程图及参考程序(1)程序流程图(2)参考程序OUTBIT EQU 09002HOUTSEG EQU 09004HIN EQU 09001HLEDBUF EQU 60HLJMP MAINLEDMAP:DB 3FH, 06H, 5BH, 4FH, 66H, 6DB, 7DB, 07HDB 7FH, 6FH, 77H, 7CH, 39H, 5EH, 79H, 71H DELAY:MOV R7,#0DELAYLOOP:DJNZ R7,DELAYLOOPDJNZ R6,DELAYLOOPRETDISPLAYLED:MOV R0,#LEDBUFMOV R1,#4MOV R2,#000000001BLOOP:MOV A,@R0MOV DPTR,#OUTSEGMOVX @DPTR,AMOV DPTR,#OUTBITMOV A,R2MOVX @DPTR,AMOV R6,#01CALL DELAYMOV A,R2R1 AMOV R2,AINC R0DJNZ R1,LOOPTESRKEY:MOV DPTR, #OUTBITMOV A,#0MOV A,#0MOVX @DPTR,AMOV DPTR,#INMOVX A,@DPTRCPL AANL A,#0FHRETKEYTABLE:DB 16H, 15H, 14H, 0FFHDB 13H, 12H, 11H, 10HDB 0dH, 0cH, 0bH, 0aHDB 0eH, 03H, 06H, 09HDB 0FH, 02H, 05H, 08HDB 00H, 01H, 04H, 07H GETKEY:MOV DPTR,#OUTBITMOV P2,DPHMOV R0,#INMOV R1,#00100000BMOV R2,#6KLOOP:MOV A,R1CPL AMOVX @DPTR,AMOVX A,@R0CPL AANL A,#0FHJNZ GOON1GOON1:MOV R1,AMOV A,R2DEC ARL ARL AMOV R2,AMOV A,R1MOV R1,#2LOOPC:RRC AJC EXITINC R2DJNZ R1,LOOPCEXIT:MOV A,R2MOV DPTR,#KEYTABLEMOVC A,@A+DPTRMOV R2,A WAITRELEASE:MOV DPTR,#OUTBITCLR AMOV R6,#10CALL DELAYCALL TESTKEYJNZ WAITRELEASEMOV A,R2RETMAIN:MOV DPTR,#8000HMOVX @DPTR,A HERE:JNB P3.3,HEREMOVX A,@DPTRMOV P1,AMOV R5,ACALL DISPLAYLEDCALL TESTKEYJZ L5CALL GETKEYMOV 40H,AL5:MOV 63H,#00HMOV A,R5MOV B,#51MOV ABMOV 62H,AMOV A,BJZ LOOP1RL ASUBB A,#2MOV B,#10DIV ABMOV 61H,AMOV 60H,BAJMP MLOOPLOOP1:MOV 61H,#00MOV 60H,#00AJMP MLOOP MLOOP:MOV R0, #LEDBUF FILLBUF:MOV A,@R0MOV DPTR,#LEDMAPMOVC A,@A+DPTRCLR CMOV A,40HADD A,41HANL A,#01HMOV 41H,ARRC AMOV 40H,#00HJC WEI2WEI1:CJNE R0,#62H,XS01MOV A,50HADD A,#80HSJMP XS1XS01:MOV A,50HXS1:MOV @R0,AINC R0CJNE R0,#LEDBUF+3, FILLBUFLJMP STARTWEI2:CJNE R0,#63H,XS0MOV A,50HADD A,#80HSJMP XSXS0:MOV A,50HXS:MOV @R0,AINC R0CJNE R0,#LEDBUF+4, FILLBUFLJMP STARTEND七、结论本设计以8051单片机为控制核心,通过集成摸数转换芯片ADC0809将被测信号转换成数字信号,经单片机内部程序处理后,由LED八段数码管显示测量结果。

相关主题