版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目录1 引言 (12设计原理及要求 (22.1数字电压表的实现原理 (22.2数字电压表的设计要求 (23软件仿真电路设计 (33.1设计思路 (33.2仿真电路图 (33.3设计过程 (33.4 AT89C51的功能介绍 (43.4.1简单概述 (43.4.2主要功能特性 (43.4.3 AT89C51的引脚介绍 (53.5 ADC0808的引脚及功能介绍 (63.5.1芯片概述 (63.5.2 引脚简介 (73.5.3 ADC0808的转换原理 (73.6 74LS373芯片的引脚及功能 (73.6.1芯片概述 (73.6.2引脚介绍 (83.7 LED数码管的控制显示 (83.7.1 L
2、ED数码管的模型 (83.7.2 LED数码管的接口简介 (84系统软件程序的设计 (104.1 主程序 (104.2 A/D转换子程序 (104.3 中断显示程序 (115电压表的调试及性能分析 (135.1 调试与测试 (135.2 性能分析 (136电路仿真图 (147总结 (15参考文献 (16附录1 源程序 (17附录2 仿真原理电路 (231 引言随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成CPU、存储器、定时器/计数电路,这就很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。数字电压表(DigitalV oltmeter简
3、称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压转换成不连续、离散的数字形式并加以显示的仪表。与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。本章重点介绍单片A/D 转换器以及由它们构成的基于单片机的数字电压表的工作原目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力理。本设计AT89C51单片机的一种电压测量电路,该电路采用ADC0808本文介绍一种基于A/D转换电路,测量范围直流05V 的4路输入电压值,并在四位LED数码管上显示或单路选择显
4、示。测量最小分辨率为0.019V,测量误差约为正负0.02V。2设计原理及要求本设计是利用单片机AT89C51与ADC0808设计一个数字电压表,测量0-5V之间的直流电压值,四位数码显示,但要求使用的元器件数目最少。2.1数字电压表的实现原理ADC0808是8位的A/D转换器。当输入电压为5.00V时,输出的数据值为255(0FFH,因此最大分辨率为0.0196(5/255。ADC0808具有8路模拟量输入端口,通过3位地址输入端能从8路中选择一路进行转换。如每隔一段时间依次轮流改变3位地址输入端的地址,就能依次对8 路输入电压进行测量。LED 数码管显示采用软件译码动态显示。通过按键选择可
5、对8路循环显示,也可单路显示,单路显示可通过按键选择显示的通道数。2.2数字电压表的设计要求可以测量05V范围内的3路直流电压值。在4位LED数码管上轮流显示各路电压值或单路选择显示,其中3位LED数码管显示电压值,显示范围为0.00V5.00V,1位LED数码管显示路数,3路分别为0-2。要求测量的最小分辨率为0.02V。3软件仿真电路设计3.1设计思路多路数字电压表应用系统硬件电路由单片机、A/D转换器、数码管显示电路和按键处理电路组成,由于ADC0808在进行A/D转换时需要有CLK信号,本试验中ADC0808的CLK直接由外部电源提供为500kHz的方波。由于ADC0808的参考电压V
6、REF=VCC,所以转换之后的数据要经过数据处理,在数码管上显示出电压值。实际显示的电压值(D/256*VREF ADC0808采用逐次逼近法转换,把模拟电压转换成16进制的D,由于是对直流电压05V进行采集,所以D对应的电压为V0 ,我们的目的就是要把V0显示在LED显示器上,因为单片机不好进行小数点计算,所以有:V0=2*D扩大了100倍,扩大100倍后的结果高八位放寄存器B,低八位放寄存器A,分寄存器B为0或不为0的情况进行存取数据,得到的结果个位放入R0,十位放入R1,通过查表使之显示在LED显示器。3.2仿真电路图用Protues软件仿真设计的电路如图3-1所示。 图3-1 仿真电路
7、3.3设计过程简易数字电压测量电路由A/D转换、数据处理及显示控制等组成。电路原理图见附录2。A/D转换由集成电路0808完成。0808具有8路模拟输入端口,地址(23-25脚可决定对哪路模拟输入作A/D转换,22脚为地址锁存控制,当输入为高电平时,对地址信号进行锁存。6脚为测试控制,当输入一个2us宽高电平脉冲时,就开始A/D转换。7脚为A/D转换结束标志,当A/D转换结束时7脚输出高电平。9脚为A/D转换数据输出允许控制,当OE脚为高电平时,A/D 转换数据从该端口输出。10脚为0808的时钟输入端,由外部信号源提供。单片机的P1、P3.0-P3.3端口作为四位LED数码管现实控制。P3.
8、5端口用作单路显示/循环显示转换按钮,P3.6端口用作单路显示时选择通道。P0端口作A/D转换数据读入用,P2端口用作0808的A/D转换控制。3.4 AT89C51的功能介绍3.4.1简单概述AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C51是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1 000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-
9、51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89 C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如图3-2所示。 图3-2 AT89C51芯片模型3.4.2主要功能特性(1 4K字节可编程闪烁存储器。(2 32个双向I/O口;128×8位内部RAM 。(3 2个16位可编程定时/计数器中断,时钟频率0-24MHz。(4 可编程串行通道。(5 5个中断源。(6 2个读写中断口线。(7 低功耗的闲置和掉电模式。(8 片内振荡器和时钟电
10、路。3.4.3 AT89C51的引脚介绍89C51单片机多采用40只引脚的双列直插封装(DIP方式,下面分别简单介绍。(1电源引脚电源引脚接入单片机的工作电源。Vcc(40引脚:+5V电源。GND(20引脚:接地。(2时钟引脚XTAL1(19引脚:片内振荡器反相放大器和时钟发生器电路的输入端。XTAL2(20引脚:片内振荡器反相放大器的输出端。 图3-3 电源接入方式(3复位RST(9引脚在振荡器运行时,有两个机器周期(24个振荡周期以上的高电平出现在此引脚时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位。(4EA/Vpp(31引脚EA为外部程序存储器访问允许控制端。当它为高电平时
11、,单片机读片内程序存储器,在PC值超过0FFFH后将自动转向外部程序存储器。当它为低电平时,只限定在外部程序存储器,地址为0000HFFFFH。Vpp为该引脚的第二功能,为编程电压输入端。(5ALE/PROG(30引脚ALE为低八位地址锁存允许信号。在系统扩展时,ALE的负跳沿江P0口发出的第八位地址锁存在外接的地址锁存器,然后再作为数据端口。PROG为该引脚的第二功能,在对片外存储器编程时,此引脚为编程脉冲输入端。(6PSEN(29引脚片外程序存储器的读选通信号。在单片机读片外程序存储器时,此引脚输出脉冲的负跳沿作为读片外程序存储器的选通信号。(7 pin39-pin32为P0.0-P0.7
12、输入输出脚,称为P0口。P0是一个8位漏极开路型双向I/O口。内部不带上拉电阻,当外接上拉电阻时,P0口能以吸收电流的方式驱动八个LSTTL负载电路。通常在使用时外接上拉电阻,用来驱动多个数码管。在访问外部程序和外部数据存储器时,P0口是分时转换的地址(低8位/数据总线,不需要外接上拉电阻。(8Pin1-Pin8为P1.0-P1.7输入输出脚,称为P1口,是一个带内部上拉电阻的8位双向I/0口。P1口能驱动4个LSTTL负载。(9Pin21-Pin28为P2.0-P2.7输入输出脚,称为P2口。P2口是一个带内部上拉电阻的8位双向I/O口,P2口能驱动4个LSTTL负载。端口置1时,内部上拉电
13、阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接收高8位地址和控制信息。在访问外部程序和16位外部数据存储器时,P2口送出高8位地址。而在访问8位地址的外部数据存储器时其引脚上的内容在此期间不会改变。(10Pin10-Pin17为P3.0-P3.7输入输出脚,称为P3口。P3口是一个带内部上拉电阻的8位双向I/O口,P2口能驱动4个LSTTL负载,这8个引脚还用于专门的第二功能。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接控制信息。3.5 ADC0808的引脚及功能介绍3.5.1芯片概述ADC0808是一种典型的A/D转换器。它是由
14、8位A/D转换器,一个8路模拟量开关,8位模拟量地址锁存译码器和一个三态数据输出锁存器组成;+5V 单电源供电,转化时间在100us左右;内部没有时钟电路,故需外部提供时钟 图3-4ADC0808芯片模型3.5.2 引脚简介(1 IN0IN7:8路模拟量输入端。(2 D0D7:8位数字量输出端口。(3 START:A/D转换启动信号输入端。(4 ALE:地址锁存允许信号,高电平有效。(5 EOC:输出允许控制信号,高电平有效。(6 OE:输出允许控制信号,高电平有效。(7 CLK:时钟信号输入端。(8A、B、C:转换通道地址,控制8路模拟通道的切换。A、B、C分别与地址线或数据线相连,三位编码
15、对应8个通道地址端口,A、B、C=000111分别对应IN0IN7通道的地址端口。3.5.3 ADC0808的转换原理ADC 0808 采用逐次比较的方法完成A/D转换,由单一的+5V电源供电。片内带有锁存功能的8路选1的模拟开关,由A、B、C的编码来决定所选的通道。ADC0809完成一次转换需100s左右,它具有输出TTL三态锁存缓冲器,可直接连接到AT89C51的数据总线上。通过适当的外接电路,ADC0808可对05V 的模拟信号进行转换。3.674LS373芯片的引脚及功能3.6.1芯片概述74LS373是一种带有三态门的8D锁存器,其在本设计中是锁存P0口的低8 图3-5 74LS37
16、3芯片模型3.6.2引脚介绍(1 D0D7:8位数据输入线;(2 Q0Q7:8位数据输出线(3 G:数据输入锁存选通信号。当加到该引脚的信号为高电平时,外部数据选通到内部锁存器,负跳变时,数据锁存到锁存器中。(4OE:数据输出允许信号,低电平有效。当该信号为低电平时,三态门打开,锁存器中的数据输出到数据输出线上,当该信号为高电平时,输出线为高阻态。3.7 LED数码管的控制显示3.7.1 LED数码管的模型LED数码管模型如图3-6所示。 图3-6 LED数码管模型3.7.2 LED数码管的接口简介LED 的段码端口AG分别接至AT89C51的P1.0P1.7口,位选端14分别接至P3.5、P
17、3.4、P3.1、P3.0,如图3-7所示。 图3-7LED与A T89C51的硬件连线4系统软件程序的设计多路数字电压表系统软件程序主要有主程序、A/D转换子程序和中断显示程序组成。4.1 主程序主程序包含初始化部分、调用A/D转换子程序和相应外部0中断显示电压数值程序,初始化部分包含存放通道的缓冲区初始化和显示缓冲区初始化。另外,对于单路显示和循环显示,系统设置了一个标志位00H控制,初始化时00H位设置为0,默认为循环显示,当它为1时改变为单路显示控制,00H位通过单路、循环按键控制。流程图如图4-1所示。 图4-1主程序流程图4.2 A/D转换子程序A/D转换子程序用于对ADC0808
18、的4路输入模拟电压进行A/D转换,并将转换的数值存入4个相应的存储单元中,A/D转换子程序每隔一定时间调用一次,即隔一段时间对输入电压采样一次,如图4-2所示。 图4-2转换子程序流程图4.3 中断显示程序设计中采用中断的方式来读取转换完成的数据能节省CPU的资源当系统设置好后,一旦数据转换完成,便会进入外部中断0,然后在中断中读取转换的数值,处理数据并送数码管显示输出。LED 数码管采用软件译码动态扫描的方式。在中断程序中包含多路循环显示程序和单路显示程序,多路循环显示程序把4个存储单元的数值依次取出送到4个数码管上显示,每一路显示一秒。单路显示程序只对当前选中的一路数据进行显示。每路数据显
19、示时需经过转换变成十进制BCD码,放于4个数码管显示缓冲区中。单路或多路循环显示通过标志位00H控制。在显示控制程序中加入了对单路或多路循环按键的判断。 图4-3中断显示程序流程图5电压表的调试及性能分析5.1 调试与测试本设计应用Proteus6及KEIL51软件,首先根据自己设计的电路图用Proteus6软件画出电路模型,关于这个软件的使用通过查一些资料和自己的摸索学习;然后我们用KEIL51软件对所编写的程序进行编译、链接,如果没有错误和警告便可生成程序的hex 文件,将此文件加到电路图上使软硬件结合运行,最后进行端口电压的对比测试,测试的第一路对比见图4-1中标准电压值采用Proteu
20、s6软件中的模拟电压表测得。 从图中可以看出,简易数字电压表与“标准”数字电压表测得的绝对误差均在0.02V 以内,这与采用8位A/D 转换器所能达到的理论误差精度相一致,在一般的应用场合可以完全满足要求。5.2 性能分析由于单片机为8位处理器,当输入电压为5.00V 时,输出数据值为255(FFH 因此单片机最大的数值分辨率为0.0196V (5/255。这就决定了该电压表的最大分辨率(精度只能达到0.0196V 。测试时电压数值的变化一般以0.02V 的电压幅度变化,如要获得更高的精度要求,应采用12位、13位的A/D 转换器。简易数字电压表测得的值基本上均比标准值偏大0.01-0.02V
21、 。这可以通过校正0808的基准电压来解决,因为该电压表设计时直接用7805的供电电源作为基准电压,电压可能有偏差。另外可以用软件编程来校正测量值。ADC0808的直流输入阻抗为1M 欧姆,能满足一般的电压测试需要。另外,经测试ADC0808可直接在2MHz 的频率下工作,这样可省去分频率14024。图4-1数字电压表与标准电压表的比较6电路仿真图图6-1为4路通道用模拟电压表测得的理论值。 图6-1模拟电压表测量结果图6-2为进行模拟仿真时的电路图 图6-2仿真时的电路图7总结经过一周的努力终于设计成功,LED的显示结果和直接用数字电压表测试模拟量输入所得结果几乎一致,误差完全在合理的范围之
22、内。由于仪器误差,LED 显示最大值只能是4.9V,离标准最大值5.0V已经不远,达到预期目的,设计成功。本设计参考了教材上第十一章89C51与ADC0809转换的接口连线,设计出电路图的连线,从并中理解了许多基本的知识和接线方法,在程序的设计与电压表调试的过程中中遇到了很多的问题,刚开始时四个数码管根本不显示,后来发现用的是共阳极的数码管,而设计是共阴极的,更换后数码管终于显示,但问题又出现了,单路显示和循环显示的开关不能控制电路的单路显示和循环显示,经过仔细地检查电路和修改程序,采用中断的方法,产生一次外部中断0,程序转移到单路显示,按一次单路显示开关,地址加一,转换的模拟通道相应的加一,
23、如果按下循环按键就返回循环显示的程序,功夫不负有心人,最后终于调试成功。在此再次向带领我们这次课程设计的老师说声:谢谢!参考文献1 蒋廷彪,刘电霆,高富强,方华.单片机原理及应用.出版社:重庆大学出版社.出版时间:2005年1月第2次印刷2 8051实验指导书电子电气综合实训系统.出版社:北京精仪达盛科技有限公司3 徐爱钧.智能化测量控制仪表原理与设计(第二版M.北京:北京航空航天大学出版社,20044 吴金戌,沈庆阳,郭庭吉.8051单片机实践与应用M.北京:清华大学出版社,20025 张国勋.缩短ICL7135A/D采样程序时间的一种方法J.电子技术应用.1993.第一期6 高峰.单片微型
24、计算机与接口技术M.北京科学出版社,2003.7 刘伟,赵俊逸,黄勇.一种基予C8051F单片机的SOC型数据采录器的设计与实现附录1 源程序ORG 0000HSJMP MAINORG 0003HLJMP PINT0MAIN:MOV 50H,#19HMOV 54H,#78HMOV DPTR,#7FF8HMOV 51H,DPHMOV 52H,DPLMOV R0,#04HMOV 53H,#00HMOV R7,#00HSETB EASETB IT0SETB EX0L4: MOV R1,#00H ;R1存放十六进制转换成十进制后的低两位MOV R2,#00H ;R2存放十六进制转换成十进制后的高两位M
25、OV R3,#0FFH ;循环显示十进制数MOV R4,#00H ;存放A/D转换后的十六进制数MOV R5,#00H ;存放0.5相加后的数MOVX DPTR,A ;开始A/D转换LCALL DELAY ;调用延时大于A/D转换的时间MOVX A,DPTR ;取A/D转换后的十六进制数INC DPTR ;A/D转换芯片的地址加一PUSH DPL ;压入堆栈PUSH DPHDEC R0 ;4路转换的次数减一JZ SB2 ;判断是否是0VMOV R4,AL1:MOV A,R1 ;进行十六进制到十进制的调整ADD A,50H ;每次加19DA AMOV R1,AJC L2 ;如果溢出则跳转到L2M
26、OV A,R5 ;进行0.5V相加ADD A,54HDA AMOV R5,AJC L3 ;如果溢出则跳转到L3SB1:DJNZ R4,L1 ;判断十六进制数是否转换完成,如果没有则循环MOV A,R5SW AP AANL A,#0FHMOV B,R1ADD A,BDA AMOV R1,ASB2:LCALL DISPLCALL DJWDJNZ R3,SB2POP DPHPOP DPLMOV A,53HINC AMOV 53H,ACJNE R0,#00H,L4LJMP MAINL2: CLR CMOV A,R2ADD A,#01HDA AMOV R2,ALJMP SB1L3: CLR C ;0.5
27、V相加溢出后进位MOV A,R1ADD A,#01HDA AMOV R1,ALJMP SB1DISP:MOV A,R1 ;显示电压子程序SW AP AANL A,#0FHMOV DPTR,#TAB1MOVC A,A+DPTRCLR P3.0MOV P1,ALCALL DELAYSETB P3.0MOV A,R2ANL A,#0FHMOV DPTR,#TAB1MOVC A,A+DPTRCLR P3.1MOV P1,ALCALL DELAYSETB P3.1MOV A,R2SW AP AANL A,#0FHMOV DPTR,#TAB2MOVC A,A+DPTRCLR P3.4MOV P1,ALCALL DELAYSETB P3.4RETDJW:MOV A,53H ;显示第几路转换电压子程序MOV DPTR,#
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年广州市番禺区大龙街社区卫生服务中心公开招考编外人员备考题库完整答案详解
- 2026年中国人民财产保险股份有限公司兰州市分公司招聘备考题库带答案详解
- 餐饮安全培训教学课件
- 2026年中国电信股份有限公司黎川分公司备考题库及一套参考答案详解
- 2026年北京航空航天大学可靠性与系统工程学院聘用编软件开发智能算法工程师F岗招聘备考题库及参考答案详解
- 2026年广州检验检测认证集团有限公司海南分公司招聘备考题库及答案详解一套
- 基于大数据的文献趋势预测
- 2025年泰兴市市管国有企业公开招聘工作人员的备考题库及一套完整答案详解
- 2026年回民区海西路办事处社区卫生服务中心招聘备考题库及完整答案详解1套
- 2026年恒丰银行上海分行社会招聘备考题库及答案详解一套
- 斜弱视眼科学
- 电商平台需求规格说明书-通用版本
- GB/T 3372-2010拖拉机和农业、林业机械用轮辋系列
- 北京城市旅游故宫红色中国风PPT模板
- 经济学原理 第一章课件
- 安川伺服说明书
- 社会组织管理概论全套ppt课件(完整版)
- 酒精度检测原始记录
- 冷渣机检修工艺
- 建筑风水学培训
- SAP成本月结操作及标准成本估算
评论
0/150
提交评论