基于单片机的简单数字电压表

基于单片机的简单数字电压表
基于单片机的简单数字电压表

河南科技学院新科学院单片机课程设计报告

题目:数字电压表设计

专业班级:电气工程及其自动化106

姓名:王

时间:2012.12.03 ~2012.12.23

指导教师:苗青林王超

完成日期:2012年12月21 日

数字电压表设计任务书

一设计目的与要求

(一)基本功能

1.测压范围0—5V

2.精度误差0.02V以内

3.能够同时采集8路数据并能循环(6位)显示

4.具备过压保护功能

(二)扩展功能

1.测压范围扩展至 -5V—+5V

2.在测直流电压时表笔能够自动调整极性

二计划完成时间三周

1.第一周完成软件和硬件的整体设计,同时按要求上交设计报告一份。

2.第二周完成软件的具体设计和硬件的制作。

3.第三周完成软件和硬件的联合调试。

目录

1 引言 (1)

2 设计总方案 (1)

2.1设计要求 (1)

2.2 设计思路 (2)

2.3 总体设计框图 (2)

3 设计原理分析 (2)

3.1 A/D转换电路 (2)

3.2 过压保护电路 (4)

3.3 数码管显示电路 (5)

3.4 震荡与复位电路 (5)

3.5 拓展功能负压显示 (6)

3.6 八通道循环显示 (7)

4 总结体会 (8)

参考文献 (8)

附录1 (9)

附录2 (13)

简易数字电压表设计

摘要:本课题实验主要采用AT89C51芯片和ADC0808芯片来完成一个简易的数字电压表,能够对输入的0~5 V的模拟直流电压进行测量,并通过一个4位一体的7段LED数码管进行显示,测量误差约为0.019V。该电压表的测量电路主要由三个模块组成:A/D转换模块、数据处理模块及显示控制模块。A/D转换主要由芯片ADC0808来完成,它负责把采集到的模拟量转换为相应的数字量再传送到数据处理模块。数据处理则由芯片AT89C51来完成,其负责把ADC0808传送来的数字量经一定的数据处理,产生相应的显示码送到显示模块进行显示;另外它还控制着ADC0808芯片的工作。显示模块主要由7段数码管及相应的驱动芯片(74HC245)组成,显示测量到的电压值。

关键词:简易数字电压表;ADC0809;AT89C51;LED。

1 引言

数字电压表(Digital Voltmeter)简称DVM,作为智能仪表的一种,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC 进行实时通信。目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。

最近的几十年来,随着半导体技术、集成电路(IC)和微处理器技术的发展,数字电路和数字化测量技术也有了巨大的进步,从而促使了数字电压表的快速发展,并不断出现新的类型。数字电压表从1952年问世以来,经历了不断改进的过程,从最早采用继电器、电子管和形式发展到了现在的全固态化、集成化(IC化),另一方面,精度也从0.01%-0.005%。

本文是以简易数字直流电压表的设计为研究内容,本系统主要包括三大模块:转换模块、数据处理模块及显示模块。其中,A/D转换采用ADC0808对输入的模拟信号进行转换,控制核心AT89C51再对转换的结果进行运算处理,最后驱动输出装置LED显示数字电压信号。

2 设计总方案

2.1设计要求

(1)以MCS-51系列单片机为核心器件,组成一个简单的直流数字电压表。

(2)采用1路模拟量输入,能够测量0-5V之间的直流电压值。

(3)电压显示用4位一体的LED数码管显示,至少能够显示两位小数。

(4)具有过压保护功能。

(5)能够测量-5V-5V电压。

(6)可以八通道循环显示。

(7)尽量使用较少的元器件。

2.2 设计思路

(1)根据设计要求,选择AT89C51单片机为核心控制器件。

(2)A/D转换采用ADC0808实现,与单片机的接口为P1口和P2口的高四位引脚。

(3)电压显示采用4位一体的LED数码管。

(4)LED数码的段码输入,由并行端口P0产生:位码输入,用并行端口P2低四位产生。

2.3 总体设计框图

硬件电路设计由6个部分组成; A/D转换电路,AT89C51单片机系统,LED显示系统、时钟电路、复位电路以及测量电压输入电路。硬件电路设计框图如图1所示。

图1 数字电压表系统硬件设计框图

3 设计原理分析

3.1 A/D转换电路

本设计采用的是ADC0808,ADC 0808精度为8位,它是CMOS器件,不仅包括一个8位的逐次逼近型的ADC部分,而且还提供一个8通道的模拟多路开关和通道寻址逻辑,因而有理由把它作为简单的“数据采集系统”。利用它可直接输入8个单端的模拟信号分时进行A/D转换,在多点巡回检测和过程控制、运动控制中应用十分广泛。

其外部引脚图如图2所示:

图2 ADC0808/0809外部引脚图

各个引脚的功能为:

(1)IN0~IN7——8路模拟输入,通过3根地址译码线ADDA、ADDB、ADDC来选通一路。

(2)D7~D0——A/D转换后的数据输出端,为三态可控输出,故可直接和微处理器数据线连接。8位排列顺序是D7为最高位,D0为最低位。

(3)ADDA、ADDB、ADDC——模拟通道选择地址信号,ADDA为低位,ADDC为高位。

(4)VR(+)、VR(-)——正、负参考电压输入端,用于提供片内DAC电阻网络的基准电压。在单极性输入时,VR(+)=5V,VR(-)=0V;双极性输入时,VR(+)、VR(-)分别接正、负极性的参考电压。

(5)ALE——地址锁存允许信号,高电平有效。当此信号有效时,A、B、C三位地址信号被锁存,译码选通对应模拟通道。在使用时,该信号常和START信号连在一起,以便同时锁存通道地址和启动A/D转换。

(6)START——A/D转换启动信号,正脉冲有效。加于该端的脉冲的上升沿使逐次逼近寄存器清零,下降沿开始A/D转换。如正在进行转换时又接到新的启动脉冲,则原来的转换进程被中止,重新从头开始转换。

(7)EOC——转换结束信号,高电平有效。该信号在A/D转换过程中为低电平,其余时间为高电平。该信号可作为被CPU查询的状态信号,也可作为对CPU的中断请求信号。在需要对某个模拟量不断采样、转换的情况下,EOC也可作为启动信号反馈接到START 端,但在刚加电时需由外电路第一次启动。

