ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:46.97KB ,
资源ID:8580537      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8580537.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(多路电压测量系统.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

多路电压测量系统.docx

1、多路电压测量系统 姓 名 苏永斌 专 业 电气自动化技术 论 文 名 称 多路电压测量系统 指 导 教 师 何跃军 摘要本毕业设计项目为多路电压测量系统。这是一个以单片机AT89C51为控制核心,利用A/D转换器、数码管、驱动电路等组成的单片机系统。它的主要功能是能同时测量和显示多路和单路电路的电压,测量电压的范围为0-5V,电压测量的最小分辨率为0.019V, 测量通道为8路,我们设了两个功能键,对其功能进行选择,其中按键1是进行单路和多路切换的;按键2是进行通道号选择的。 关键词:单片机;AT89C51;A/D转换;ADC0809;数据处理 第一章 系统总体设计1-1系统功能介绍本系统应用

2、的范围主要是能同时测量并显示多路低压电路的电压,我们在系统设计时,测量电压的范围设计成05V。它能同时对一路电压或多达8路电压进行测量,我们可以通过按键1进行单路和多路切换;通过按键2进行通道号选择,并在四位LED数码管上轮流显示或单路选择显示。测量最小分辨率为0.019V,测量误差约为0.02V。1-2 系统设计思想多路电压测量系统由硬件和软件两大部分组成。硬件部分包括单片机电路、过程输入通道(模拟量输入通道)和接口电路。如图1-1所示。单片机电路用来存储数据、程序,并进行一系列运算处理,它通常由微处理器(CPU)等芯片组成。模拟量输入通道(模/数转换器ADC0809)用来采集模拟量信号,经

3、过单片机处理后,在显示电路中,显示电压值。软件部分主要是在硬件电路的基础上,对单片机编写相应程序以实现电路的功能 ,本系统软件采用模块化设计思想,编程语言采用汇编语言,仿真系统采用南京伟福仿真器。 图1-1 多路电压测量系统硬件组成框图1-3多路电压测量系统主要特点本多路电压测量系统主要特点如下:1)控制灵活:由于采用单片机控制,因此系统可以在不改变硬件电路的情况下,通过编程,增加或修改功能。2)成本较低:本系统采用元件都是普通常用件,因而造价低廉,与同类产品相比,有较大的价格优势。3)精度较高:本系统采用8位A/D转换器ADC0809,因而电压转换精度可以达到0.019V,由于采用三位数码管

4、显示电压,因而最小显示电压为0.01V.4)有较大的实用价值。本产品可用于多路电压的测量,在电子电气领域因而有较大的使用范围,另外,在保证一定的精度的情况下,本产品有较大的价格优势,这是我们这款产品的特点,从而使它具有较大的实用价值。1-4多路电压测量系统设计按系统功能实现要求,决定控制系统采用AT89C51单片机为控制核心,A/D转换采用ADC0809。系统除能确保实现要求的功能外,还可以方便地进行8路其它A/D转换量的测量、远程测量结果传送等扩展功能。多路电压测量系统设计方案框图如图1-4 图1-4 多路电压测量系统设计方案框图1-5多路电压测量系统总体开发与设计流程图 多路数字电压测量系

5、统总体开发与设计流程图如图1-5所示: 图1-5系统总体开发与设计流程图第二章 多路电压测量系统的硬件系统设计2-1 系统硬件电路的设计原理本多路电压测量系统以单片机为控制核心,包括单片机及其外围电路,A/D转换电路、分频电路、按键选择电路、数码管动态驱动与显示电路等组成,电路原理图如图2-1所示,系统实物图如图2-2。A/D转换由A/D转换元件ADC0809完成。ADC0809具有8路模拟输入端口,地址线(2325脚)可决定对哪一路模拟输入作A/D转换。22脚为地址锁存控制,当输入为高电平时,为地址信号进行锁存。6脚为测试控制,当输入一个2S宽高电平脉冲时,就开始A/D转换。7脚为A/D转换

