多路数字电压表的设计

8.3 多路数字电压表的设计

数字电压表是电子测量中经常用到的电子器件,传统的指针式电压表功能单一、精度低、不能满足数字时代的要求。而采用单片机的数字电压表精度高、抗干扰能力强、可扩展性强、使用方便,在日常生活中广泛应用。

8.3.1 多路数字电压表的功能要求

多路数字电压表的功能要求如下:

(1) 输入电压为8路。

(2) 电压值的范畴为0~5V。

(3) 测量的最小分辨率为0.019V,测量误差为 0.02V。。

(4) 能通过显示器显示通道和通道电压,有效位数为小数点后两位

8.3.2 多路数字电压表的总体设计

多路数字电压表的总体结构如图8.9所示,处理过程如下:先用A/D转换器对各路电压值进行采样,得到相应的数字量,再按数字量与模拟量成正比关系运算得到对应的模拟电压值,然后把模拟值通过显示器显示出来,另外可以通过按键选择通道。

图8.9 多路数字电压表的总体结构图

根据系统的功能要求,控制系统采用AT89C52单片机,A/D转换器采用ADC0808(0809)。ADC0808(0809)是8位的A/D转换器。当输入电压为5.00V时,输出的数据值为255(0FFH),因此最大分辨率为0.0196V(5/255)。ADC0808(0809)具有8路模拟量输入端口,通过3位地址输入端能从8路中选择一路进行转换。如每隔一段时间依次轮流改变3位地址输入端的地址,就能依次对8路输入电压进行测量。显示器采用LCD显示器,显示效果好。按键可只设定一个,用于选择显示的当前通道。

8.3.3 多路数字电压表硬件电路

多路数字电压表具体硬件电路如图8.10所示。

D 7

D 6D 5D 4D 3D 2D 1D 0

E R W R S V S S V D D V E E

图8.10 多路数字电压表的电路原理图

其中,ADC0808(0809) 的数据线D0~D7与AT89C52的P2口相连,地址输入端

ADDA 、ADDB 、ADDC 与AT89C52的P3口的低3位P3.0、P3.1、P3.2相连,地址锁存控制端ALE 和启动信号START 连接在一起与P3.7相连,数据输出允许控制端OE 与P3.6相连,转换结束信号EOC 与P1.3相连。ADC0809的时钟信号输入端CLOCK 与P1.4相连,而P1.4由定时/计数器0控制,每10μs 取反一次,则CLOCK 的时钟周期为20μs ,频率为50KHz ,满足ADC0808(0809)的时钟要求。参考电压VREF+接+5V 电源,参考电压VREF-接地,则当输入电压为5.00V 时,输出的数据值为255(0FFH),当输入电压为0V 时,输出的数据值为0(00H),最大分辨率为0.0196V(5/255)。

显示器LCD1602的数据线与89C 52的P0口相连,RS 与P1.7相连,R/W 与P1.6相连,E 端与P1.5相连。按键只设定了一个K1,与AT89C52的P1.0,用于进行通道选择,当按下一次,通道加1,显示下一个通道。

8.3.4 多路数字电压表软件程序

多路数字电压表系统软件程序由主程序、A/D 转换子程序和显示驱动程序组成,这里只介绍主程序、A/D 转换子程序。

1.主程序

主程序流程如图8.11所示。首先是对定时计数器和LCD 初始化,在LCD 上显示提示信息,然后进入循环,在循环中依次为:调用A/D 转换子程序对8个通道转换一次,

判通道键是否按下,按下则当前通道地址加1,当前通道值转换成电压值,显示当前通道。

2.A/D转换子程序

A/D转换子程序用于对ADC0808的8路输入模拟电压进行一次A/D转换,并将转换的数值存入8个相应的存储单元中,流程图如图8.12所示。A/D转换子程序每隔一定时间调用一次,即隔一段时间对输入电压采样一次。

图8.11 主程序流程图8.12 A/D转换子程序流程

3.汇编语言源程序清单

;30H~37H存放转换的数字量

;38H~3BH分别放电压当前通道电压的个位、小数点后1位、小数点后2位

;3CH单片为通道计数器

RS BIT P1.7 ;定义LCD1602端口线

RW BIT P1.6

E BIT P1.5

ST BIT P3.7 ;定义0808控制线

OE BIT P3.6

EOC BIT P1.3

CLK BIT P1.4

KEY1 BIT P1.0 ;通道选择按键

ORG 0000H

LJMP MAIN

ORG 000BH

CPL CLK ; 定时/计数器0中断,产生转换时钟

RETI

ORG 50H

;主程序

MAIN: MOV SP,#50H

MOV 39H,#'.'

MOV TMOD,#02H

MOV TH0,#246

MOV TL0,#246

SETB ET0

SETB EA

SETB TR0

LCALL DL10MS

ACALL INIT

MOV A,#81H ;写入显示缓冲区起始地址为第1行第1列

ACALL WC51R

MOV A,#'A' ;第1行第2列显示字母'H'

ACALL WC51DDR

MOV A,#'D' ;第1行第3列显示字母"O"

ACALL WC51DDR

MOV A,#'D' ;第1行第4列显示字母'W'

ACALL WC51DDR

MOV A,#'R' ;第1行第5列显示字母'U'

ACALL WC51DDR

MOV A,#':' ;第2行第6列显示字母'!'

ACALL WC51DDR

MOV A,#0C0H ;写入显示缓冲区起始地址为第2行第5列

ACALL WC51R

MOV A,#'V' ;第2行第5列显示字母'A'

ACALL WC51DDR

MOV A,#'A' ;第2行第6列显示字母'R'

ACALL WC51DDR

MOV A,#'L' ;第2行第7列显示字母'E'

ACALL WC51DDR

MOV A,#'U' ;第2行第8列显示字母' '

ACALL WC51DDR

MOV A,#'E' ;第2行第9列显示字母'Y'

ACALL WC51DDR

MOV A,#':' ;第2行第10列显示字母'O'

ACALL WC51DDR

LOOP: LCALL TEST ;调用ADC0808转换程序8个通道转换一次JB KEY1,NEXT ;有键按下,当前通道地址加1

WAIT2: JNB KEY1,WAIT2

INC 3CH

MOV A,3CH

CJNE A,#08,NEXT

MOV 3CH,#00

NEXT: MOV A,#30H ;取出当前通道值,转换成电压值所对应的字符ADD A,3CH

MOV R0,A

MOV A,@R0

MOV B,#51

DIV AB

ADD A,#30H

MOV 38H,A

MOV A,B

CLR F0

SUBB A,#1AH

MOV F0,C

MOV A,#10

MUL AB