(8)OE——输出允许信号,高电平有效。当微处理器送出该信号时,ADC0808/0809的输出三态门被打开,使转换结果通过数据总线被读走。在中断工作方式下,该信号往往是CPU发出的中断请求响应信号。

ADC0809的工作过程:

(1)首先确定ADDA、ADDB、ADDC三位地址,决定选择哪一路模拟信号;

(2)使ALE端接受一正脉冲信号,使该路模拟信号经选择开关到达比较器的输入端;

(3)使START接受一正脉冲信号,START的上升沿将逐次逼近寄存器复位,下降沿启动A/D转换;

(4) EOC输出信号变低,指示转换正在进行。

(5) A/D转换结束,EOC变为高电平,指示A/D转换结束。此时,数据已保存到8位三态输出锁存器中。此时CPU就可以通过使OE信号为高电平,打开ADC0809三态输出,由ADC0809输出的数字量传送到CPU。如下图表一:

C B A 选择的通道

0 0 0 IN1

0 0 1 IN2

0 1 0 IN3

0 1 1 IN4

1 0 0 IN5

1 0 1 IN6

1 1 0 IN7

1 1 1 IN8

3.2 过压保护电路

如下图过压保护电路,发光二极管理想情况下的压降位2V。当电压低于5V时,发光二级管与电源不能构成闭合回路,且RC远远大于RR,所以输出电压近似等于输入电压,当输入电压大于5V时,发光二级管与电源构成闭合回路,二极管发光,提示过电压,而且输出电压近似等于5V。

图3过压保护电路

3.3 数码管显示电路

本设计使用的是LED数码管,LED数码管显示器是由发光二极管显示字段的显示器件,也称为数码管。其外形结构如图所示。它由8个发光二极管构成,通过不同的组合可用来显示0-9、A-F及小数点“.”等字符。LED数码管提供三种控制接口,分别是8位微处理器接口,4位微处理器接口及串行接口。

图4 显示电路

3.4 震荡与复位电路

单片机内部有一个高增益、反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。通过这两个引脚在芯片外并接石英晶体振荡器(大小为1MHZ)和两只电容(电容和一般取30pF)。这样就构成一个稳定的自激振荡器。振荡电路脉冲经过二分频后作为系统的时钟信号,再在二分频的基础上三分频产生ALE信号,此时得到的信号时机器周期信号。振荡电路如图5所示:

图5 振荡电路图

复位操作有两种基本形式:一种是上电复位,另一种是按键复位。按键复位具有上电复位功能外,若要复位,只要按图中的RESET键,电源VCC经电阻R1、R2分压,在RESET端产生一个复位高电平。上电复位电路要求接通电源后,通过外部电容充电来实现单片机自动复位操作。上电瞬间RESET引脚获得高电平,随着电容的充电,RERST引脚的高电平将逐渐下降。RERST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。按键复位电路图如图6所示。

图6 复位电路图

3.5 拓展功能负压显示

使用单片机判断p1.7的高低电平来是执行0-5V的电压输出还是-5V-5V的电压,但会是该简易数字电压表的精度误差升高为0.0392V,当测量负压的时候有外界提供-5V 电压,因为我们的过压保护不能保护有点不足,所以需另外引出线作为输入的测试电压如下图7负压测试:第一个数码管显示表示为零通道。

图7负压显示电路

此电路的工作原理是:模拟电压(负压)信号通过变阻器VR?分压后由ADC0808的IN0通道进入(由于使用的IN0通道,所以ADDA,ADDB,ADDC均接低电平),经过模/数转换后,产生相应的数字量经过其输出通道D0-D7传送给AT89C51芯片的P2口,AT89C51负责把接收到的数字量经过数据处理,产生正确的7段数码管的显示段码传送给四位LED,同时它还通过其四位I/O口P1.0、P1.1、P1.2、P1.3产生位选信号控制数码管的亮灭。此外,AT89C51还控制ADC0808的工作。其中,单片机AT89C51通过定时器中断从P3.3输出方波,接到ADC0808的CLOCK,P3.0发正脉冲启动A/D转换,P3.2检测A/D转换是否完成,转换完成后,P3.1置高从P1口读取转换结果送给LED显示出来。

简易数字直流电压表的硬件电路已经设计完成,就可以选取相应的芯片和元器件,利用Proteus软件绘制出硬件的原理,并仔细地检查修改,直至形成完善的硬件原理图。但要真正实现电路对电压的测量和显示的功能,还需要有相应的软件配合,才能达到设计要求。

3.6 八通道循环显示

ADDA、ADDB、ADDC为3位片选地址输入线,用于选通8路模拟输入中的一路。本例中分别将之接在p3.4,p3.5,p3.6上,用单片机使之循环,来选择端口,使模拟量循环在数码管显示如下图8所示:

图8循环显示

4 总结体会

经过一段时间的努力,课程设计-基于MCS-51单片机数字电压表设计基本完成。但设计中的不足之处仍然存在。在这过程中,我对电路设计,单片机的使用等都有了新的认识。通过这次设计学会了Proteus和Keil软件的使用方法,掌握了从系统的需要、方案的设计、功能模块的划分、原理图的设计和电路图的仿真的设计流程,积累了不少经验。

基于单片机的数字电压表使用性强、结构简单、成本低、外接元件少。在实际应用工作应能好,测量电压准确,精度高。系统功能、指标达到了课题的预期要求、系统在硬件设计上充分考虑了可扩展性,经过一定的改造,可以增加功能。本文设计主要实现了简易数字电压表测量一路电压的功能,详细说明了从原理图的设计、电路图的仿真再到软件的调试。

通过本次设计,我对单片机这门课有了进一步的了解。无论是在硬件连接方面还是在软件编程方面。本次设计采用了AT89C51单片机芯片,与以往的单片机相比增加了许多新的功能,使其功能更为完善,应用领域也更为广泛。设计中还用到了模/数转换芯片ADC0808,以前在学单片机课程时只是对其理论知识有了初步的理解。通过这次设计,对它的工作原理有了更深的理解。

总之这次电路的设计和仿真,基本上达到了设计的功能要求。在以后的实践中,我将继续努力学习电路设计方面的理论知识,并理论联系实际,争取在电路设计方面能有所提升。