6、结束标志,当A/D转换结束时,7脚输出高电平。9脚为A/D转换数据输出允许控制,当OE脚为高电平时,A/D转换数据从该端口输出。10脚为0809的时钟输入端,利用单片机ALE引脚(ALE引脚,其输出频率为2M,它是对单片机外接12M晶振进行六分频),与4024相连,经过4024元件二分频后,得到1MHz时钟,作为A/D0809的输入时钟。单片机的P1口最为数码管的段码控制口、P3.0P3.3端口作为四位LED数码管位选控制端口。P3.5端口用作单路显示/循环显示转换按钮,P3.6端口用作单路显示时选择通道。P0端口作A/D转换数据读入用,P2端口用作0809的A/D转换控制。 图2-1 多路电

7、压测量系统电路原理图 图2-2 多路电压测量系统实物图2-2电压测量系统在设计上特点本系统在设计上,有以下几个特点:1)系统硬件结构结合应用软件方案一并考虑。我们在设计上,考虑的原则是:软件能实现的功能尽可能由软件来实现。但必须注意如用软件来实现的硬件功能,其响应时间要比直接用硬件来实现花的时间长,而且占用CPU时间。2)系统中相关的器件要尽可能做到性能匹配。3)可靠性及抗干扰设计是硬件系统设计不可缺少的一部分,它包括芯片、器件选择、去耦滤波、印刷电路板布线、通道隔离等。4)单片机外接电路较多时,必须考虑其驱动能力。驱动能力不足时,系统工作不可靠,解决的办法是增加驱动能力,增设线驱动器或者减少

8、芯片功耗,降低总线负载。在完成各个单元电路的设计与调试后,我们与软件系统进行了联调,且达到了一个较为理想的结果。 2-3多路数字电压测量系统的设计与制作步骤研制一个电压测量系统是个复杂的过程,这一过程包括分析仪表的功能要求和拟制总体设计方案,确定硬件结构和软件算法,研制逻辑电路,以及系统的调试和性能的测试等等。为保证系统的质量和提高研制的效率。设计小组应该完成以下几步工作:1. 确定设计任务和功能要求2. 按照设计图纸进行电路的焊接和调试3. 电路调试工作完成后利用仿真器进行对电路软件上的调试4. 对电路进行工艺上的修改与性能测试2-4电路各部分硬件电路介绍本系统电路以单片机AT89C51为控

9、制核心,包括单片机及其外围电路,A/D转换电路、分频电路、按键选择电路、数码管动态驱动与显示电路等组成,下面我们一一进行阐明。2-4-1 单片机AT89C51及其特点AT89C51是ATMEL公司生产的CMOS型51系列单片机,具有MCS-51内核。ATMELF是一种低功耗、高性能的含有4KB闪速可编程/擦出只读存储器的八位CMOS微控制器,使用高密度、非易失存储技术制造,并且与8051指令系统和引脚完全兼容。芯片上的FPEROM允许在线或采用通用的非易失存储编程对程序存储重复编程。1、AT89C51的主要性能包括:(1) 与MCS-51微控制器产品系列兼容(2) 片内有4KB可在线重复编程闪

10、速擦写存储器(3) 存储器可循环写入/擦出1000次(4) 存储数据保存时间为10年(5) 全静态工作:可由0HZ到16MHZ(6) 程序存储具有3级锁存保护(7) 1288位内部RAM(8) 32条可编程I/O线(9) 两个16位定时器/计数器(10) 中断结构具有5个中断源和两个优先级(11) 空闲状态维持低功耗和掉电状态保存存储内容2、AT89C51系列引脚及功能:AT89C51系列有40个引脚,采用双列直插(DIP)封装形式,使用很方便。AT89C51引脚如图2-3所示。 图2-3 引脚图其各个引脚功能如下:P0口(3932):P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门

11、电流。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。P1口(18):P1口是从内部提供上拉电阻器的8位双向I/O口,P1口缓冲器能接收和输出4个TTL门电流。 P2口(2128):P2口为内部上拉电阻器的8位双向I/O口,P2口缓冲器可接收和输出4个TTL门电流。 P3口(1017):P3口是8个带内部上拉电阻器的双向I/O口,可接收和输出4个TTL门电流,P3口也可作为AT89C51的特殊功能口。 RST(9):复位输入。当振荡器复位时,要保持RST引脚2个机器周期的高电平时间。 ALE/PROG(30):当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节,

