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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

数字电压表.docx

1、数字电压表目录1、引言 12、总体设计方案 22.1设路计思 22.2 系统结构框图 32.3工作原理 33、各单元硬件设计说明及计算方法 43.1 AT89C51单片机与ADC0808 43.2 时钟与复位电路 93.3 LED显示电路设计与器件选择 103.4 A/D转换电路 114、软件设计与说明 134.1系统软件设计(流程图) 134.2 初始化子程序 135、调试与使用说明 155.1 调试 155.1 使用说明 156、总结与体会 167、 参考文献 17附录A 系统原理图 18附录B 程序清单 191、引言 单片机是一种集成电路芯片,随着计算机在社会领域的渗透, 单片机的应用正

2、在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。由于单片机具有简单实用、高可靠性、良好的性能价格比以及体积小等优点,已经在各个技术领域得到了迅猛发展。数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展

3、性强、集成方便,还可与PC进行实时通信。目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。本设计重点介绍单片A/D 转换器以及由它们构成的基于单片机的数字电压表的工作原理。2、总体设计方案2.1设路计思按系统功能要求,决定控制系统采用AT89S51单片机,A/D转换采用ADC0809.系统除能确保实现要求的功能外,还可以方便地进行其功能的扩展。本文采用AT89S51作为核心元件,AT89S51是一个低功耗,高性

4、能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。采用NS公司的分辨率为8位的逐次比较型的高精度的模数转换器ADC0809,ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式A/D转换器,可以

5、和单片机直接接口。把采取的电压进行处理然后通过单片机的P口送到单片机然后经过程序处理,由LED电路把电压数值显示出来。单片机加上外围的串口显示电路由74LS245和数码管三极管组成。器件采用ATMEL公司的高密度,非易失性存储技术生产,兼容标准8051指令系统及引脚。它集Flash程序存储器,既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中,ATMEL公司的功能强大,低价AT89s51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。 2.2 系统结构框图 系统结构框图2.3工作原理 系统采用12M晶振产生脉冲做AT89C51的内部时钟信号,通过软件设

6、置单片机的内部定时器T0产生中断信号。利用中断设置单片机的P2.4口取反产生脉冲做AT89C51的时钟信号。通过按键选择八路通道中的一路,将该路电压送入ADC0808相应通道,单片机软件设置ADC0808开始A/D转换,转换结束ADC0808的EOC端口产生高电平,同时将ADC0808的EO端口置为高电平,单片机将转换后结果存到片内RAM。系统调出显示子程序,将保存结果转化为0.00-5.00V分别保存在片内RAM;系统调出显示子程序,将转化后数据查表,输出到LED显示电路,将相应电压显示出来,程序进入下一个循环。3、 各单元硬件设计说明及计算方法根据设计要求与思路,确定该系统的设计方案。硬件

7、电路由5个部分组成,即单片机时钟电路与复位电路、4位显示器电路、A/D转换电路和键盘及测量电路。3.1 AT89C51单片机与ADC0808 系统设计使用MCS-51单片机8051芯片。8051芯片由以下部分组成:中央处理器、256单元的内部数据存储器、4KB的程序存储器、定时器/计数器、四个八位的I/O口,中断控制系统及时钟电路。图4.1所示为采用列直插式封装的8051AH芯片管脚图。 主要特性: 与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环 数据保留时间:10年 全静态工作:0Hz-24MHz 三级程序存储器锁定 1288位内部RAM 32可编程I/O线 两个1

8、6位定时器/计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路管脚说明: VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时

9、,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口

10、管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,如下表所示: 口管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3口同时为闪烁编程和编

11、程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无

12、效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器