参考文献

[1] 李朝青.单片机原理及接口技术[M].(第三版).北京:北京航天航空大学出版社,2005.17~24

[2] 苗红霞.单片机实现数字电压表的软硬件设计[M].常州:河海大学常州大学出版社,2002,03~23

[3] 何立民.MCS-51单片机应用系统设计[M].北京:北京航空航天大学出版社,1990.01~18

[4] 胡辉主编.单片机原理及应用设计[M].北京:中国水利水电出版社,2005.1—284

附录1 程序清单:ORG 0000H LJMP MAIN

ORG 000BH AJMP ST

ORG 0030H MAIN: CLR C

MOV DPTR,#TAB MOV SP,#60H

MOV TMOD,#02H

MOV R0,#00H

MOV R1,#00H

MOV R2,#80

CRL P3.4

CRL P3.5

CRL P3.6

MOV TH0,#245 MOV TL0,#00H MOV IE,#82H

MOV P1,#0c0h SETB TR0

JNB P1.6,LOOPP1 LOOPP:MOV A,R1

SWAP A

ORL A,P3

MOV P3,A

LCALL REC

LCALL TRA

LCALL DIS

DJNZ R2,LOOPP

CRL P3.4

CRL P3.5

CRL P3.6

MOV R2,#80

INC R1

CJNE R1,#08H,LOOPP

MOV R1,#00H

SJMP LOOPP

LOOPP1:CRL P3.4

CRL P3.5

CRL P3.6

LCALL REC

JNB P1.7,LOOPPP

LCALL TRA

SJMP LOOPPP1

LOOPPP: LCALL TRA1

LOOPPP1: LCALL DIS

SJMP LOOPP1

REC:

CLR P3.0

CLR P3.1

SETB P3.0

NOP

NOP

CLR P3.0

JNB P3.2,$

SETB P3.1

MOV 50H,P2

RET

TRA:

MOV B,#33H MOV A,50H

DIV AB

MOV 51H,A

XCH A,B

MOV B,#05H

DIV AB

MOV 52H,A

MOV A ,#02H

MUL AB

MOV 53H,A

RET

TRA1: MOV A,50H

SUBB A,#7FH

JC LOOP4

RL A

CLR F0

MOV 50H,A

LOOP5:LCALL TRA

RET

LOOP4:MOV A,#7FH

SUBB A,50H

RL A

SETB F0

MOV 50H,A

SJMP LOOP5

ST: CPL P3.3

RETI

DIS:

SETB P1.0

JNB F0,LOOP2

MOV P0,#0BF

SJMP LOOP3

loop2: MOV P0,#0C0H

loop3: LCALL DELAY

MOV A,51H

MOVC A,@A+DPTR

CLR P1.4

CLR P1.0

SETB P1.1

MOV P0,#00H

MOV P0,A

CLR P0.7

LCALL DELAY

MOV A,52H

MOVC A,@A+DPTR

CLR P1.1

SETB P1.2

MOV P0,A

LCALL DELAY MOV A,53H

MOVC A,@A+DPTR

CLR P1.2

SETB P1.3

MOV P0,A

LCALL DELAY

MOV A,R1

MOVC A,@A+DPTR

CLR P1.3

SETB P1.4

MOV P0,A

LCALL DELAY

CLR P1.4

RET

DELAY:

MOV R7,#0AH

D1: MOV R6,#64H

DJNZ R6,$

DJNZ R7,D1

RET

TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H END

附录2 电路图

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

单片机课程设计 ——电压表的设计 学院:信息工程学院 专业:电子信息科学与技术 班级:2011150 学号:201115002 姓名:王冬冬 同组同学:凡俊兴 201115001

目录 1 引言 (1) 2设计原理及要求 (2) 2.1数字电压表的实现原理 (2) 2.2数字电压表的设计要求 (2) 3软件仿真电路设计 (2) 3.1设计思路 (2) 3.2仿真电路图 (3) 3.3设计过程 (3) 3.4 AT89C51的功能介绍 (4) 3.4.1简单概述 (4) 3.4.2主要功能特性 (5) 3.4.3 AT89C51的引脚介绍 (5) 3.5 ADC0809的引脚及功能介绍 (7) 3.5.1芯片概述 (7) 3.5.2 引脚简介 (8) 3.5.3 ADC0809的转换原理 (8) 3.6 74LS373芯片的引脚及功能 (8) 3.6.1芯片概述 (8) 3.6.2引脚介绍 (9) 3.7 LED数码管的控制显示 (9) 3.7.1 LED数码管的模型 (9)

LED数码管模型如图3-6所示。 (9) 3.7.2 LED数码管的接口简介 (9) 4系统软件程序的设计 (9) 4.1 主程序 (10) 4.2 A/D转换子程序 (11) 4.3 中断显示程序 (12) 5使用说明与调试结果 (13) 6总结 (13) 参考文献 (14) 附录1 源程序 (15) 附录2原理电路 (19)

1 引言 在电量的测量中,电压、电流和频率是最基本的三个被测量,其中电压量的测量最为经常。而且随着电子技术的发展,更是经常需要测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器。数字电压表简称DVM,它是采用数字化测量技术,把连续的模拟量转换成不连续、离散的数字形式并加以显示的仪表。由于数字式仪器具有读数准确方便、精度高、误差小、测量速度快等特而得到广泛应用[1]。 传统的指针式刻度电压表功能单一,进度低,容易引起视差和视觉疲劳,因而不能满足数字化时代的需要。采用单片机的数字电压表,将连续的模拟量如直流电压转换成不连续的离散的数字形式并加以显示,从而精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC实时通信。数字电压表是诸多数字化仪表的核心与基础[2]。以数字电压表为核心,可以扩展成各种通用数字仪表、专用数字仪表及各种非电量的数字化仪表。目前,由各种单片机和A/D转换器构成的数字电压表作全面深入的了解是很有必要的。 最近的几十年来,随着半导体技术、集成电路(IC)和微处理器技术的发展,数字电路和数字化测量技术也有了巨大的进步,从而促使了数字电压表的快速发展,并不断出现新的类型[4]。数字电压表从1952年问世以来,经历了不断改进的过程,从最早采用继电器、电子管和形式发展到了现在的全固态化、集成化(IC 化),另一方面,精度也从0.01%-0.005%。 目前,数字电压表的内部核心部件是A/D转换器,转换的精度很大程度上影响着数字电压表的准确度,因而,以后数字电压表的发展就着眼在高精度和低成本这两个方面[3]。 本文是以简易数字直流电压表的设计为研究内容,本系统主要包括三大模块:转换模块、数据处理模块及显示模块。其中,A/D转换采用ADC0808对输入的模拟信号进行转换,控制核心AT89C51再对转换的结果进行运算处理,最后驱动输出装置LED显示数字电压信号