12、在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6,它可用作对外部输出的脉冲或用于定时目的,要注意的是,每当访问外部数据存储器时,将跳过1个ALE脉冲。PSEN(29):外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期2次PSEN有效,但在访问外部数据存储器时,这2次有效的PSEN信号将不出现。EA/VPP(31):当EA保持低电平时,外部程序存储器地址为(0000HFFFFH)不管是否有内部程序存储器。FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1(19):反向振荡器放大器的输

13、入及内部时钟工作电路的输入。 XTAL2(18):来自反向振荡器的输出2-4-2数码管驱动电路为提供单片机对显示数码管的驱动能力,我们采用总线驱动器74HC244对数码管进行驱动,其工作原理与管脚排列图如图2-4:其功能表如表1所示:图2-4 74HC244引脚图输入输出GAYLLHLHXLHZ表1,74HC244功能表74HC244功能表说明如下:L:低电平H:高电平Z:高阻状态X:高低电平均可(包括跳变)G:输出禁止控制端。高电平,输出禁止,位高阻状态。量组电路分开控制。电源电压参考值:TTL极限值 + 7V,一般使用 + 5V, CMOS极限值 + 20V,一般使用 +15V,其典型参数

14、如表2所示。型号最大拉出电流(mA)最大吸收电流(mA)典型传播延迟时间(ns)典型总功耗(mW)54S244-1248655874S244-1564655854LS244-12121212774LS244-152412127 表2 ,74HC244 典型参数2-4-3动态LED数字显示电路在本系统中,需要用到的数码管比较多,包括1位显示通道号,三位显示电压值,电压显示精确到小数点后两位。为减少I/O数目,简化电路,降低成本,我们的数码管采用动态显示方式。动态LED显示器接口及工作原理: 动态LED显示器的电路连接特点是将各位LED显示器的所有对应段线并联在一起,由一个8位I/O口控制输出字段

15、码,而每位LED显示器的公共端(共阳极点或共阴极点)不直接接地或+5V电源,而是分别由另外的I/O口线控制(称为位选)。LED显示器的显示内容通过段码I/O口和位选I/O口的相互配合控制,以动态扫描显示的工作方式输出待显示的内容。 图2-5 单片机与数码管连接实物图数码显示(LED)及接口:(1)LED显示器结构LED显示器内部由发光二极管组成。根据内部二极管连接方式,数码管结构又分为共阴极和共阳极型。共阳极型发光二极管阳极连在一起接高电平,共阴极型发光二极管阴极连在一起接低电平。电压测量系统采用的是共阳极型。图2-6 数码管引脚及内部结构图由图可见,a.、b、c、d、f、g、分别为七个发光段

16、引脚,dp引脚为小数点。3与8脚接电源或接地端,共10个引脚。(2)显示字形与字段码关系数码管发光原理情况:共阳极型如图2-6(b)所示,ag哪个为低电平,哪个二极管亮。每个二极管为一段,不同的发光段亮,可组成不同字形。输入到数码管dp、g、f、e、d、c、b、a的进制码称为字段吗(或字形吗),数码管显示的结果为字形。本系统中,数码管各个字段和PA口输出字形码对应关系如表3和表4所示:PA7PA6PA5PA4PA3PA2PA1PA0小数点gfedcba 表3C0HF9HA4HB0H99H92H82HF8H80H90H0123 456789表42-4-4系统A/D电压采样电路本系统A/D电压采样

17、电路采用专用集成电路芯片ADC0809,下面我们介绍一下ADC0809。1) ADC0809的结构 ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式A/D转换器,可以和单片机直接接口。其内部有一个8路通道多路开关,它可以根据地址码锁存译码后的信号,只选通8个单断模拟输入信号中的一个进行A/D转换。如图2-7管脚图所示。 图2-7 管脚图 A/D转换器是连接模拟世界与数字世界的桥梁,它担负着将模拟信号变换成适合数字处理的二进制代码的任务。目前,8位A/D转换器的转换速度以及达到1.5GHz; 2 )ADC0809主要特性: 8路8位A/D