MOV B,#51

DIV AB

JB F0,LOOP2

ADD A,#5

LOOP2: ADD A,#30H

MOV 3AH,A

MOV A,B

CLR F0

SUBB A,#1AH

MOV F0,C

MOV A,#10

MUL AB

MOV B,#51

DIV AB

JB F0,LOOP3

ADD A,#5

LOOP3: ADD A,#30H

MOV 3BH,A

MOV A,#88H ;写入显示缓冲区起始地址为第1行第9列

ACALL WC51R

MOV A,3CH

ADD A,#30H ;第1行第9列显示通道号

ACALL WC51DDR

MOV A,#0C8H ;写入显示缓冲区起始地址为第2行第9列

ACALL WC51R

MOV A,38H ;第2行第9列显示整数部分

ACALL WC51DDR

MOV A,39H ;第2行第10列显示小数点

ACALL WC51DDR

MOV A,3AH ;第2行第11列显示小数点后1位

ACALL WC51DDR

MOV A,3BH ;第2行第12列显示小数点后2位

ACALL WC51DDR

AJMP LOOP

;初始化子程序

INIT: MOV A,#00000001H ;清屏

ACALL WC51R

MOV A,#00111000B ;使用8位数据,显示两行,使用5×7的字型LCALL WC51R

MOV A,#00001100B ;显示器开,光标关,字符不闪烁

LCALL WC51R

MOV A,#00000110B ;字符不动,光标自动右移一格

LCALL WC51R

RET

;检查忙子程序

F_BUSY:PUSH ACC ;保护现场

MOV P0,#0FFH

CLR RS

SETB RW

WAIT: CLR E

SETB E

JB P0.7,WAIT ;忙,等待

POP ACC ;不忙,恢复现场

RET

;写入命令子程序

WC51R: ACALL F_BUSY

CLR E

CLR RS

CLR RW

SETB E

MOV P0,ACC

CLR E

RET

;写入数据子程序

WC51DDR:ACALL F_BUSY

CLR E

SETB RS

CLR RW

SETB E

MOV P0,ACC

CLR E

RET

;***************************************************** ;A/D转换子程序,8个通道转换一次转换结果依次存入30H~37H

;***************************************************** TEST: MOV R0,#30H

MOV R2,#00H

TESTART:MOV P2,#0FFH

MOV A,R2

MOV P3,A

CLR ST

NOP

NOP

SETB ST

NOP

NOP

CLR ST

NOP

NOP

WAIT1: JNB EOC,WAIT1

MOVD: SETB OE

NOP

NOP

MOV A,P2

MOV @R0,A

CLR OE

NOP

NOP

INC R0

INC R2

CJNE R2,#8,TESTART

RET

;*************************************

;延时子程序

;*************************************

DL10MS: MOV R6,#0D0H ;延时10MS子程序

DL1: MOV R7,#10H

DL2: DJNZ R7,DL2

DJNZ R6,DL1

RET

END

4.C语言源程序清单

#include

#include //定义绝对地址访问

#include

#define uchar unsigned char

#define uint unsigned int

sbit RS=P1^7; //定义LCD1602端口线

sbit RW=P1^6;

sbit EN=P1^5;

sbit ST=P3^7; //定义0808控制线

sbit OE=P3^6;

sbit EOC=P1^3;

sbit CLK=P1^4;

sbit key1=P1^0; //通道选择按键

uchar data chnumber; //存放当前通道号

uchar disbuffer[4]={0,'.',0,0}; //定义显示缓冲区

uchar data ad_data[8]={0,0,0,0,0,0,0,0}; //0808的8个通道转换数据缓冲区uint temp;

//检查忙函数

void fbusy()

{

P0 = 0xff;

RS = 0;

RW = 1;

EN = 1;

EN = 0;

while((P0 & 0x80))

{

EN = 0;

EN = 1;

}

}

//写命令函数

void wc51r(uchar j)

{

fbusy();

EN = 0;

RS = 0;

RW = 0;

EN = 1;

P0 = j;

EN = 0;

}

//写数据函数

void wc51ddr(uchar j)

{

fbusy(); //读状态;

EN = 0;

RS = 1;

RW = 0;

EN = 1;

P0 = j;

EN = 0;

}

void init()

{

wc51r(0x01); //清屏

wc51r(0x38); //使用8位数据,显示两行,使用5*7的字型

wc51r(0x0c); //显示器开,光标开,字符不闪烁

wc51r(0x06); //字符不动,光标自动右移一格

}

/********0808转换子函数********/

test()

{

uchar m;

for (m=0;m<8;m++)

{

P3=m; //送通道地址

ST=0;_nop_();_nop_();ST=1;_nop_();_nop_();ST=0;//锁存通道地址启动转换_nop_();_nop_();_nop_();_nop_();

while (EOC==0); //等待转换结束

OE=1;ad_data[m]=P2;OE=0; //读取当前通道转换数据

}

}

//************延时函数************

void delay(uint i) //延时函数

{uint y,j;

for (j=0;j

for (y=0;y<0xff;y++){;}}

}

//定时器/计数器T0产生0808的时钟

void T0X(void)interrupt 1 using 0

{ CLK=~CLK; }

void main(void)

{

uchar i;

SP=0X50;TMOD=0x02;TH0=246;TL0=246;

ET0=1;EA=1;TR0=1;

delay(10);

init();

wc51r(0x81); //写入显示缓冲区起始地址为第1行第1列

wc51ddr('A'); //第1行第1列显示字母 A

wc51ddr('D'); //第1行第2列显示字母 D

wc51ddr('D'); //第1行第3列显示字母 D

wc51ddr('R'); //第1行第4列显示字母 R

wc51ddr(':'); //第1行第4列显示字母 :

wc51r(0xC0); //写入显示缓冲区起始地址为第2行第1列

wc51ddr('V'); //第2行第1列显示字母 V

wc51ddr('A'); //第2行第2列显示字母 A

wc51ddr('L'); //第2行第3列显示字母 L

wc51ddr('U'); //第2行第4列显示字母 U

wc51ddr('E'); //第2行第5列显示字母 E

wc51ddr(':'); //第2行第6列显示字母 :

while(1)

{

test(); //调用ADC0808转换程序8个通道转换一次

if (key1==0) {while(key1==0); chnumber++;if (chnumber==8)chnumber=0;} //有键按下,当前通道地址加1

temp=ad_data[chnumber]; //取出当前通道值,转换成电压值所对应的字符

temp=(temp*100)/51;

disbuffer[0]=temp/100+0x30; temp=temp%100;

disbuffer[2]=temp/10+0x30;

disbuffer[3]=temp%10+0x30;

wc51r(0x88);

wc51ddr(chnumber+0x30);

wc51r(0xc8); //显示当前通道

for (i=0;i<4;i++) wc51ddr(disbuffer[i]);

}

}

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