基于单片机的数字电压表 论文

中国网络大学CHINESE NETWORK UNIVERSITY 毕业设计(论文) 院系名称:百度网络学院 专业:百度 学生姓名:百度 学号:123456789 指导老师:百度 中国网络大学教务处制

2019年3月1日

基于单片机的数字电压表 摘要:本文介绍一种基于89S52单片机的一种电压测量电路,该电路采用ICL7135高精度、双积分A/D转换电路,测量范围直流0-±2000伏,使用LCD液晶模块显示,可以与PC机进行串行通信。正文着重给出了软硬件系统的各部分电路,介绍了双积分电路的原理,89S52的特点,ICL7135的功能和应用,LCD1601的功能和应用。该电路设计新颖、功能强大、可扩展性强。 关键词:电压测量,ICL7135,双积分A/D转换器,1601液晶模块 Abstract: The introduction of a cost-based 89S52 MCU a voltage measurement circuits, the circuits used ICL7135 high-precision, dual-scoring A/D conversion circuits, measuring scope DC 0-2000 volts, the use of LCD that can be carried out with a PC serial communications. The paper focuses on providing a software and hardware system components circuit, introduced double integral circuit theory, 89S52 features ICL7135 functions and applications, LCD1601 functions and applications. the circuit design innovative, powerful, can be expansionary strong. Key Words: Digital Voltmeter ICL7135 LCD1601 89S52 1前言 数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。本章重点介绍单片A/D 转换器以及由它们构成的基于单片机的数字电压表的工作原理。

基于单片机的数字电压表设计报告

单片机原理及系统课程设计 专业:电气工程及其自动化 班级: 姓名: 学号: 指导教师: 兰州交通大学自动化与电气工程学院 2010 年 3 月 7 日

基于单片机的数字电压表设计 摘要

图3.2系统原理图4软件设计

5.系统调试及仿真结果 6.总结 两周的课程设计结束了,在这过程中,我学到了很多东西。首先,我学会了单片机设计的基本过程有哪些,每一过程有哪些基本的步骤,怎样通过查资料去完成这每一步。其次我巩固了上学期所学的一些单片机知识,从而加深了对ADC0809芯片的功能的了解。在编程过程中,遇到了许多困难,通过与同学之间的交流和咨询,最后解决了这些困难。所谓实践出真知,学到的东西只有运用到实践当中,才能真正体会到知识的力量。最后,通过这次课程设计,让我明白了想法和实践还是有差距的,当你真正去做一件事的时候,你会发现你的想法可能不适用,随时都需要调整,另外扎实的理论知识也是完成设计任何设计必不可少的要素,一切想法离开了理论知识都是空想。 参考文献 [1]彭为,黄科,雷道仲.单片机典型系统设计实例精讲[M].电子工业出版社.2009:22-54. [2] 谭浩强.C程序设计(第三版)[M].清华大学出版社.2009:32-46. [3] 王思明,张金敏,张鑫等.单片机原理及应用系统设计(第一版)[M].科学出版社.2012:70-292.

附录A源程序代码#include #include #define uchar unsigned char sbit p21=P2^1; sbit p22=P2^2; sbit p23=P2^3; sbit EOC=P3^1; sbit OE=P3^0; sbit ST=P3^2; sbit p34=P3^4; sbit p35=P3^5; sbit p36=P3^6;

多功能数字电压表课程设计

1.设计主要内容及要求; 设计一个多功能数字电压表。 要求:1)硬件电路设计,包括原理图和PCB板图。 2)数字电压表软件设计。 3)要求能够测量并显示直流电压、交流电压,测量范围0.002V---2V。 2.对设计论文撰写内容、格式、字数的要求; (1).课程设计论文是体现和总结课程设计成果的载体,一般不应少于3000字。 (2).学生应撰写的内容为:中文摘要和关键词、目录、正文、参考文献等。课程设计论文的结构及各部分内容要求可参照《沈阳工程学院毕业设计(论文)撰写规范》执行。应做到文理通顺,内容正确完整,书写工整,装订整齐。 (3).论文要求打印,打印时按《沈阳工程学院毕业设计(论文)撰写规范》的要求进行打印。 (4). 课程设计论文装订顺序为:封面、任务书、成绩评审意见表、中文摘要和关键词、目录、正文、参考文献。 3.时间进度安排;

中文摘要 随着微型计算机及微电子技术在测试领域中的广泛应用,仪器仪表在测量原理、准确度、灵敏度、可靠性、多种功能及自动化水平等方面都发生了巨大的变化,逐步形成了完全突破传统概念的新一代仪器——智能仪器。智能化是现代仪器仪表的发展趋势,许多嵌入式系统、电子技术和现场总线领域的新技术被应用于智能仪器仪表的设计,尤其是嵌入式系统的许多新的理念极大地促进了智能仪器仪表技术的发展。 今年来,随着大规模集成电路的发展,有单片A/D转换器构成的数字电压表获得了迅速普及和广泛应用,它是目前在电子测量及维修工作中最常用、最得力的一种工具类数字仪表。数字电压表具有很高的性价比,其主要优点是准确度高、分辨力强测试功能完善、测量速率快、显示直观。 测试仪器的智能化已是现代仪器仪表发展的主流方向。因此学习智能仪器的工作原理、掌握新技术和设计方法无疑是十分重要的。 关键词智能,数字,电压表,仪器仪表

51单片机简单数字电压表