18、转换器,即分辨率8位; 具有锁存控制的8路模拟开关; 易与各种微控控制接口; 可锁存三态输出,输出与TTL兼容; 转换时间(f500KHz):128US; 转换精度:0.2%;3 )ADC0809 A/D工作原理本系统中,ADC0809与单片机连接图如图2-8所示,其工作过程是:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平时,输出三台门打开,转换结果的数字量输出到数据总线上。图2-8 ADC0809与单片机接口电路

19、图 图2-9 ADC0809与单片机连接实物图ADC0809具有8路模拟输入端口,由于ADC0809内部含有输出三态缓冲锁存器,所以可以直接将8位数字量输出端与单片机P0口相连。P0端口作A/D转换数据读入用,P2端口用作0809的A/D转换控制。地址线(2325脚)可决定对哪一路模拟输入作A/D转换。22脚ALE为地址锁存控制,当输入为高电平时,对地址信号进行锁存。6脚START为测试控制,当输入一个2us宽高电平时,就开始A/D转换。7脚EOC为A/D转换结束标志,当A/D转换结束时,7脚输出高电平。9脚为A/D转换数据输出允许控制,当OE脚为高电平,A/D转换数据从该端口输出。10脚为A

20、DC0809的时钟输入端,利用单片机30脚的六分频晶振频率再通过分频器二分频得到1MHz时钟。2-4-5 4024分频电路本系统采用4000系列电路中的4024对ALE引脚进行2分频,得到1M频率的方波信号,提供给ADC0809作为工作频率,我们采用的是硬件分频的方法,其特点是不影响软件编程,简化了软件程序。当然我们也可以采用软件方法,利用单片机的定时器,定时周期为10US,利用一个IO口,则单片机每到10US,使这个IO口反相,则可以通过IO口,产生一个周期为20US的方波,作为ADC0809的工作频率,用软件分频的方法是,节省了硬件资源,但使得编程复杂化。第三章 多路电压测量系统的软件系统

21、介绍3-1 多路数字电压测量系统软件设计概述在系统软件设计时,应根据系统软件功能要求,将系统软件分成若干个相对独立的部分,并根据它们的联系和时间上的关系,设计出合理的软件总体结构。通常在编制程序前先根据系统输入和输出变量建立起正确的数学模型,然后画出程序流程框图,要求流程框图结构清晰、简捷、合理,画流程框图时还要对系统资源作具体的分配和说明。编制程序时一般采用自顶向下的程序设计技术,先设计测量程序再设计各应用程序模块。各功能程序应模块化、子程序化,这样不仅便于调试、链接,还便于个性和移植。在进行应用系统的总体设计时,软件设计和硬件设计应统一考虑,相结合进行。当系统的电路设计定型后,软件的任务也

22、就明确了。下图为多路数字电压测量系统设计流程图及系统框图如下图3-1所示:图3-1 多路数字电压测量系统软件系统设计流程图3-1-2主程序在刚上电时,系统默认为循环显示8个通道的电压值状态。当进行一次测量后,将显示每一通道的A/D转换值,每个通道的数据显示时间为1s左右。主程序在调用显示子程序和测试子程序之间循环,主程序流程图如下图3-2所示:图3-2 主程序流程图3-1-3显示子程序系统显示子程序采用动态扫描法,实现四位数码管的数值的动态显示。我们把测量所得的8个通道的A/D转换数据分别存放在70H77H寄存器,每个通道的测量数据在显示时,需转换成为3位十进制BCD码,放在78H7AH单元中

23、,7BH存放通道标志数。寄存器R3用作8路循环控制,R0用作显示数据地址指针。系统软件显示子程序如下:*;* 显示控制程序 *;*DISPLAY: JB 00H,DISP11 ;标志位为1,则转单路显示控制子程序 MOV R3,#08H ;8路信号循环显示控制子程序 MOV R0,#70H ;显示数据初址70H 77H MOV 7BH,#00H ;显示通道路数初值DISLOOP1: LCALL TUNBCD;显示数据转为三位BCD码存入7AH,79H,78H MOV R2,#0FFH ;每路显示时间控制在4ms X 255,约1 sDISLOOP2:LCALL DISP ;调四位显示程序 LC

