基于单片机控制的数字电压表_第1页
基于单片机控制的数字电压表_第2页
基于单片机控制的数字电压表_第3页
基于单片机控制的数字电压表_第4页
基于单片机控制的数字电压表_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机课程设计项目系列: 基于单片机控制的数字电压表课程设计任务书1.设计目的与要求设计出一个用于测量电压的数字电压表。准确地理解有关要求,独立完成系统设计,要求所设计的电路具有以下功能: (一)基本功能(1)测压范围 05V。(2)精度误差 0.02V 以内。(3)能够同时采集 8 路数据并能循环(6 位)显示。(4)具备过压保护功能。(二)扩展功能(1)测压范围扩展至 -5V+5V(2)在测直流电压时表笔能够自动调整极。2设计内容 (1)画出电路原理和 PCB 图,正确使用逻辑关系;(2)确定元器件及元件参数,制作出硬件电路板;(3)进行电路模拟仿真;(4)SCH 文件生成与打印输出;3编写设计报告写出设计的全过程,附上有关资料和图纸,有心得体会。4答辩(1)在规定时间内,完成叙述并回答问题。(2)论文结构清晰,层次分明,理论严谨。(3)任务书要求单页打印 1.5 倍行间距,标准字间距。目 录1引言12总体设计方案.12.1设计思路 .22.1.1方案的确立22.2总体设计框图 .23设计与原理分析 .33.1输入分压及过压保护电路 33.2 A/D转换电路 33.2.1 信号引脚 33.2.2 8路模拟通道选择 43.2.3 A/D转换过程中的时间配合 53.2.4 MCS-51单片机与 ADC0809的接口 53.3 单片机部分.63.4数字电压表系统原理图63.5数码管显示部分74程序设计 .75结束语9参考文献 .9附录.10基于单片机的数字电压表摘要:本文介绍一种基于 AT89S51 单片机的一种电压测量电路,该电路采用了拥有高精度和误差范围小的典型 A/D 转换芯片 ADC0809,测量电压范围为 0 +5V,使用普通的七段数码管模块显示,可以通过对地址的变换可以改变所测量的电路数,并且可以同时测量 8 个通道的不同电压,在显示电路上分别循环显示。正文着重给出了软硬件系统的各部分电路,介绍了 74ls373 电路的原理, AT89S51 的特点,A/D 转换芯片 ADC0809 的功能和应用,以及逻辑集成电路 74ls02 和 74ls04 的基本功能及在该电路中的作用。该电路设计新颖、功能强大、可扩展性强。关键词:电压测量,数字电压表, A/D 转换器 ADC0809,数码管显示,A/D 转换1 引言数字电压表(Digital Voltmeter)简称 DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,除精度高、抗干扰能力强,可扩展性强、集成方便外,还可与 PC 进行实时通信。目前,由各种单片 A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。与此同时,由 DVM 扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。本章重点介绍单片A/D 转换器以及由它们构成的基于单片机的数字电压表的工作原理。2 总体设计方案数字电压表是用来测试电压并让人能直观的看到所测试电压的大小,基于这样的功能就必须要有把电压这样的模拟量转换为数字量的电路以及用于使人看到电压大小的显示电路。由于在设计任务书中提到了用单片机来实现电压的测量以及每次可同时测试的电压为8 路,于是在显示电路与模数转换电路之间采用单片机来作为控制显示和处理数字信号的电路的主体。不同等级的模拟电压经过档位切换到不同的分压电路衰减后,经隔离干扰送到 A/D 转换器进行 A/D 转换,然后送到单片机中进行数据处理。处理后的数据送到 LED 数码管中显示,在显示电路中显示被测电压及具体的通道号,使人更容易辨别电压。图 1 总体设计方案图模数转换电路 数字信号处理电路 显示电路2.1 设计思路:数字电压表,顾名思义就是可以把被测量的电压用数字来显示出来。被测量的电压是一个模拟量,而单片机是一个处理数字量的集成电路芯片。如果想用单片机来实现电压的测量与显示的话,就必须把模拟电压转换为数字电压。于是我就想到了用一个 A/D 转换芯片 ADC0809 来把模拟量电压转换为数字量的 0 与 1 代码。ADC0809 模数转换器功能强大,精度高,但是所允许测量的电压在 5 伏以下,平时的生活中所用到的电压都是在 5 伏以上的,在进入 A/D 转换以前必须进行电压的衰减。分压电路和过压保护电路就显的至关重要。它可以把高于 5 伏的电压通过不同的档位接入分压电路实现,超过分压电路的分压范围时保护电路切断电源。得到的数字量经过单片机的控制与处理以后,用来驱动显示电路以得到被测量电压的具体数字。这样电路中用来显示的模块就显得也是必不可少的,由于显示的只是一些普通的数字,没有特殊的图形及编码,我就想到了用便宜、普通而又完全可以实现显示功能的七段数码管显示电路。对于它的驱动电路来说设计起来就会显得很简单。2.1.1 方案确立:(1)模数转换电路采用了具有精度高误差范围小,并且可以分时接受 8 路模拟量的ADC0809 芯片,把模拟电压量转换为数字电压量,在输出时可以通过通道地址的变换来输出不同通道的数字量。数字信号处理电路采用了便宜而且功能强大的单片机控制电路,把经过 A/D 转换得到的数据转换为被测电压值对应的数字编码,具体工作由程序来完成。显示电路采用用电阻和三极管来驱动的数码管。(2)细观自己的设计思路所用到的芯片、电路及元器件,除了极个别比较的难找外,其余基本上都是很常见的,如 74ls02、74ls04、ADC0809、AT89s51。根据该思路所设计出的电路,不但可以轻松的实现基本功能,而且还可以减低成本。在这里我认为这样的电路方案是最优化设计。2.2 设计方框图:模拟电压经过档位切换到不同的分压电路衰减后,经隔离干扰送到 A/D 转换器进行A/D 转换,然后送到单片机中进行数据处理。处理后的数据送到 LED 中显示,同时可以显示出被测量电压所在的通道。图 1 所示:图 2 系统设计方框图输入电路 分压电路保护电路 单片机控制电路A/D 转换电路显示电路3 设计原理及分析3.1 输入及分压电路图 3 量程切换开关 图 4 衰减输入电路输入及分压电路的作用是把不同量程的被测的电压规范到 A/D 转换器所要求的电压值。智能化数字电压表的 A/D 转换电路所采用的强大、精度高的典型数模转换芯片 ADC0809,它要求输入电压 0-5V。本仪表设计是 0-1000V 电压,灵敏度高所以可以不加前置放大器,只需衰减器,如图 4 所示 9M、900K、90K、和 10K 电阻构成 1/10、1/100、1/1000 的衰减器。衰减输入电路可由开关来选择不同的衰减率,从而切换档位。为了能让 CPU 自动识别档位,还要有图 3 的硬件连接。在输入电路中还有一个重要的部分就是具有很好保护功能的过压保护电路,该部分电路只用了一个稳压二极管与被测电路进行并联即可,具体的电路如下图所示:3.2 A/D 转换电路A/D 转换电路的转换精度对测量电路极其重要,它的参数关系到测量电路性能。本设计采用 ADC0809,它的性能比较稳定,转换精度高,具有很高的抗干扰能力,电路结构简单,其缺点是工作速度较低。在对转换精度要求较高,而对转换速度要求不高的场合如电压测量有广泛的应用。A/D 转换电路采用的是具有 A/D 转换功能的芯片 ADC0809,不同级别的电压经过输入电路的不同档位分压为 ADC0809 所允许的电压测量范围 05V,把 05V 的模拟电压量转换为数字电压量。通过对地址选通端送入不同的地址来锁定模数转换后的数字量,然后分时输出 8 路数据给单片机进行处理。3.2.1 信号引脚ADC0809 芯片为 28 引脚为双列直插式封装,其引脚排列见图如下所示对 ADC0809主要信号引脚的功能说明如下:IN7IN 0模拟量输入通道ALE地址锁存允许信号。对应ALE 上跳沿,A、B、C 地址状态送入地址锁存器中并选通相应的模拟通道。START转换启动信号。START 上升沿时,复位 ADC0809;START 下降沿时启动芯片,开始进行 A/D 转换;在 A/D 转换期间,START 应保持 低电平。本信号有时简写为 ST.图5 ADC0809引脚图A、B、C地址线。 通道端口选择线,A 为低地址,C 为高地址,引脚图中为ADDA,ADDB 和 ADDC。CLK时钟信号。ADC0809的内部没有时钟电路,所需时钟信号由外界提供,因此有时钟信号引脚。通常使用频率为500KHz 的时钟信号EOC转换结束信号。EOC=0,正在进行转换;EOC=1,转换结束。使用中该状态信号即可作为查询的状态标志,又可作为中断请求信号使用。D7D 0数据输出线。为三态缓冲输出形式,可以和单片机的数据线直接相连。D 0为最低位,D 7为最高 OE输出允许信号。用于控制三态输出锁存器向单片机输出转换得到的数据。OE=0,输出数据线呈高阻;OE=1,输出转换得到的数据。Vcc +5V 电源。 Vref参考电源参考电压用来与输入的模拟信号进行比较,作为逐次逼近的基准。其典型值为+5V(Vref (+)=+5V, Vref(-)=-5V).3.2.2 8路模拟通道选择模拟通道选择信号 A、B、C 分别接最低三位地址 A0、A 1、A 2即(P 0.0、P 0.1、P 0.2),而地址锁存允许信号 ALE 由 P2.0控制,则8路模拟通道的地址为0FEF8H0FEFFH.此外,通道地址选择以 作写选通信号,这一部分电路如 图6 所示: 图6 ADC0809的部分信号连接 把 ALE 信号与 START 信号接在一起了,这样连接使得在信号的前沿写入存通道地址,紧接着在其后沿就启动转换。通过单片机内部的程序对 PO 口的不同编码,其中最低三位地址经过内部的译码器电路得到不同的信号,作为锁存 ADC0809转换通道的地址,转换电路把数字电压量送到该部分电路的输出端口,等待单片机的输入口接受数据。3.2.3 完成后转换数据的传送以及转换A/D 转换过程中的时间配合 通过对 A、B、C 送入不同的编码来实现对数据的锁存。在 ALE 端接到高电平的同时,ADC0809的 START 端也得到高电平,开始对输入的模拟电压进行转换当转换完后 ADC0809把 EOC 端置为高电平,作为触发 图7 信号的时间配合中断的信号,送入单片机的外部中断1 ,启动中断对接受的数据进行数字量的处理,把测得的电压对应的编码传输给单片机与数码管所连接的端口,通过数码管的驱动电路来驱动数码管来显示不同电压值,不同的位选编码,使不同的数码管亮或者是灭,从而实现数码管的动态显示,使我们所看到的电压值稳定。 3.2.4 MCS-51单片机与 ADC0809的接口ADC0809与 MCS-51单片机的连接如图图8 ADC0809与 MCS-51的连接3.3 单片机部分单片机选用的是 ATMEL 公司新推出的AT89S51,AT89C51 是一个低电压,高性能 CMOS 8 位单片机,片内含 4k bytes 的可反复擦写的 Flash 只读程序存储器和 128 bytes 的随机存取数据存储器(RAM),器件采用 ATMEL 公司的高密度、非易失性存储技术生产,兼容标准 MCS-51 指令系统,片内置通用8 位中央处理器和 Flash 存储单元,内置功能强大的微型计算机的 AT89C51 提供了高性价比的解决方案。AT89C51 是一个低功耗高性能单片机,40 个引脚,32个外部双向输入/输出(I/O)端口,同时内含 2 个外中断口,2 个 16 位可编程定时计数器,2个全双工串行通信口。AT89S51 还有以下主要特点: 采用了 ATMEL 公司的高密度、 非易失性存储器 图 9 单片机的引脚图 (NV-SRAM)技术; 其片内具有 256 字节 RAM,8KB 的可在线编程(ISP)FLASH 存储器;有 2 种低功耗节电工作方式:空闲模式和掉电模式片内含有一个看门狗定时器(WDT),WDT 包含一个 14 位计数器和看门狗定时器复位寄存器(WDTRST),只要对 WDTRST 按顺序先写入 01EH,后写入 0E1H,WDT 便启动,当 CPU由于扰动而使程序陷入死循环或“跑飞”状态时,WDT 即可有效地使系统复位,提高了系统的抗干扰性能。3.4 数字电压表系统原理图AD7AD01AD26AD543AD01AD2AD0AD76AD51AD324ALEEOCEOCALEAHBCDEFG162345A HBCDEFG 1 62345XTAL218XTAL119ALE301PSN29RST9P0./AD039.1/18P0.2/AD237.3/36P0.4/AD435.5/54P0.6/AD63.7/72P2.7/A1528P2.0/A8.1/9P2./A02.3/1P2.4/A22.5/13.6/47P1.01.2P1.23.34P1.45.56P1.67.78 P3.0/RXD10.1/TP3.2/IN012./IT13P3.4/014P3.7/RD17.6/W6.5/T15U180C51D03 Q0214 15D27 Q2638 39D413 Q41254 55D617 Q61678 79OE1LU274LS37OUT121AD B24 A5C3VREF(+)12 (-)6IN31I42IN53I64IN75 START6OUT58EOC7OE9CLOCK1020OUT714658741OUT39I228IN17I026ALE2U3ADC0823 1U4:A74LS0256 4U4:B74LS02VCGNDGNDU3(CLOCK)12U5:A74LS0446%RV11k Volts+2.303.5 数码管显示部分显示接口用来显示系统的状态,命令或采集的电压数据。本系统显示部分用的是 LED数码管显示模块。采用 4 个七段数码管分别显示每个通道的电压及被测电压所在的通道。七段数码管都是采用的共阳极,具体的电路是采用了把数码管的字型码段与单片机的输出端口 P1 相连接。而公共端通过一个三极管与电源相连接。当单片机的输出端口不停的把 8 个通道经过处理的数字电压信号逐个的送出时,通过对每个数码管公共端的控制就可以选择使数码管亮或者灭。具体的字型由单片机的输出口送出的代码决定。从而实现了数字电压表的轮流动态的显示。并且有一位代表了被测电压的通道数,方便了人们对电压的确认。3.6 程序设计(1) 主程序模块主程序主要完成初始化、开 CPU 中断、开外部中断、调用启动转换子程序、调用 A/D转换子程序和调用显示子程序等等。主程序的流程图如图 10 所示。开 始初 始 化(2)A/D 转换子程序首先通过单片机的 P0 口的低三位经过一个 74LS373 锁存器给 ADC0809 的地址选通端送入一个地址,初始地址为 000,既为 ADC0809 的 IN0 通道地址。然后通过单片机的 P3.6 端口置低电平和 P2.7 口的低电平一起经过一个 74LS02 转换为可以触发 ADC0809 的高电平。由于 ALE端和 START 端是接在一起的该变 P3.6 口电平形成一个脉冲,就启动了 ADC0809 的 A/D 转换,同时在转换结束时把 EOC 端置 3 为高电平。在地址译码器的作用下选通地址选通通道,转换后的电压数字量送出到单片机的输入端口。每完成一次启动后改变通道的地址指向下一个通道。如图 11 所示(3)外部中断子程序外部中断子程序是用于接受 ADC0809 送入单片机的电压数字量,并调用 A/D 转换子程序和显示子程序等。当 ADC0809 的 A/D 转换完成后在其 EOC 端置为高电平,该信号经过74LS04 的一个非门转换为低电平,触发单片机的外部中断,进入中断子程序。首先对通道地址(4) 显示子 A/D 转换程序LED 数码管采用软件译码动态扫描方式。在显示子程序中实现多路循环显示程序。多路循环显示把 8 个存储单元的数值依次取出送到 4 位数码管上显示。每一路显示 1 秒,每次送出数据的同时把通道的地址也送出到数码管电路。每路数据显示时需经过转换变成十进制 BCD 码,放于 4 个数码管的显示缓冲中。允许 CPU 中断允许外部中断调用 A/D 转换子程序图 10 主程序流程图开 始通 道 值 是8?启 动一 次 转 换 开 始地址数小于8?数据存储区首地址 首地址 5 结束语由于第一次实践,加之条件有限。我设计出来电路的原理图、做 PCB 电路板、设计程序上,调试,做成成品花了将近三个星期。程序中除了 A/D 转换部分参考了参考文献2,剩下的大部分都是自己写的。调试程序时,我遇到了很多困难,例如:参考文献错误的误导,调试环境的错误使用,硬件改装,程序本身不可预见的错误等。经历了,写程序,调试,仿真,如果成功写进硬件,不成功继续改进;写进硬件后出问题了,就不知是硬件问题还是元件问题了。没有人告诉你错在那里,没有人告诉你该怎么做,我在走没人可借见的路,坎坷充满荆棘的路。最后,再历经多次调试后,写进硬件成功了,我高兴的大喊大叫起来,真的太难了,家人也很为我高兴。做好一件事真的不容易!参考文献1 徐爱钧.智能化测量控制仪表原理与设计(第二版)M.北京:北京航空航天大学出版社,2004.2 吴金戌,沈庆阳,郭庭吉.8051 单片机实践与应用M.北京:清华大学出版社,2002.3 张国勋,缩短 ICL7135A/D 采样程序时间的一种方法J. 电子技术应用,1993,第一期.A/D 转换结束 EOC=1启动中断子程序通 道 值 加 1结 束否是取数据(OE=0)数据存储区地址加 1数据存储区地址加1(OE=1)调用数据显示子程序结 束图 11 A/D 转换子程序 图 12 外部中断子程序4 高峰,单片微型计算机与接口技术M.北京:科学出版社,2003.5 刘伟,赵俊逸,黄勇,一种基予 C8051F 单片机的 SOC 型数据采录器的设计与实现A.天津市计算机学会单片机分会编. 2003 年全国单片机及嵌如入式系统学术年会论文集(下册)C .北京:北京航空航天大学出版社,2003 .790-7946 / ICL7135.PDF、MAX232.PDF附录 11 2 3 4 5 6ABCD654321DCBATitleNumber RevisionSizeBDate: 12-Dec-2008 Shet of File: C:Documents and SetingsAdministrator单danpianji0单单单单.DBDrw By:EA/VP31X119 X218RESET9RD17 WR16INT012 INT113T014 T115P101 P12P123 P134P145 P156P167 P178P0 39P01 38P02 37P03 36P04 35P05 34P06 33P07 32P20 21P21 22P2 23P23 24P24 25P25 26P26 27P27 28PSEN 29ALE/P 30TXD 11RXD 10U1AT8951C130PFC230PFY112MHzR11KR220 C322uFS1RESETVCIN-0 26msb2-121 2-220IN-1 272-319 2-418IN-2 282-58 2-615IN-3 12-714 lsb2-817IN-4 2EOC7IN-5 3AD-A25IN-6 4AD-B24 AD-C23IN-7 5ALE22ref(-) 16ENABLE9 START6ref(+) 12CLOCK10U2ADC0809D03 Q0 2D14 Q1 5D27 Q2 6D38 Q3 9D413 Q4 12D514 Q5 15D617 Q6 16D718 Q7 19OE1 LE11U374LS373123U4A74LS02123U5A74LS0212 U6A74LS04EOCINT1ALEOEWRRDALE VCR10Q2PNP Q3PNP Q4PNP Q5PNPQ6PNP Q7PNPVCRP22KabfcgdeDPY45791021abcdefg6 dp dpCOM3DS1DPY_7-SEG_DPabfcgdeDPYabcdefgdpabfcgdeDPY45791021abcdefg6 dp dpCOM3DS3DPY_7-SEG_DPabfcgdeDPY45791021abcdefg6 dp dpCOM3DS4DPY_7-SEG_DPabfcgdeDPY45791021abcdefg6 dp dpCOM3DS5DPY_7-SEG_DPabfcgdeDPY45791021abcdefg6 dp dpCOM3DS6DPY_7-SEG_DPabfcgdeDPY45791021abcdfg6dp dpCOM3DS2DPY_7-SEG_DPRP110KRP260KRV1R11KR11KR11KR11KR11KR11K R11K R11KV1附录 2#include #include #define addata P0#define Disdata P1#define uchar unsigned char#define uint unsigned intsb

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论