毕业论文声明 本人郑重声明: 1.此毕业论文是本人在指导教师指导下独立进行研究取得的成果。除了特别加以标注地方外,本文不包含他人或其它机构已经发表或撰写过的研究成果。对本文研究做出重要贡献的个人与集体均已在文中作了明确标明。本人完全意识到本声明的法律结果由本人承担。 2.本人完全了解学校、学院有关保留、使用学位论文的规定,同意学校与学院保留并向国家有关部门或机构送交此论文的复印件和电子版,允许此文被查阅和借阅。本人授权大学学院可以将此文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本文。 3.若在大学学院毕业论文审查小组复审中,发现本文有抄袭,一切后果均由本人承担,与毕业论文指导老师无关。 4.本人所呈交的毕业论文,是在指导老师的指导下独立进行研究所取得的成果。论文中凡引用他人已经发布或未发表的成果、数据、观点等,均已明确注明出处。论文中已经注明引用的内容外,不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究成果做出重要贡献的个人和集体,均已在论文中已明确的方式标明。

学位论文作者(签名): 年月

关于毕业论文使用授权的声明 本人在指导老师的指导下所完成的论文及相关的资料(包括图纸、实验记录、原始数据、实物照片、图片、录音带、设计手稿等),知识产权归属华北电力大学。本人完全了解大学有关保存,使用毕业论文的规定。同意学校保存或向国家有关部门或机构送交论文的纸质版或电子版,允许论文被查阅或借阅。本人授权大学可以将本毕业论文的全部或部分内容编入有关数据库进行检索,可以采用任何复制手段保存或编汇本毕业论文。如果发表相关成果,一定征得指导教师同意,且第一署名单位为大学。本人毕业后使用毕业论文或与该论文直接相关的学术论文或成果时,第一署名单位仍然为大学。本人完全了解大学关于收集、保存、使用学位论文的规定,同意如下各项内容: 按照学校要求提交学位论文的印刷本和电子版本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、扫描、数字化或其它手段保存或汇编本学位论文;学校有权提供目录检索以及提供本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有关部门或者机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入学校有关数据库和收录到《中国学位论文全文数据库》进行信息服务。在不以赢利为目的的前提下,学校可以适当复制论文的部分或全部内容用于学术活动。 论文作者签名:日期: 指导教师签名:日期: 单片机硬件实习任务书

基于51单片机的数字电压表设计说明

1.1数字电压表介绍 数字电压表简称DVM,数字电压表基本原理是将输入的模拟电压信号转化为数字信号,再进行输出显示。而A/D转换器的作用是将连续变化的模拟信号量转化为离散的数字信号,器基本结构是由采样保持,量化,编码等几部分组成。因此AD转换是此次设计的核心元件。输入的模拟量经过AD转换器转换,再由驱动器驱动显示器输出,便得到测量的数字电压。 本次自己的设计作品从各个角度分析了AD转换器组成的数字电压表的设计过程及各部分电路的组成及原理,并且分析了数模转换进而使系统运行起来的原理及方法。通过自己的实践提高了动手能力,也只有亲历亲为才能收获掌握到液晶学过的知识。其实也为建立节约成本的意识有些帮助。本次设计同时也牵涉到了几个问题:精度、位数、速度、还有功耗等不足之处,这些都是要慎重考虑的,这些也是在本次设计中的收获。 1.3 本次设计要求 本次设计的作品要求制作数字电压表的量程为0到10v,由于用到的模数转换芯片是ADC0809,设计系统给的供电电压为+5v,所以能够测量的电压围为-0.25v到5.25v之间,但是一般测量的直流电压围都在这之上,所以采用电阻分压网络,设计的电压测量围是0到25v之间,满足设计要求的最大量程5v的要求。同时设计的精度为小数点后三位,满足要求的两位小数的精度,在不考虑AD芯片的量化误差的前提下,此次设计的精度能够满足一般测量的要求。

2单片机和AD相关知识 2.1 51单片机相关知识 51单片机是对目前所有兼容intel 8031指令系统的单片机的统称。该系列单片机的始祖是intel的8031单片机,后来随着技术的发展,成为目前广泛应用的8为单片机之一。单片机是在一块芯片集成了CPU、RAM、ROM、定时器/计数器和多功能I/O口等计算机所需要的基本功能部件的大规模集成电路,又称为MCU。51系列单片机包含以下几个部件: 一个8位CPU;一个片振荡器及时钟电路; 4KB的ROM程序存储器; 一个128B的RAM数据存储器; 寻址64KB外部数据存储器和64KB外部程序存储空间的控制电路; 32条可编程的I/O口线; 两个16位定时/计数器; 一个可编程全双工串行口; 5个中断源、两个优先级嵌套中断结构。51系列单片机如下图: 图1 51单片机引脚图

基于单片机的智能电压表设计

科技学院毕业设计(学士) 1 学科分类号:_ _08_______ 科技学院 本科生毕业设计 题目:基于单片机的智能电压表设计专业年级:电子信息工程

科技学院毕业设计(学士)基于单片机的智能电压表设计 摘要:设计一种基于STC89C52单片机的智能数字电压表。分析了电压测量原理,设计了硬件电路和软件。主要通过STC89C52,AD574模数转换,模拟开关,LM324放大电路来实现量程自动转换,来实现电压表的功能。该表测量电压范围0~500v,输入阻抗大于22M,分辨率为12位。能自动完成量程选择,零点/满量程校正的直流电压表,仅使用两次按键,使用非常方便。数据由数码管显示。 关键词:电压测量;自动换挡;AD574;STC89C52 I

科技学院毕业设计(学士) Microcontroller-based smart voltmeter Abstract:Design AT89C52intelligent digital voltmeter.V oltage measurement principles, the design of hardware and software.On AT89C52Application of AD574 analog to digital conversion,analog switches,the LM324amplifier circuit to achieve the automatic range conversion,to achieve the function of the voltmeter.The meter to measure the voltage range of 0~500v,input impedance is greater than22M,with a resolution of12.Can automatically complete the range selection,zero /full scale calibrated DC voltmeter,use only two buttons,very easy to use.Data by the digital display. Keywords:voltage measurement;automatic shift;Application of AD574; STC89C52 II

基于单片机的数字电压表--开题报告