24、ALL KEYWORK1 ;按键检测 DJNZ R2,DISLOOP2 INC R0 ;显示下一路 INC 7BH ;通道显示数加1 DJNZ R3,DISLOOP1 RETDISP11: MOV A,7BH ;单路显示控制子程序 SUBB A,#01H MOV 7BH,A ADD A,#70H MOV R0,ADISLOOP11: LCALL TUNBCD;显示数据转为三位BCD码存入7AH,79H,78H MOV R2,#0FFH ;每路显示时间控制在4ms X 25DISLOOP22: LCALL DISP ;调四位显示程序 LCALL KEYWORK2 ;按键检测 DJNZ R2,DI

25、SLOOP22 INC 7BH ;通道显示数加1 RET3-1-4模/数转换测量子程序模/数转换测量子程序用来实现对A /D转换模块ADC0809的模拟输入电压进行A/D转换,并将其转换后的数值存入70H77H内存单元。其程序流程见图3-3,子程序源程序如下所示。 图3-3 A/D转换测量程序流程图*;* 电压测量(A/D)子程序 *;*;一次测量数据8个,依次放入70H 77H单元中TEST: CLR A ;模/数转换子程序 MOV P2,A MOV R0,#70H ;转换值存放首址 MOV R7,#08H ;转换8次控制LCALL TESTART ;启动测试WAIT: JB P3.7,MO

26、VD ;等A/D转换结束信号 AJMP WAITTESTART: SETB P2.3 ;测试启动 NOP NOP CLR P2.3 SETB P2.4 NOP NOP CLR P2.4 NOP NOP NOP NOP RETMOVD: SETB P2.5 ;取A/D转换数据 MOV A,P0 MOV R0,A CLR P2.5 INC R0 MOV A,P2 ;通道地址加1 INC A MOV P2,A CJNE A,#08H,TESTEND ;等8路A/D转换结束TESTEND: JC TESTCON CLR A ;结束恢复端口 MOV P2,A MOV A,#0FFH MOV P0,A M

27、OV P1,A MOV P3,A RETTESTCON: LCALL TESTART LJMP WAIT3-2系统软件程序设计本系统采用汇编语言编写,调试与仿真采用南京伟福公司生产的WAVE2000仿真系统,经过调试,达到了满意的效果。系统源程序清单如下:主程序;*;* 主程序和中断程序入口 *;*ORG 0000HLJMP STARTORG 0003HRETIORG 000BHRETIORG 0013HRETIORG 001BHRETIORG 0023HRETIORG 002BHRETI;*;* 初始化程序中的各变量 *;*CLEARMEMIO: CLR A MOV P2,A MOV R0,

28、#70H MOV R2,#0DHLOOPMEM: MOV R0,A INC R0 DJNZ R2,LOOPMEM MOV 20H,#00H MOV A,#0FFH MOV P0,A MOV P1,A MOV P3,A*;* 主程序 *;*START: LCALL CLEARMEMIO ;初始化MAIN: LCALL TEST ;测量一次 LCALL DISPLAY ;显示数据一次 AJMP MAIN NOP ;PC值出错处理 NOP NOP LJMP START*;* 显示控制程序 *;*DISPLAY: JB 00H,DISP11 ;标志位为1,则转单路显示控制子程序 MOV R3,#08H

29、 ;8路信号循环显示控制子程序 MOV R0,#70H ;显示数据初址70H 77H MOV 7BH,#00H ;显示通道路数初值DISLOOP1: LCALL TUNBCD ;显示数据转为三位BCD码存入7AH,79H,78H MOV R2,#0FFH ;每路显示时间控制在4ms X 255,约1 sDISLOOP2:LCALL DISP ;调四位显示程序 LCALL KEYWORK1 ;按键检测 DJNZ R2,DISLOOP2 INC R0 ;显示下一路 INC 7BH ;通道显示数加1 DJNZ R3,DISLOOP1 RETDISP11: MOV A,7BH ;单路显示控制子程序 SUBB A,#01H MOV 7BH,A ADD A,#70H MOV R0,ADISLO

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1