13、可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。ADC0808简介1、主要技术指标和特性(1)分辨率: 8位。(2)总的不可调误差: ADC0808为 LSB,ADC 0809为1LSB。(3)转换时间: 取决于芯片时钟频率,如CLK=500kHz时,TCONV=128s。(4)单一电源: +5V。(5)模拟输入电压范围: 单极性05V;双极性5V,10V(需外加一定电路)。(6)具有可控三态输出缓存器。(7)启动转换控制为脉冲式(

14、正脉冲),上升沿使所有内部寄存器清零,下降沿使A/D转换开始。(8)使用时不需进行零点和满刻度调节。 芯片图如下引脚功能:(1)IN0IN78路模拟输入,通过3根地址译码线ADDA、ADDB、ADDC来选通一路。(2)D7D0A/D转换后的数据输出端,为三态可控输出,故可直接和微处理器数据线连接。8位排列顺序是D7为最高位,D0为最低位。(3)ADDA、ADDB、ADDC模拟通道选择地址信号,ADDA为低位,ADDC为高位。地址信号与选中通道对应关系如表11.3所示。(4)VR(+)、VR(-)正、负参考电压输入端,用于提供片内DAC电阻网络的基准电压。在单极性输入时,VR(+)=5V,VR(

15、-)=0V;双极性输入时,VR(+)、VR(-)分别接正、负极性的参考电压。表6-1-1 地址信号与选中通道的关系地 址选中通道ADDCADDBADDA000011110011001101010101IN0IN1IN2IN3IN4IN5IN6IN7(5)ALE地址锁存允许信号,高电平有效。当此信号有效时,A、B、C三位地址信号被锁存,译码选通对应模拟通道。在使用时,该信号常和START信号连在一起,以便同时锁存通道地址和启动A/D转换。(6)STARTA/D转换启动信号,正脉冲有效。加于该端的脉冲的上升沿使逐次逼近寄存器清零,下降沿开始A/D转换。如正在进行转换时又接到新的启动脉冲,则原来的转

16、换进程被中止,重新从头开始转换。(7)EOC转换结束信号,高电平有效。该信号在A/D转换过程中为低电平,其余时间为高电平。该信号可作为被CPU查询的状态信号,也可作为对CPU的中断请求信号。在需要对某个模拟量不断采样、转换的情况下,EOC也可作为启动信号反馈接到START端,但在刚加电时需由外电路第一次启动。(8)OE输出允许信号,高电平有效。当微处理器送出该信号时,ADC0808/0809的输出三态门被打开,使转换结果通过数据总线被读走。在中断工作方式下,该信号往往是CPU发出的中断请求响应信号。3.2 时钟与复位电路 时钟电路是计算机最核心的部分,它控制着计算机的工作MCS-51单片机允许

17、的时钟频率典型值为12MHZ。80C51单片机内部有一个高增益反相放大器,用于构成振荡器。反相放大器的输入端为XTAL1,输出端为XTAL2,分别是80C51的19脚和18脚。在XTAL1和XTAL2两端跨接石英晶体及两个电容就可以构成稳定的自激振荡器。石英晶振起振后要能在XTAL2线上输出一个3V左右的正弦波,使MCS-51片内的OCS电路按石英晶振相同频率自激震荡。通常,OCS的输出时钟频率fosc为0.5MHZ16MHZ,典型值为12MHZ电容器C1和C2通常取30pF左右,对震荡频率有微调作用。调节它们可以达到微调震荡周期fosc的目的。单片机的RST管脚为主机提供一个外部复位信号输入

18、端口。复位信号是高电平有效,高电平有效的持续时间应为2个机器周期以上。单片机的复位方式有上电自动复位和手工复位两种。图4-2所示是51系列单片机常用的上电复位电路,只要Vcc上升时间不超过1ms,它们都能很好地工作。复位以后,单片机内各部件恢复到初始状态。电阻电容器件的参考值:R1=200,R2=1K,C3=22F。RET按键可以选择专门的复位按键,也可以选择轻触开关。 电路图如下3.3 LED显示电路设计与器件选择单片机应用系统中,通常都需要进行人机对话。这包括人对应用系统的状态干预与数据输入,以及应用系统向人们显示运行状态与运行结果。显示器、键盘电路就是用来完成人机对话活动的人机通道。LE