毕业设计(论文)开题报告 ——基于单片机的数字电压表设计与实现 引言 在传统的电工和电子测量中广泛使用的模拟测量仪表,虽然具有可直观看出表针偏转了多少格或满刻度的百分之几等优点,但需要对读数加以换算或说明, 尤其是不可避免地要带来人为的“视差”,不同的观察者会得到不同的结果。数字仪表则不同,它可以将测量结果直接用数字显示出来,读数准确,设计简单,可以随身携带,使用上更加方便快捷。 一、数字电压表的历史发展与选题意义 数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。 1.1 数字电压表的历史发展 数字电压表自1952年问世以来,已有50多年的发展史,大致经历了五代产品。第一代产品是20世纪50年代问世的电子管数字电压表,第二代产品属于20世纪60年代出现的晶体管数字电压表,第三代产品为20世纪70年代研制的中、小规模集成电路的DVM。近年来,国内外相继推出由大规模集成电路(LSI)或超大规模集成电路(VLSI)构成的数字电压表、智能数字电压表,分别属于第四代、第五代产品。它们不仅开创了电子测量的先河,更以其高准确度、高可靠性、高分辨力、高性价比等优良特性而受到人们的青睐。 1.2选题意义 相对于传统的指针表而言,数字电压表有以下特点: 1.读数直观准确; 2.显示位数; 3.准确度高,分辨率高;

基于单片机的数字电压表

基于单片机的数字电压表 摘要:本文介绍一种基于89S52单片机的一种电压测量电路,该电路采用ICL7135高精度、双积分A/D转换电路,测量范围直流0-±2000伏,使用LCD液晶模块显示,可以与PC机进行串行通信。正文着重给出了软硬件系统的各部分电路,介绍了双积分电路的原理,89S52的特点,ICL7135的功能和应用,LCD1601的功能和应用。该电路设计新颖、功能强大、可扩展性强。 关键词:电压测量,ICL7135,双积分A/D转换器,1601液晶模块 Abstract: The introduction of a cost-based 89S52 MCU a voltage measurement circuits, the circuits used ICL7135 high-precision, dual-scoring A/D conversion circuits, measuring scope DC 0-2000 volts, the use of LCD that can be carried out with a PC serial communications. The paper focuses on providing a software and hardware system components circuit, introduced double integral circuit theory, 89S52 features ICL7135 functions and applications, LCD1601 functions and applications. the circuit design innovative, powerful, can be expansionary strong. Key Words: Digital Voltmeter ICL7135 LCD1601 89S52 1前言 数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。本章重点介绍单片A/D 转换器以及由它们构成的基于单片机的数字电压表的工作原理。

基于51单片机的电压表

电路原理图程序清单: //*******************************头文件及宏定义************************** * #include #define TIME0H 0x3C #define TIME0L 0xB0 #define uchar unsigned char #define uint unsigned int //******************端口设置********** #define OUTPORT P2 //ADC0809数据接口

#define LCDPORT P0 //LCD数据接口sbit SET=P1^3; //定义调整键sbit DEC=P1^4; //定义减少键sbit ADD=P1^5; //定义增加键uchar x=0; //计数器 sbit LCDRS=P3^5;// 寄存器选择信号sbit LCDRW=P3^6; //读写信号sbit LCDE=P3^7; //片选信号sbit LED1=P1^0; //下限提示灯sbit LED2=P1^1; //上限提示灯sbit START=P3^4;//ATART,ALE接口。0->1->0:启动AD转换。sbit EOC=P3^3; //转换完毕由0变1. sbit alarmflag=P1^2; sbit CLK=P3^2; //********************************全局变量***************************** unsigned int shangxian=300; //上限报警温度,默认值为38 unsigned int xiaxian=200; //下限报警温度,默认值为38 unsigned char uc_Clock=0;//定时器0中断计数bit b_DATransform=0; //启动adc0809转换时间到标志,为1是启动A/D转换bit lowflag; //下限标志bit highflag; //上限标志uchar set_st=0; //状态标志bit shanshuo_st; //闪烁间隔标志//******************************函数声明***************************** void vDelay(); // 延时函数 void vWriteCMD(unsigned char ucCommand);//把一个命令写入LCD函数void vWriteData(unsigned char ucData); //把一个数据写入LCD函数void vShowOneChar(unsigned char ucChar);//把一个字符写入LCD函数void vShowChar(unsigned char ucaChar[]); //把一组字符写入LCD函数void vShowVoltage(unsigned int uiNumber); //显示函数void vdInitialize(); //LCD初始化函数void Time0(); // 定时器0中断函数unsigned int uiADTransform(); // AD转换函数//*****外部中断0服务程序***** void int0(void) interrupt 0 { EX0=0; //关外部中断0 if(DEC==0&&set_st==1) { vDelay(); do{} while(DEC==0&&set_st==1); shangxian=shangxian-5;

数字电压表的设计毕业设计论文

田唯迪:数字电压表的设计 华东交通大学理工学院 Institute of Technology. East China Jiao tong University 毕业设计 Graduation Design (2011 —2015 年) 题目数字电压表的设计 分院:电气与信息工程分院 专业:工程及其自动化 班级:电力2011-1 学号: 学生姓名:田唯迪 指导教师: 起讫日期:2015-01-01—2015-05-10

华东交通大学理工学院毕业设计 摘要 在电子应用领域,工业自动化仪表已经有了非常广泛的应用。本文设计的数字电压表以AT89C51单片机为主要控制器件,利用ADC0808把模拟信号转换为数字信号并加以显示的电路。它的设计主要包括硬件电路和系统程序两部分设计。硬件电路主要是单片机最小设计模块、A/D转换模块和显示模块的设计,系统程序设计则是通过AT89C51单片机先将系统初始化,通过ADC0808转换芯片把模拟量转换成数字量,最后通过数码管显示数据。设计的数字电压表的测量范围为200mv—10v,对直流电压进行测量。该电路功能强大,有报警系统,可控制测量范围,数码管显示精度高,可扩展性强等优点。 数字电压表的应用在很多领域,有非常好的应用前景。对数字电压表进行研究很有必要性。这对我们研究单片机技术是很有帮助的。 关键词:AT89C51;ADC0808;电压测量;A/D转换 1