单片机课程设计 ——电压表的设计 学院:信息工程学院 专业:电子信息科学与技术 班级: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显示数字电压信号

基于51单片机的数字电压表adc0808多种设计方案单通道、ADC0809双通道、多通道可选

基于ADC0809的数字电压表 摘要:数字电压表简称DVM,它是采用数字化测量技术,把连续的模拟量转换成不连续、离散的数字形式并加以显示的仪表,是诸多数字化仪表的核心与基础,以数字电压表为核心,可以扩展成各种通用数字仪表,专用数字仪表一级各种非电量的数字化仪表几乎覆盖了电子电工测量、工业测量、自动化仪表等各个领域,它的应用已经非常普及了,数字电压表的主要技术指标在:测量范围,显示位数,测量速度,分辨率等方面。 本文是一基于单片机的数字电压表设计为研究内容。首先对数字电压表作了简单的介绍、接着对A/D转换器作了解、单片机AT89C51与ADC0809的数字电压表的制作原理和系统设计,主要介绍了数字电压表的硬件电路、软件电路和利用Proteus仿真软件进行仿真等内容,以及设计的数字电压表的实用价值和优点。 关键词:AT89C51 ADC0809 A/D转换器 Proteus仿真软件 基于ADC0808与ADC0809的数字电压表有多种设计方案 第一种,最基础的一通道,数据进行处理显示0.00——5.00V 第二种,双通道,数据进行处理显示0.00——5.00V,可先择某一通道显示,可以选择两通道循环显示。 第三种,多通道,数据进行处理显示0.00——5.00V,多通道循环显示。 第四种,多通道,数据进行处理显示0.00——5.00V,可切换单通道显示与多通道循环显示。

(二)系统的主要模块 根据设计要求,系统可以分为A/D转换模块、接口模块、显示模块。 1. A/D转换模块 采用ADC0809转换芯片,其中A/D转换器用于实现模拟量向数字量的转换,单电源供电。它是具有8路模拟量输入、8位数字量输出功能的A/D转换器,转换时间为100us,模拟输入电压范围为0V~5V,不需要零点和满刻度校准,功耗低,约15mW。 2. 接口模块 采用AT89C51单片机作为系统的控制单元,通过A/D转换将被测量转换为数字量送入单片机中,再由单片机产生显示码送入显示模块显示。此方案各种功能易于实现,成本低、功耗低,显示稳定。 3.方案设计的基本思路 设计主要采用AT89C51单片机芯片和ADC0809模/数转换芯片来完成一个简易的数字电压表,能够对输入的0V~5V的模拟直流电压进行测量。设计电路主要通

多功能直流电压表的设计与实现

多功能直流电压表的设计与实现 一、引言直流电压是电子电路中一项最基本的电学量,因此直流电压表被广泛应用于工业生产和科学研究中。传统直流电压表只具备测量功能,不能满足实际应用需求。本文设计了一款多功能直流电压表,主要包括测量、记录、显示等方面的功能,同时具有压力控制、安全保护等多项优秀特性,能够满足多种场景的应用需求。 二、设计方案 1.基本原理多功能直流电压表采用细分式结构模拟技术,通过模拟电路、数字电路和微处理器构成。基本原理为直流电压分压,将待测电压与分压器分压后的标准电压进行比较,根据比较结果通过数字处理形成相应的显示数据。 2.测量功能多功能直流电压表实现了高精度的直流电压测量,测量范围从10mV至1000V,分辨率达到10μV。并具备频率测量功能,可以精确测量电源的电压频率。同时,该设计增加了用户可设定测量范围和自动切换功能,让用户能够在不同场合下方便地进行测量。 3.记录功能多功能直流电压表还具备记录功能。通过微处理器实现的存储器芯片进行数据的记录,能够记录最大值、最小值、平均值和峰峰值等参数并显示。此外,用

户也可以使用串口接口将记录的数据传输到计算机上,方便后续数据处理和分析。 4.显示功能多功能直流电压表采用超大尺寸的液晶屏幕加上灯光补偿技术,保证在不同环境下都能够清晰显示结果数据,而且能够实现自动亮度调节。此外,该设计还集成了音量设置功能,方便用户在噪声环境下进行测量。 5.压力控制功能压力控制模块能够对被测量的电实验线路进行监测,确保被测量电路电压在合理范围内。当被测量电路的电压超出设定范围时,该模块能够发出报警信号,以保障实验的安全性。 6.安全保护功能多功能直流电压表还配置了防误触功能和过压保护模块。该模块能有效地保护设备的安全性,避免逆向电压或电流等原因对设备造成损坏。 三、实现方法 1.硬件实现硬件部分主要由直流电压分压、超大尺寸液晶屏幕、自动亮度控制电路、压力控制电路、安全保护电路、显示控制电路等部分组成。 2.软件实现软件实现部分采用微处理器单片机技术,主要包括数据采集、数据反馈、显示控制、压力控制、数据记录等多种功能,并配合图形化操作界面,提供更加智能化的使用体验。使用的编程语言为C语言。 四、实验结果经过多次实验和优化,多功能直流电压表成功地实现了测量、记录和显示等多项功能,能够提供

多通道数字电压表设计

摘要 本课题实验主要采用MCS -51芯片和ADC0809芯片来完成一个多通道数字电压表的设计,能够对输入的0~5 V的8路直流电压进行测量,并通过4个 LED数码管进行显示,测量误差约为±0.02 V。该电压表的测量电路主要由四个模块组成:A/D转换模块、单片机及其外围电路模块,显示控制模块及通道选择模块。A/D转换主要由芯片ADC0809来完成,它负责把采集到的模拟量转换为相应的数字量再传送到数据处理模块。数据处理则由芯片MCS -51来完成,其负责把ADC0809传送来的数字量经一定的数据处理,产生相应的显示码送到显示模块进行显示;另外它还控制着ADC0809芯片的工作。显示模块主要由7段数码管组成,显示测量到的电压值及通道。 关键字:多通道数字电压表、ADC0809、MCS-51。 Abstract The experiment is mainly to make a simple digital voltage meter with the adoption of MCS-51 and ADC0809 chips which can measure the input analog DC voltage of 0~5 V . It shows the voltage through an integral digital code tube of 7 pieces of LED. The measuring error is about ±0.02 V. The circuit of the Voltage meter is mainly consisted of three mould pieces: A/D converting mould piece, data processing mould piece and manifestation controlling mould piece. A/D converting is mainly completed by the ADC0809, it converts the collected analog data into the digital data and transmits the outcome to the manifestation controlling mould piece. Data processing is mainly completed by the MCS-51chip, it processes the data produced by the ADC0809 chip and generates the right manifestation codes, also transmits the codes to the manifestation controlling mould piece. Also, the AT89C51 chip controls the ADC0809 chip to work. Manifestation controlling mould piece is mainly consisted of the digital code tube , it shows the voltage measured by the voltage meter. KEYWORDS:simple digital voltage meter , ADC0809 , MCS-51. 前言 数字电压表出现在50 年代初,六十年代末发起来的电压测量仪表,简称DVM。它采用的是数字化测量技术,把连续的模拟量也就是连续的电压值转变为不连续的数字量,加以数字处理然后再通过显示器件显示。 目前实现电压数字化测量的方法仍然是模-数(A/D)转换的方法,而数字电压表种类繁多,