19、D显示器的驱动是一个非常重要的问题,此设计不采用段驱动芯片和位驱动芯片,直接由单片机的P1,P2口驱动,实验证明可行。在应用系统中,设计要求不同,使用的LED显示器的位数也不同,因此生产厂家就生产了多种位数、尺寸、型号不同的LED显示器。在我们的设计中,选择4位一体的共阴极时钟型LED显示器,采用动态显示方式。图4-2为本系统LED显示电路,采用P1口作为LED的段码输出信号,P2口的低四位作为LED位码的输出控制信号。 3.4 A/D转换电路ADC 0808 采用逐次比较的方法完成A/D转换,由单一的+5V电源供电。片内带有锁存功能的8路选1的模拟开关,由A、B、C的编码来决定所选的通道。A

20、DC0809完成一次转换需100s左右,它具有输出TTL三态锁存缓冲器,可直接连接到AT89C51的数据总线上。通过适当的外接电路,ADC0808可对05V的模拟信号进行转换。74LS373: 是带有清除端的8D触发器,只有在清除端保持高电平时,才具有锁存功能,锁存控制端为11脚CLK,采用上升沿锁存。1D8D为数据输入端,1Q8Q为数据输出端,正脉冲触发,低电平清除,常用做8位地址锁存器。用单片机的P2.4对应ADC0808的ALE端,P2.5对应EOC端,P2.6对应OE端,P3.3对应CLK端,用软件设定给定的值。ADDA、ADDB和ADDC连接74LS373的输出端,由74LS373输

21、出值选择通道。IN0IN7分别8个被测电位器,根据选择的通道,ADC0808选择测量相应通道的电位。电路图如下图4、软件设计与说明4.1系统软件设计(流程图)图5.1为程序软件设计流程图 其中(a)为主程序流程图,(b)为A/D转换子程序流程图。 其中A/D转换子程序是将0808转化后的数字量,需通过转化子程序转化成工程量并通过查表送到P1口送给LED显示。4.2 初始化子程序对所用到的存储单元和寄存器单元进行初始化,同时对要使用到的定时器进行清零并赋初始值。初始化子程序:INIT:MOV WIN1,#00H;存储单元清零 MOV WIN2,#00H MOV WIN3,#00H MOV WIN

22、4,#00HCLR FLAGMOV TMOD,#12H;定时器初始化MOV TH0,#245MOV TL0,#245MOV TH1,#9EHMOV TL1,#58HMOV R1,#80MOV R0,#0MOV IE,#8AH SETB TR05、调试与使用说明5.1 调试 通过proteus 7.5仿真,通过滑动变阻器可以改变电阻值,进而电压表的示数也将改变。 当滑动变阻器的阻值为最大值时,LED显示器显示的示数为5V,理论值=5V。当滑动变阻器的阻值为0时,LED显示器显示的示数为0V, =0V。由此两个极值已经满足,表明测量精度相当之高。在调试的过程中,开机即为循环显示阶段,可循环观察8路

23、电压的测量值,我们还可以采用单通道模式显示,即按下模式切换键,切换到单通道模式下,通过改变滑动变阻器的电阻值来获得不同的测量结果。再次按下模式切换键,系统就自动转到了循环显示的模式下工作。5.1 使用说明系统采用并行A/D转换器(ADC0808)对外部多路模拟电压进行测量。通过键盘对转换通道进行选择:1.循环多路显示(开机即为此种模式);2.通过键盘或其它方式进行选择显示(如按下键盘上的0号键,则显示0通道的电压.),此时要先按下模式转换开关,等到要恢复到循环显示模式时还需要再按下模式转换开关。 6、总结与体会 为期两周的课程设计马上就结束了,其中充满很多的艰辛,但是在老师认真的指导下,经过和

24、同学一起讨论,最终问题都得到了解决,得到了比较满意的结果。 这次课程设计是设计数字电压表,主要是把模拟量通过ADC0808转换为数字量在经过LED显示出来。通过这次课程设计是我对AT89C51、ADC0808和数码管的许多基本知识和接线方法有了深刻的理解。在设计程序和调试过程中都遇到了一些麻烦,特别是是在调试过程中,总是调试不出想要的结果,后来请教老师和同学一起探讨虽然结果仍不是很满意,但是至少我们都努力了。而且我们从调试的过程中也学到了很多解决问题和分析问题的方法。并且大致了解了proteus内部的调试,真是收益颇多。 经过这次课程设计,我深深地感受到了理论知识与实际操作之间的距离,理论知识