田唯迪:数字电压表的设计 Abstract In electronic applications, industrial automation instruments have a very wide range of applications. This design of a digital voltmeter to AT89C51 microcontroller as the main control device, use it ADC0808 analog signals into digital signals and display them circuit. Its design includes hardware and system design program in two parts. The hardware circuit design module is the smallest single-chip design A / D converter module and display module, system programming is through the first AT89C51 SCM system initialization, by ADC0808 converter chip to convert analog to digital, and finally through a digital display data. Measuring range designed digital voltmeter is 200mv-10v, DC voltage measurement. The circuit is powerful, alarm system, control measuring range, digital display and high precision, scalability and other advantages.残骛楼諍锩瀨濟溆塹籟。 Application of digital voltmeter in many areas, there is a very good prospect. Conduct research on the digital voltmeter very necessity. This single-chip technology for our study is helpful.酽锕极額閉镇桧猪訣锥。 Key words: T89C52; ADC0808; V oltage measurement;A/D converter 2

基于单片机的数字电压表设计

引言 数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便。目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。本论文重点介绍单片A/D 转换器以及由它们构成的基于单片机的数字电压表的工作原理。

1 实训要求 (1)基本要求: ①实现8路直流电压检测 ②测量电压范围0-5V ③显示指定电压通道和电压值 ④用按键切换显示通道 (2)发挥要求 ①测量电压范围为0-25V ②循环显示8路电压 2 实训目的 (1)进一步熟悉和掌握单片机的结构和工作原理; (2)掌握单片机的借口技术及,ADC0809芯片的特性,控制方法; (3)通过这次实训设计,掌握以单片机为核心的电路设计的基本方法和技术;(4)通过实际程序设计和调试,逐步掌握模块化程序设计的方法和调试技术。 3 实训意义 通过完成一个包括电路设计和程序开发的完整过程,使自身了解开发单片机应用系统的全过程,强化巩固所学知识,为以后的学习和工作打下基础。 4 总体实训方案 测量一个0——5V的直流电压,通过输入电路把信号送给AD0809,转换为数字信号再送至89s52单片机,通过其P1口经数码管显示出测量值。 4.1 结构框图 如图1—1所示 图1—1

数字电压表论文

目录 1 绪论 (1) 1.1 引言 (1) 1.2 数字电压表的研究背景 (1) 1.3 数字电压表设计的意义 (1) 2.系统设计 (2) 2.1系统总设计结构图 (2) 2.2.主控芯片STC89C52单片机的简介....................... 错误!未定义书签。3系统硬件设计.. (3) 3.1电源电路设计 (4) 3.2控制电路设计: (5) 3.2.1 晶振时钟电路 (5) 3.2.2复位电路设计 (6) 3.2.3引脚 (6) 3.3显示电路设计 (6) 3.4串口通信电路设计 (7) 3.5 AD转换电路设计 (8) 3.6电路图的绘制 (9) 3.6.1 Altium Designer简介: (9) 4.软件设计 (13) 4.1 系统软件设计整体思路 (13) 5 程序调试 (14) 5.1 程序调试用到的软件及工具............................ 错误!未定义书签。 5.2 KEIL C51简介........................................ 错误!未定义书签。 5.3 调试过程........................................... 错误!未定义书签。 6 设计总结与展望 (15) 参考文献 (16)

1 绪论 1.1 引言 数字电压表是自动化控制的产物, 通过各种测量手段,使电压表实现对各种量程电压的测量功能。目前, 电压表已经广泛的应用于生产生活以及产品研发领域。 1.2 数字电压表的研究背景 近年来,人工智能领域的科技成果越来越多,也有越来越多的科技成果不断的投入到实际使用过程中。而如何将研究成果更好的投入到生产生活中去让生活更简单更智能成为了一个亟待解决的问题。测量工具的不断升级正悄悄改变着人们的生活,而传统的指针式电压表也存在着一定的缺点,比如精度达不到要求,显示方式不直观,反应不灵敏等。基于此种原因,我们又做了相应的资料搜集,最终我们设计了如下的数字电压表,经测试,运行可靠。 1.3 数字电压表设计的意义 二十一世纪的主题思想就是智能控制。工业水平不断提高,人类在科学控制领域也有了长足的发展,如何更便捷的测量电气参数,更加直观的显示并处理测量结果成为了一个新兴的研究课题。 指针式电压表作为一种新型的教学及研究设备应运而生,因其能灵活的测量电压参数很快被学生及工业现场技术人员所接受,而传统指针式电压表的缺点也日益突出:反应不灵敏,没有友好的人机交互方式等。这些的种种问题都成了制约指针式电压表发展的瓶颈,基于此种原因,我们开发设计了基于STC公司的STC89C52单片机的数字电压表,有效的解决了上述问题。

基于单片机电压表C语言程序

#include #include #define uchar unsigned char #define uint unsigned int sbit dula=P2^6; sbit wela=P2^7; sbit adwr=P3^6; sbit adrd=P3^7; uchar code table[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d, 0x7d,0x07,0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71 }; void delayms(uint xms) { uint i,j; for(i=xms;i>0;i--) for(j=110;j>0;j--); } void display (uchar shu1,uchar shu2,uchar shu3,uchar shu4,uchar shu5,uchar shu6) { dula=1; P0=0x80|table[shu1]; dula=0; P0=0xff; wela=1; P0=0x7e; wela=0; delayms(2); dula=1; P0=table[shu2]; dula=0; P0=0xff; wela=1; P0=0x7d; wela=0; delayms(2); dula=1; P0=table[shu3]; dula=0;