8路数字电压表的设计

一、实验题目:8路数字电压表的设计 二、实验内容: 利用单片机AT89C52与ADC0809设计一个8路数字电压表,能够测量0-5V之间的8路输入电压值,并能在四位数码管上显示。 三、要求: 基本要求:1、有一路正常工作 2、制作PCB板 发挥部分:1、显示各路电压数及其电压值 2、可通过按键进行通道选择 3、当超过某一设定值时报警 四、设计方案 通过一个A/D(ADC0809模拟数字转换)芯片采集后将外测电压信号转换为数字信号,再由单片机(AT89C52)处理信号,输出信号,由数码管显示各路电压。更改程序使能用按键进行复位、通道选择、单路循环选择;并在超过设定报警电压(4.7V)时以LED灯发光报警。 五、芯片、电路图 1、使用芯片有ADC0809、AT89C52。 2、电路图:

六、焊接 根据原理图将原件焊接到PCB板上。 七、编程序、调试 1、程序设计内容 <1>由于ADC0809在进行A/D转换时需要有CLK信号,而此时的ADC0809的CLK 是接在AT89S51单片机的P3.3端口上,也就是要求从P3.3输出CLK信号供ADC0809使用。因此产生CLK信号的方法就得用软件来产生了。 <2>由于ADC0809的参考电压VREF=VCC,所以转换之后的数据要经过数据处理,在数码管上显示出电压值。实际显示的电压值(D/256*VREF) 2、调试过程 <1>在实验过程中,发现了数码管显示的电压在测试的那一路电压正常显示,而其他路为不定的电压值(电压为悬浮电压),加一个排阻接地后使它和低电平相连,在未加电压的情况下为低电平,数码管显示值为0值。 <2>用原程序进行调试时,不执行报警和通道选择、单路循环选择(原程序少了通道选择函数和报警函数)。多次修改和添加原程序后能够达到要求。 3、C语言源程序 #include #include //延时函数用 #define ad_con P2 //A/D控制口 #define addata P0 //A/D数据记入读入口 #define Disdata P1 //显示数据段码输出口

多路数字电压表的设计

8.3 多路数字电压表的设计 数字电压表是电子测量中经常用到的电子器件,传统的指针式电压表功能单一、精度低、不能满足数字时代的要求。而采用单片机的数字电压表精度高、抗干扰能力强、可扩展性强、使用方便,在日常生活中广泛应用。 8.3.1 多路数字电压表的功能要求 多路数字电压表的功能要求如下: (1) 输入电压为8路。 (2) 电压值的范畴为0~5V 。 (3) 测量的最小分辨率为0.019V ,测量误差为0.02V 。。 (4) 能通过显示器显示通道和通道电压,有效位数为小数点后两位 8.3.2 多路数字电压表的总体设计 多路数字电压表的总体结构如图8.9所示,处理过程如下:先用A/D 转换器对各路电压值进行采样,得到相应的数字量,再按数字量与模拟量成正比关系运算得到对应的模拟电压值,然后把模拟值通过显示器显示出来,另外可以通过按键选择通道。 图8.9 多路数字电压表的总体结构图 根据系统的功能要求,控制系统采用AT89C52单片机,A/D 转换器采用ADC0808(0809)。ADC0808(0809)是8位的A/D 转换器。当输入电压为5.00V 时,输出的数据值为255(0FFH),因此最大分辨率为0.0196V(5/255)。ADC0808(0809)具有8路模拟量输入端口,通过3位地址输入端能从8路中选择一路进行转换。如每隔一段时间依次轮流改变3位地址输入端的地址,就能依次对8路输入电压进行测量。显示器采用LCD 显示器,显示效果好。按键可只设定一个,用于选择显示的当前通道。 8.3.3 多路数字电压表硬件电路 多路数字电压表具体硬件电路如图8.10所示。 51单片机 时钟电路 复位电路 LCD 按键 ADC0808