25、是基础,实际操作是实践。在设计过程中会遇到种种困难,自己必须先做认真的分析与思考,找出问题出现的根本原因,然后针对问题去寻求解决的方法,根据自己所学的知识,如过自己现有的知识不能解决,就去查阅相关资料,实在不能解决就去请教老师或是和同学一起讨论。这也很好的知道了我今后的学习,在学习理论知识的同时我们必须注重实践。 短短的两周单片机课程设计结束了,可是似乎还沉醉在设计过程中一次次难题解决后的兴奋中,经过这次课程设计激起了我对单片机学习进一步的兴趣。最后非常感谢林国汉老师在本次课程设计中给我们的知道和帮助。 7、 参考文献1、单片机原理及应用李建忠 编 西安电子科技大学出版社2、单片微型计算机原理

26、与接口技术 高峰 编 电子工业出版社3、单片机应用新技术教程邹逢兴 编 高等教育出版社4、16位微型计算机原理接口及其应用 朱宇光 编 电子工业出版社5、微型计算机原理与接口技术 吴秀清 编 中国科学技术出版社6、微型计算机接口技术 邓亚平 编 清华大学出版社7、单片机原理及及应用 王迎旭 编 机械工业出版社附录A 系统原理图附录B 程序清单ORG 0000HLJMP STARTORG 0013HLJMP INT1SORG 0030HSTART: CLR A MOV R0,#70H MOV R2,#0DHLOOPMEM: MOV R0,A INC R0 DJNZ R2 ,LOOPMEM MOV

27、 A,#0FFH MOV P0,A MOV P1,A MOV P3,A MOV P2,#7FH MAIN: LCALL TEST LCALL DISPLAY AJMP MAIN NOP NOP NOP LJMP STARTTEST: MOV SP,#60H MOV R0,#70H MOV R7,#08 SETB IT1 SETB EX1 SETB EA MOV DPTR,#7FF0HLOOP: MOVX DPTR,A WAIT: SJMP WAIT DJNZ R7,LOOP MOV A,#0FFH MOV P0,A MOV P1,A MOV P3,A MOV P2,#7FH RETINT1S:

28、 MOV A,DPTR MOV R0,A INC R0 INC DPTR MOV A,R0 SUBB A,#70H MOV 7BH,A RETI DISPLAY: MOV A,7BH SUBB A,#01H MOV 7BH,A ADD A,#70H MOV R0,A DISLOOP11:LCALL TUNBCD MOV R2,#0FFH DISLOOP22:LCALL DISP DJNZ R2, DISLOOP22 RET TUNBCD: MOV A,R0 MOV B,#51 DIV AB MOV 7AH,A MOV A,B CLR F0 SUBB A,#1AH MOV A,#1AH MOV

29、F0,C MOV A,#10H MUL AB MOV B,#51 DIV AB JB F0,LOOP2 ADD A,#5 LOOP2: MOV 79H,A MOV A,B CLR F0 SUBB A,#1AH MOV A,#1AH MOV F0,C MOV A,#10H MUL AB MOV B,#51 DIV AB JB F0,LOOP3 ADD A,#5 LOOP3:MOV 78H,A RET DISP: MOV R1,78H MOV R5,#0FEH PLAY: MOV P1,#0FFH MOV A,R5 ANL P2,A MOV A,R1 MOV DPTR,#TAB MOVC A,A+DPTR MOV P1,A JB P2.2,PLAY1 CLR P1.7 PLAY1:LCALL DL1MS INC R1 MOV A,P2 JNB ACC.3,ENDOUT RL A MOV R5,A MOV P2,#7FH AJMP PLAY ENDOUT: MOV P2,#7FH MOV P1,#0FFH RET TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH DL1MS: MOV R4,#0FFH DL3: DJNZ R4,DL3 MOV R4,#0FFH DL4: DJNZ R4,DL4 RET

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

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