P0=0xff; wela=1; P0=0x7b; wela=0; delayms(2); dula=1; P0=table[shu4]; dula=0; P0=0xff; wela=1; P0=0x77; wela=0; delayms(2); dula=1; P0=table[shu5]; dula=0; P0=0xff; wela=1; P0=0x6f; wela=0; delayms(2); dula=1; P0=table[shu6]; dula=0; P0=0xff; wela=1; P0=0x5f; wela=0; delayms(2); } void main() { uchar a,A1,A2,A3,A4,A5,A6,adval; wela=1; P0=0x7f; wela=0; while(1) { adwr=1; _nop_();

数字电压表单片机毕业设计

数字电压表的设计与仿真 摘要:本文介绍的是数字电压表的发展背景和利用单片机,A/D转换芯片结合的方法设计一个交直流数字电压表。它的具体功能是:最高量程为500V,分三个档位量程,即5V,50V,500V,可以通过调档开关来实现各个档位。当测得电压的数值小于1V时,系统会自动的将电压数值转换为以mV为电压单位的电压值。并且通过按键的方法能够测得后五秒的平均电压值。同时它也可以用于交流电压的测量,胜任一般的电压测量工作。 关键字:数字电压表;单片机;A/D转换

Digital voltmeter design and simulation Abstract:This article describes the background of the development of the digital voltmeter and designed microcontroller, a / d conversion chips combined with a DC digital voltmeter. Its specific functions are: the maximum range for 200v, three-stall range, that is, 2v, 20v, 200v, can downshift switch to achieve the various stalls. When the measured voltage is less than 1v, the system automatically the voltage value converted to a voltage value mv voltage units. Five seconds and the key method to measure the average voltage value. Key words:Digital voltmeter ;Single-chip computer ;A/D converter

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

《单片机技术及其应用》 课程设计报告 题目:数字电压表的设计 班级:11通信本2班 学号:1011028432 姓名:段苓苓 同组人员:钟梦为梅韶田赵赫宇周洋 指导教师:刘少敏薛莲 2014年06月26日

目录 1 引言 (1) 1.1 设计意义 (1) 1.2 系统功能要求 (1) 2 设计内容 (1) 2.1 设计思路 (1) 2.2 主要功能 (2) 3 方案论证 (2) 3.1 程序设计 (2) 3.2 电路设计原理 (3) 3.3 软件设计方案 (4) 3.4 硬件设计方案 (4) 4 单元电路设计 (5) 4.1 数码管显示器 (5) 4.2 单片机的晶振电路 (6) 4.3 显示模块 (7) 4.4 ADC0808模数转换芯片 (7) 4.5 复位电路 (8)

4.6 AT89C52单片机的引脚介绍 (9) 4.7 模拟输入电路 (10) 4.8 总电路设计 (10) 5 系统软件程序的设计 (11) 5.1 主程序 (11) 5.2 A/D转换子程序 (11) 5.3 显示子程序 (11) 6 调试及性能分析 (11) 6.1 调试方法及步骤 (11) 6.2 实物调试数据 (12) 6.3 误差分析 (13) 7 心得体会 (14) 8 指导老师意见 (15) 附录: (16)

数字电压表的设计 1 引言 1.1 设计意义 我们学习的是单片机这门课程,这门课程最显著的特点就是它是一门实用技术课程,它要求我们不仅仅要掌握扎实的理论基础,更重要的是要学会如何去真真利用它为我们的电路设计服务,也只有通过课程设计这样的动手实践才是我们掌握这门技术的最佳途径,因此,我们开设这样的实践是很重要的,也是我们努力去学习钻研的动力。 数字电压表是采用数字化检测技术,把连续的模拟量(直流输入电压)换成不连续的、离散的数字形式并加以现实的仪表,克服了传统模拟电压表的读书不方便和不精确等问题。不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强集成方便,还可以与PC进行实时通信。目前,由各种单片A/D转换器构成的数字电压表,已广泛应用于电子电工测量、工业自动化仪表、自动测试系统等智能化测量领域,展现了强大的生命力。与此同时,由数字电压表扩展而成的各种通用及专用数字化仪器,也把电量及非电量测量技术提高到了崭新的水平,因此,通过这次课程设计能让我们了解这些知识,为以后研究相关技术打下坚实的基础。 1.2 系统功能要求 采用51系列单片机和ADC设计一个数字电压表,测量0~5V范围内的8路输入电压值,并在4位LED数码管上轮流显示或单路选择显示,要求显示两位小数。 2 设计内容 2.1 设计思路 (1)根据设计要求,选择AT89C51单片机为核心控制器件。 (2)A/D转换采用ADC0808实现,与单片机的接口为P1口和P2口的高四位引脚。 (3)电压显示采用4位一体的LED数码管。 (4)LED数码的段码输入,由并行端口P0产生:位码输入,用并行端口P2低四位产生。

基于单片机的数字电压表制作——(C语言)

基于单片机的数字电压表制作——ADC0832模数转换应用程序(C语言) 主要部件:AT89S51 ADC0832 八段数码管 关键字:ADC0832程序C语言数字电压表 本文所描述的数字电压表是利用ADC0832模数转换芯片完成的。该芯片能将0~5V的模拟电压量转换为0~255级的数字量,所以本文描述的数字电压表的量程为0~5V。 以下是程序部分: 该程序是本人自编的,经测试可用,但不保证程序的可靠性及稳定性。若有转载请标明出处。 如果有同学将本程序烧写到单片机里却不能正常工作的,请注意以下三点: 1、是否将端口重新定义。每个单片机开发板的引脚连接都是不一样的,若不加修改直接把程序烧写到单片机里,那是绝对不能正常工作的。 2、是否正确选择通道值。ADC0832有两个模拟输入端口(也就是我说的通道),你要先弄清楚你用的是那个通道,并在main函数中设置相应的通道值(以CH命名的那个变量)。本程序默认使用0通道,如果0通道不行就改成1通道,反正不是0通道就是1通道。 3、如果你做的电压表在保证电路连接正确且没有以上两点问题的情况下,还是不能正常工作,请将程

序中的“if (adval == test)”这一行删掉。其实这一点我个人也不清楚到底有没有问题。我有两个单片机开发板,其中一个必须要把那一行删掉才能工作。这说明ADC0832读出的前8位与后8位数值不一样(确切的说应该是后8位反转的数值),这有悖于ADC0832的原理。我不知道到底是硬件还是软件出了问题,特此把这种现象标明。若有哪位同学知道其原因的还请多多指教。 /***********************************************************************************/ /*简易数字电压表制作——ADC0832模数转换应用程序(C语言版)*/ /*目标器件:AT89S51 */ /*晶 振:12.000MHZ */ /*编译环境:Keil uVision2 V2.12 */ /***********************************************************************************/ /*********************************包含头文件********************************/ #include #include /*********************************端口定义**********************************/ sbit CS = P3^5; sbit Clk = P3^4; sbit DATI = P3^3; sbit DATO = P3^3; /*******************************定义全局变量********************************/ unsigned char dat = 0x00; //AD值 unsigned char count = 0x00; //定时器计数 unsigned char CH; //通道变量 unsigned char dis[] = {0x00, 0x00, 0x00}; //显示数值 /*******************************共阳LED段码表*******************************/

相关文档
最新文档