实验十 多功能数字电表和万用表的设计(部分

12级电科专业《专业实验》安排表(2015下半年) 说明:14周3(上课时间为第 103 每一时间段实验为4学时,下午上课时间:14:30-17:30 每次实验上课前需认真预习相关实验内容并写好预习报告 每位学生准备8张16开实验报告纸,8张32开原始记录纸。 讲义份数:导热系数?份,电源特性?份,声光电路?份。 所开设实验的房间管理由各位老师自己承担。 理学院物理实验室 2015.09.06 实验十多功能数字电表和万用表的设计 数字电表以它显示直观、准确度高、分辨率强、功能完善、性能稳定、体积小易于携带等特点在科学研究、工业现场和生产生活中得到了广泛应用。数字电表工作原理简单,完全可以让同学们理解并利用这一工具来设计对电流、电压、电阻、压力、温度等物理量的测量,从而提高大家的动手能力和解决问题能力。 【实验目的】 1、了解数字电表的基本原理及常用双积分模数转换芯片外围参数的选取原则、电表的校准原则以及测量误差来源。 2、了解万用表的特性、组成和工作原理。 3、掌握分压、分流电路的原理以及设计对电压、电流和电阻的多量程测量。 4、了解交流电压、三极管和二极管相关参数的测量。 5、通过数字电表原理的学习,能够在传感器设计中灵活应用数字电表。 【实验仪器】 1、DH6505数字电表原理及万用表设计实验仪。 2、四位半通用数字万用表。(自备) 3、示波器。(自备) 4、ZX25a电阻箱。(自备) 【实验原理】

一、数字电表原理 常见的物理量都是幅值大小连续变化的所谓模拟量,指针式仪表可以直接对模拟电压和电流进行显示。而对数字式仪表,需要把模拟电信号(通常是电压信号)转换成数字信号,再进行显示和处理。 数字信号与模拟信号不同,其幅值大小是不连续的,就是说数字信号的大小只能是某些分立的数值,所以需要进行量化处理。若最小量化单位为∆,则数字信号的大小是∆的整数倍,该整数可以用二进制码表示。设∆=0.1mV ,我们把被测电压U 与∆比较,看U 是∆的多少倍,并把结果四舍五入取为整数N (二进制)。一般情况下,N ≥1000即可满足测量精度要求(量化误差≤1/1000=0.1%)。所以,最常见的数字表头的最大示数为1999,被称为三位半(31/2)数字表。如:U 是∆(0.1mV )的1861倍,即N =1861,显示结果为186.1(mV )。这样的数字表头,再加上电压极性判别显示电路和小数点选择位,就可以测量显示-199.9~199.9mV 的电压,显示精度为0.1mV 。 1、双积分模数转换器(ICL7107)的基本工作原理 双积分模数转换电路的原理比较简单,当输入电压为Vx 时,在一定时间T1内对电量为零的电容器C 进行恒流(电流大小与待测电压Vx 成正比)充电,这样电容器两极之间的电量将随时间线性增加,当充电时间T1到后,电容器上积累的电量Q 与被测电压Vx 成正比;然后让电容器恒流放电(电流大小与参考电压Vref 成正比),这样电容器两极之间的电量将线性减小,直到T2时刻减小为零。所以,可以得出T2也与Vx 成正比。如果用计数器在T2开始时刻对时钟脉冲进行计数,结束时刻停止计数,得到计数值N2,则N2与Vx 成正比。 双积分AD 的工作原理就是基于上述电容器充放电过程中计数器读数N2与输入电压Vx 成正比构成的。现在我们以实验中所用到的3位半模数转换器ICL7107为例来讲述它的整个工作过程。ICL7107双积分式A/D 转换器的基本组成如图1所示,它由积分器、过零比较器、逻辑控制电路、闸门电路、计数器、时钟脉冲源、锁存器、译码器及显示等电路所组成。下面主要讲一下它的转换电路,大致分为三个阶段: 第一阶段,首先电压输入脚与输入电压断开而与地端相连放掉电容器C 上积累的电量,然后参考电容Cref 充电到参考电压值Vref ,同时反馈环给自动调零电容C AZ 以补偿缓冲放大器、积分器和比较器的偏置电压。这个阶段称为自动校零阶段。 第二阶段为信号积分阶段(采样阶段),在此阶段Vs 接到Vx 上使之与积分器相连,这样电容器C 将被以恒定电流Vx/R 充电,与此同时计数器开始计数,当计到某一特定值N1(对于三位半模数转换器,N1=1000)时逻辑控制电路使充电过程结束,这样采样时间T1是一定的,假设时钟脉冲为T CP ,则T1=N1*T CP 。在此阶段积分器输出电压Vo=-Qo/C(因为Vo 与Vx 极性相反),Qo 为T1时间内恒流(Vx/R )给电容器C 充电得到的电量,所以存在下式: Qo= dt R Vx T *1 ⎰=1T R Vx (1) Vo=- C Qo =-1T RC Vx (2)

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

扬州市职业大学 毕业设计(论文) 设计(论文)题目:基于51单片机 的数字电压表设计 系别:电子系1 专业:通信技术1 班级:07通信3班1 姓名:1 学号:0706020305 1 指导教师:李金奎 完成时间:10年5月

基于51单片机的数字电压表设计 摘要:数字电压表简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。数字电压表自从一九五二年问世以来,随着电子技术的飞跃发展,特别是目前,作为测量仪表、模拟指示仪表的数字化以及自动测量的系统,而得到了很大的发展。数字电压表是从电位差计的自动化这种想法研制出来的,因此即便是最初的数字电压表,其精度也要比模拟式仪表高,而其成本比电位差计也高。以后,DVM的发展就着眼在高精度和低成本两个方面。单片机可单独地完成现代工业控制所要求的智能化控制功能,这是单片机最大的特征。本电路主要采用AT89S51芯片和ADC0809芯片来完成一个简易的数字电压表,能够对输入的0~5 V的模拟直流电压进行测量,并通过一个4位一体的7段LED数码管进行显示。该电压表的测量电路主要由三个模块组成:A/D转换模块、数据处理模块及显示控制模块。A/D转换主要由芯片ADC0809来完成,它负责把采集到的模拟量转换为相应的数字量再传送到数据处理模块。数据处理则由芯片AT89S51来完成,其负责把ADC0809传送来的数字量经一定的数据处理,产生相应的显示码送到显示模块进行显示;另外它还控制着ADC0809芯片的工作。

关键词:单片机数字电压表AT89S51 A/D转换ADC0809 目录 第1章产品要求及方案选择 (4) 1.1设计的目的 (4) 1.2产品的要求 (4) 1.3各模块方案选择及论证 (4) 第2章主要原件介绍 (6) 2.1模数转换芯片ADC0809 (6) 2.2控制芯片AT89S51 (7) 2.3锁存芯片SN74LS373 (9) 2.4 SEG-MPXE数码管 (10) 第3章电压表原理系统硬件电路设计与实现 (11) 3.1电压表的原理 (11) 3.2 电源部分 (11) 3.3 A/D转换电路 (11)

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

基于单片机的数字电压表设计 数字电压表在电子技术中使用非常广泛,可以用来测量电路中的直流电压、交流电压以及各种信号的幅度等等。基于单片机的数字电压表实现了数字电压的读取和显示,具有精确、稳定、易操作等特点,下面将介绍基于单片机的数字电压表的设计原理及实现方法。 一、系统结构 基于单片机的数字电压表主要是由程序控制模块、模数转换模块和数字显示模块组成。程序控制模块主要用来完成开机、校准、测试、功能选择等功能;模数转换模块主要将电压信号转换成数字量,供数字显示模块使用;数字显示模块主要将转换后的数字量显示在LCD液晶屏上。 二、硬件设计 1.电源电路 电源电路主要用来为电路提供稳定的电压和电流,本电路采用稳压电源芯片LM7805实现,稳压芯片输入端连接外部 DC12V/1A电源,输出端连接电路板上的整个电路。 2.输入电路 输入电路主要用来将被测电源的电压传递给单片机,常规情况下采用分压电路实现。在本电路中,电阻R1和电容C1为RC

滤波电路,起到滤波作用,防止干扰信号的影响;电阻R2是分压电路中的电阻,它根据电压值的不同设置不同的值,以保证被测电压在单片机内部转换过程中不会对单片机产生影响。 3.单片机模块 单片机模块是系统的核心部分,本电路中选用 STM32F103C8T6单片机实现模数转换和数码管控制,使用C 语言编写程序,通过模拟输入端口读取电压并进行模数转换,将得到的数字使用查表法将其转换为数码管控制脉冲,控制数码管的亮灭实现数字显示。 4.数字显示模块 数字显示模块主要由七段数码管、LCD液晶屏幕、导线和电容等器组成,七段数码管用于展示测量到的电压大小,LCD 液晶屏用于展示功能选项、单位等信息。导线是电路板内部连接线路,电容等器用来平滑电压波动。 三、软件设计 1.引脚定义 在程序中首先定义STM32F103C8T6单片机内存地址、输入输出引脚和电平状态,其中A0口用来读取被测电压;B0-B7口用来控制七段数码管的亮灭;C0口用来输出PWM,控制风扇的旋转速度;D0口用来控制蜂鸣器的开启和关闭。

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

基于单片机的数字电压表设计 在当今的电子世界中,电压表是一种必不可少的测量工具。随着技术的进步,数字电压表因其精度高、易于读取、稳定性好等优点逐渐取代了传统的模拟电压表。本文将探讨如何基于单片机设计数字电压表。 一、硬件设计 1、1传感器模块 传感器模块是数字电压表的重要组成部分,负责将输入的模拟电压转化为可被单片机处理的数字信号。通常,我们使用ADC(模数转换器)来实现这一功能。ADC的精度直接决定了电压表的测量精度。 1、2单片机模块 单片机是数字电压表的“大脑”,负责控制整个系统的运行。我们选择具有较高性能和可靠性的单片机,如Arduino、STM32等。这些单 片机都具有丰富的外设接口,便于实现复杂的控制逻辑。 1、3显示模块 显示模块负责将单片机的处理结果呈现给用户。常用的显示模块包括LED数码管、LCD液晶屏等。选择适合的显示模块,可以大大提升电

压表的易用性。 二、软件设计 2、1数据采集与处理 软件首先通过ADC从传感器模块读取模拟电压,然后对其进行处理,得到实际的电压值。这一步的关键在于选择合适的ADC算法和设置合适的参考电压。 2、2数据输出与存储 处理后的电压值需要被输出并存储起来。通常,我们使用LCD液晶屏将电压值实时显示出来,同时也可以通过串口将数据传输到计算机或云端进行存储和分析。 三、精度与稳定性优化 3、1硬件校准 为了提高电压表的测量精度,我们可以在生产过程中对每一块电压表进行硬件校准。通过调整ADC的参考电压或者在软件中进行校准算法的优化,可以有效提高电压表的测量精度。

3、2软件滤波 在实际应用中,由于各种噪声和干扰的存在,电压表的读数可能会出现波动。我们可以通过软件滤波算法,如平均滤波、卡尔曼滤波等,来减小这些干扰对测量结果的影响。 四、应用与扩展 基于单片机的数字电压表不仅可以在实验室或工业现场使用,还可以扩展出更多的应用场景。例如,通过加入无线通信模块,我们可以实现远程监控;通过加入更多的传感器,我们可以实现多通道的电压测量;通过与计算机或云端进行数据交互,我们可以实现大数据分析和预测。 总结:基于单片机的数字电压表设计是一种典型的嵌入式系统应用,它涵盖了模拟电子技术、数字电子技术、微控制器技术等多方面的知识。通过对其硬件和软件的设计,我们可以实现一个精度高、稳定性好、易用的数字电压表,满足各种不同的应用需求。 基于单片机的数字电压表设计 在当今的电子世界中,电压表是一种必不可少的测量工具。随着技术的进步,数字电压表因其精度高、易于读取、稳定性好等优点逐渐取

三位半数字直流电压表设计multisim

三位半数字直流电压表设计multisim 多位半数字直流电压表是一种能够测量电路中直流电压的仪器。 它一般由数码显示部分和模拟-数字转换部分组成。在Multisim中, 我们可以通过建立电路模型来设计并模拟一个三位半数字直流电压表。 我们需要选择合适的元件来构建电路模型。在三位半数字直流电 压表中,最重要的元件是模数转换器(ADC)和显示部分。在Multisim 中可以通过搜索栏找到这些元件并将它们添加到工作区。 在电路模型中,我们需要引入一个待测电路的输入信号,并连接 到ADC的输入引脚上。可以选择一种直流电源作为输入信号,并使用 电阻来限制电流大小,以防止ADC被烧坏。同时,需要为ADC提供一 个参考电压,该电压与输入电压的量程相关。 ADC会将模拟信号转换为数字信号,并输出给显示部分。在显示部分,我们可以选择七段数码管来显示数字。在Multisim中,可以找到 七段数码管的元件,并将其添加到工作区。

将ADC的输出和数码管的输入进行连接。在Multisim中,可以使 用导线工具将两者连接起来。此外,为了显示多个数字,可以选择多 个数码管,并通过逻辑电路将它们连接在一起。 在设计电路模型时,需要注意以下几点: 1.选择合适的ADC和七段数码管。ADC的位数决定了电压的精确度,而七段数码管的个数决定了显示的范围。 2.为ADC提供合适的参考电压。参考电压的选取需要根据待测电 路的电压范围来确定。 3.使用合适的电阻来限制输入电流,以保护ADC不受损坏。 4.在连接元件时,要确保正确地连接输入和输出引脚,以便电路 正常工作。 完成电路模型的设计后,可以进行仿真。在Multisim中,可以通 过点击“仿真”按钮启动仿真过程。仿真过程将模拟电路中的信号变化,并将结果显示在数码管上。

数字电压表设计

数字电压表设计 1 题目来源 数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。目前,由各种单片机及A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,显现出强大的生命力。与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。本课题实现基于单片机的多路数字电压表设计。可实现多路输入电压的测量及轮流显示或选择单路输入电压的测量及显示,电压测量分辨率及误差均在功能要求范围内。 2 研究目的和意义 数字电压表的快速发展,已使它成为实现测量自动化、提高工作效率不可缺少的仪表,数字化是当前计量仪器发展的主要方向之一,而高准度的DC-DVC的出现,又使DVM进入了精密标准测量领域。DVM广泛应用于测量领域,测量的准确度和可信度取决于它的主要性能和技术指标。所以,我们学习和掌握如何设计DVM就显得十分重要。这个课题的目的和意义在于掌握数字电压表的工作原理,自己动手设计符合技术指标的数字电压表,并实现其相关功能。 3 国内外现状和发展趋势与研究的主攻方向 目前,电压的模拟和采集等一些常用控制器发展到智能数码电压控制器。智能电压控器(数字电压控器)是微电子技术、计算机技术和自动测试技术的结合,特点是能输出电压数据及做出相应的控制,适配各种控制器,并且它是在硬件的基础上通过软件来实现控制功能的,其智能化程度也取决于软件的开发水平,现阶段正朝着高精度高质量的方向发展,相信以我国的实力,使得数字电压表技术在不久的将来一定会

数字电压表课程设计

数字电压表课程设计 一、前言 数字电压表是电工实验室常用的仪器之一,广泛应用于电子测量和控制系统中。通过数字电压表的实验,可以学习到许多电路基础知识,并掌握数字电压表的使用方法和测量技巧。本文旨在介绍数字电压表课程设计的目的、要求、内容以及实验步骤。 二、课程设计目的 数字电压表课程设计的主要目的有两点: 1.培养学生熟悉电路基础知识和数字电压表的使用方法,掌握数字电压 表的测量技巧。 2.提高学生的实验能力和创新能力,培养学生的实际动手操作能力,增 强学生的实验意识和实际操作能力。 三、课程设计要求 数字电压表课程设计的要求主要包括以下几个方面: 1.学生应具备一定的电路基础知识和数字电压表的使用方法。 2.学生应通过课程设计,掌握数字电压表的实际应用技巧,积累实验操 作经验。 3.课程设计应突出实验的实际应用意义,注意实验结果的可行性和实用 性。 4.学生应具备较强的设计能力和创新意识,具备一定的实际动手操作能 力。 5.学生应通过实验,培养实验室安全意识和安全操作能力。 四、课程设计内容 数字电压表课程设计的实验内容主要包括以下三个方面: 1.数字电压表的基本操作及测量技巧的掌握。 2.数字电压表在稳压电源中的应用。 3.数字电压表在直流电源和交流电源测量中的应用。 五、实验步骤 以下是数字电压表课程设计的实验步骤:

实验材料 1.数字电压表 2.稳压电源 3.直流电源 4.交流电源 实验步骤 实验一:数字电压表的基本操作及测量技巧的掌握 1.将数字电压表接入测试电路,掌握数字电压表的基本操作。 2.通过实验测量不同电压值并记录数据。 3.分析实验数据,掌握数字电压表的测量技巧。 实验二:数字电压表在稳压电源中的应用 1.将数字电压表接入稳压电源测试电路,调节稳压电源输出电压值。 2.通过实验测量不同电压值并记录数据。 3.分析实验数据,了解数字电压表在稳压电源中的应用。 实验三:数字电压表在直流电源和交流电源测量中的应用 1.将数字电压表接入直流电源和交流电源测试电路,分别测量不同电压 值并记录数据。 2.分析实验数据,掌握数字电压表在直流电源和交流电源测量中的应用。 六、实验总结 通过数字电压表课程设计的实验,学生将掌握数字电压表的基本操作及测量技巧,了解数字电压表在稳压电源中的应用以及在直流电源和交流电源测量中的应用。实验过程中,学生将锻炼实验操作能力和创新意识,培养实验室安全意识和安全操作能力,对于电子测量和控制系统的学习和实践具有重要意义。

数字电压表设计与仿真

文献综述 一、引言 数字仪表是把连续的被测量模拟量自动地变成断续的、用数字编码方式并以十进制数字自动显示测量结果的一种测量仪表。这是一种新型仪表,它把电子技术、计算机技术、自动化技术与精密电测量技术密切得结合在一起,成为仪器仪表领域中一个独立的分支。 数字仪表的种类很多,应用场合各不相同,其内部结构也相差很大。根据仪表的用途(即被测量的性质)分为:数字电压表、数字电阻表、数字电流表、数字功率表、数字Q(品质因素)表、数字静电计、数字电桥及电子计数器等。经过适当变换,还可以制成测量多种非电量的仪表,如数字温度表、数字转速表、数字位移表、数字钟、数字秤、数字测厚仪及数字高斯计等,还有许多其他数字式测量仪器和测量装置。 在各种数字仪表中,数字电压表的用途居于较为突出的地位,它不但用来测量各种电量,而且还广泛用来进行各种非电量的电测量,同时在实现工业自动化,生产过程的自动控制以及测量本身的自动化等方面,都起着很重要的作用。 数字电压表(DVM)是一个具有数字显示功能的多量程仪表,它是测量仪表(可测量电压、电流和电阻)中最常用的一个测试功能项、一旦测量仪表的范围和方式选定,即可测量直流信号(DC)也可测量交流信号(AC)的参数。有些数字表的设计是由电池驱动且可携带,而另外一些是基于主机(计算机)驱动且由磁盘安装的。数字式仪表与模拟式仪表相比,使用零件少,集成度高,稳定性和可靠性相对较高,输入阻抗高,提高了测量精度。 数字电压表的设计通常以ASIC芯片为控制核心,在A/D转换器、显示器等外围器件的配合下工作。A/D转换器在控制核心ASIC所提供的时序信号作用下,对输入模拟信号进行转换,制核心再对转换的结果进行运算和处理,最后驱动输出装置显示数字电压信号。这种设计方法的缺陷是:控制核心的灵活性不高,系统功能难以更新和扩展。如果用可编程逻辑器件FPGA代替ASIC芯片,用硬件描述语言决定系统功能,就可在硬件不变的情况下修改程序以更新和扩展功能,使其灵活性和适应性显著提高。本文基于此考虑,用FPGA代替ASIC设计了一个简易数字电压表控制电路,旨在研究可编程逻辑器件在仪器仪表设计领域的应

基于STM32的数字电压表的设计.

华南理工大学广州学院 题目:基于STM32的数字电压表的设计 姓名: 学号: 系别: 班级: 指导老师: 完成时间:

一、设计目的 1. 培养综合运用所学知识、独立分析和解决实际问题的能力,培养创新意识和创新能力,并获得科学研究的基础训练。 2. 掌握AD转换的基础知识,学习基于DMA专递方式的ADC采集软件的编制及控制流程。 3. 通过软硬件设计实现数字电压表的功能。 二、设计内容 1、将一模拟电压信号输入到A/D转换器的任一通道。 2、A/D转换器将输入的模拟电压值转换成数字量。 3、根据学习开发板所用A/D转换器的类型,将转换成的数字量通过一定的算法转换成相应的电压值。 4、将转换成电压值通过学习开发板上的LCD显示屏进行显示,要求显示一位小数。 三、设计原理 1、A/D变换原理 ◆采样: 间隔一定时间对信号进行采样,用信号序列来代替原来时间上连续的信号。 均匀采样: 可完整地恢复原始信号,其中,T为采样时间间隔,fs表示采样频率,fm表示原始信号最大频率。 ◆量化: 把采集到的数值送到量化器编码成数字形式,每个样值代表一次采样所获得的信号的瞬时幅度。 A/D转换器一般为标量均匀量化。(量化还可分为:标量量化、矢量量化)量化误差(与舍入方式相关):1LSB或1/2LSB ◆编码: A/D模拟/数字转换器一般采用二进制编码,A/D变换后的结果到此可以表示为一个以0、1二进制形式表示的比特流,单位时间内可以传输的二进制比特速率就是A/D之后的码速率,数值上等于采样频率与量化比特数值之乘积。

二进制编码:量化与字长的关系。 3、ADC的A/D转换方式 2、ADC STM32 16 3 STM32 果准确度下降。 4、STM32将ADC的转换分为2个通道组: 规则通道组和注入通道组。规则通道相当于运行的程序,而注入通道就相当于中断。在程序正常执行的时候,中断是可以打断程序正常执行的。同这个类似,注入通道的转换可以打断规则通道的转换,在注入通道被转换完成之后,规则通道才得以继续转换。规则组设置后,可以按照设置的通道顺序对各通道进行依次采集。方便于对多路ADC通道的自动采集。注入组最多设置4个通道,简单来讲就是需要触发才能采集设置的通道ADC值。

数字电压表方案报告(终结版)

数字电压表 摘要 在电子器件设计中,以单片机作为控制核心的系统得到了广泛的应用,尤其以MCS-51最为普遍。而数字电压表的基本原理是对直流电压进行模数转换,并将其结果用数字直接显示出来。为以单片机为控制核心实现数字电压表的设计,结合了模数转换技术,段码显示以及液晶显示,并结合ADC08095片及 74HC573进而实现了对5V以内的直流电压的准确测量,并在数码管以及液晶显示屏上同时显示。并进一步扩展,实现了最多可以对八路电压同时进行测量。而且对于超出测量范围的电压能够以LED灯的闪烁实现报警。 关键词:MSC-51ADC0809数字电压表数模转换LCD

目录 1.系统设计 (33) 1.1方案设计与论证 (33) 1.1.1方案设计 (33) 1.1.2方案论证 (33) 1.2主要部件原理及参数计算 (33) 1.2.1输入单元电路设计 (33) 1.2.2A/D 转换电路设计 (44) 1.2.3单片机主控电路设计 (55) 1.2.4电压显示电路设计 (55) 1.3系统设计 (77) 1.3.1硬件设计 (77) 1.3.2软件设计流程 (77) 2.系统测试 (88) 2.1测试方法与结果 (88) 2.2测试结论 (99) 2.2.1功能实现 (99) 2.2.2误差分析 (99) 3.附录 (1010) 3.1参考文献 (1010) 3.2附图 (1010) 3.3源程序 (1111)

1.系统设计 1.1 方案设计与论证 数字电压表vDigital Voltmeter)简称DVM目前采用单片机设计的数字电压表,由于精度高、抗干扰能力强、可扩展性强、集成方便,还可以与PC进行实时通信,所以以下方案均采用单片机设计。 1.1.1 方案设计 方案一:基于MSP430F448单片机的数字电压表设计。MSP430F44X系列单片机片内集成了8路12位A/D串行通信接口、看门狗定时器、比较器、硬件乘法器等外围设备模块,从而降低了应用电路的复杂程度,提高了系统的可靠性。该芯片可以工作于2. 5V 和3. 3V两种电压下,其功耗非常低。 方案二:使用AT89C51单片机作为核心控制芯片,并用TLC549串行芯片作模数采样芯片。其占用的单片机的I/O 口少且占用电路面积小。其缺点是编程比较复杂。 法案三:使用AT89C51单片机作为核心控制芯片,并采用ADC0809数模转换芯片其需要占用一个I/O 口,可以循环采样8路模拟通道。占用板子面积大但编程相对更为简单。 1.1.2 方案论证 采用MSP430F44X系列单片机设计具有低功耗、系统稳定、外围电路简单等优点,但是考虑现有资源使用2. 5V和3. 3V电源供电具有一定难度。对比方案二和方案三,结合实际情况,采用TLC549串行芯片实现电路不具有可行性, 所以本设计米用方案三。 1.2 主要部件原理及参数计算 如何实现5V模拟电压转换成数字电压?如何实现数字电压经过控制显示在数码管上和液晶屏上?它们的参数如何设置?下面将回答这些问题。 1.2.1 输入单元电路设计 输入电路的作用是把被测的模拟电压值送到模数转换器的模拟输入端,使用单片机学习板输出5V直流电压,然后经过电位器选择不同的电压,最后将转换后的模拟电压送至ADC0809E片。

数字电压表三种设计方案

数字电压表三种设 计方案

设计方案一 决定控制系统采用AT89C51单片机,A/D 转换采用ADC0809。系统除能确保实现要求的功能外,还能够方便地进行8路其它A/D 转换量的测量、远程测量结果传送等扩展功能。数字电压表系统设计方案框图如图2-1所示。 AT89C51主要特性: ·4K 字节可编程闪烁存储器 ·三级程序存储器锁定 ·128*8位内部RAM ·32可编程I/O 线 ·两个16位定时器/计数器 ·5个中断源 AT89C51 P0 P2 ADC0809 LCD 显示器 振荡电路 电源电路 图2-1设计方案框

·可编程串行通道 ·低功耗的闲置和掉电模式 ·片内振荡器和时钟电路 模拟量、数字量转换电路设计 本设计采用ADC0809进行模拟量与数字量的转换,ADC0809的内部逻辑结构和引脚如图所示。图中多路模拟开关可选通8路模拟通道,允许8路模拟量分时输入,并共用一个A/D转换器进行转换。地址锁存与译码电路完成对A、B、C三个地址位进行锁存与译码。 ADC0809工作原理 A/D转换由集成电路0809完成。0809具有8路模拟输入端口,地址线(23~- 25脚)可决定对哪一路模拟输入作A/D转换。22脚为地址锁存控制,当输入为高电平时,对地址信号进行锁存。6脚为测试控制,当输入一个2uS宽高电平脉冲时,就开始A/D转换。7脚为A/D转换结束标志,当A/D转换结束时,7脚输出高电平。9脚为A/D转换数据输出允许控制,当OE脚为高电平时,A/D转换数据从该端口输出。10脚为0809的时钟输入端,利用单片机30脚的六分频晶振频率再经过14024二分频得到1MHz时钟。单片机的P1、P3.0~P3.3端口作为四位LED数码管显示控制。P0端口作A/D转换数据读入用,P2端口P2.7用作0809的A/D转换控制。

相关文档
最新文档