单片机课程设计-数字电压表(1).doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
目 录 1 引言 1 2设计原理及要求 2 2.1数字电压表的实现原理 2 2.2数字电压表的设计要求 2 3软件仿真电路设计 3 3.1设计思路 3 3.2仿真电路图 3 3.3设计过程 4 3.4 AT89C51的功能介绍 4 3.4.1简单概述 4 3.4.2主要功能特性 5 3.4.3 AT89C51的引脚介绍 5 3.5 ADC0808的引脚及功能介绍 7 3.5.1芯片概述 7 3.5.2 引脚简介 8 3.5.3 ADC0808的转换原理 8 3.6 74LS373芯片的引脚及功能 9 3.6.1芯片概述 9 3.6.2引脚介绍 9 3.7 LED数码管的控制显示 9 3.7.1 LED数码管的模型 9 3.7.2 LED数码管的接口简介 10 4系统软件程序的设计 10 4.1 主程序 10 4.2 A/D转换子程序 11 4.3 中断显示程序 12 5电压表的调试及性能分析 13 5.1 调试与测试 13 5.2 性能分析 14 6电路仿真图 14 7总结 15 参考文献 16 附录1 源程序 17 附录2 仿真原理电路 23 1 引言 随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一 块芯片上同时集成CPU、存储器、定时器/计数电路,这就很容易将计算机技术与测量控 制技术结合,组成智能化测量控制系统。 数字电压表(DigitalVoltmeter)简称DVM,它是采用数字化测量技术,把连续的模 拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。与此同时, 由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新 水平。本章重点介绍单片A/D 转换器以及由它们构成的基于单片机的数字电压表的工作原目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试 系统等智能化测量领域,示出强大的生命力理。 本设计AT89C51单片机的一种电压测量电路,该电路采用ADC0808本文介绍一种基于A/ D转换电路,测量范围直流 0~5V 的4路输入电压值,并在四位LED数码管上显示或单路选择显示。测量最小分辨率为0.01 9V,测量误差约为正负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数码管显示采用软件译码动态显示。通过按键选择可对8路循 环显示,也可单路显示,单路显示可通过按键选择显示的通道数。 2.2数字电压表的设计要求 可以测量0~5V范围内的3路直流电压值。在4位LED数码管上轮流显示各路电压值或单 路选择显示,其中3位LED数码管显示电压值,显示范围为0.00V~5.00V,1位LED数码管 显示路数,3路分别为0-2。要求测量的最小分辨率为0.02V。 3软件仿真电路设计 3.1设计思路 多路数字电压表应用系统硬件电路由单片机、A/D转换器、数码管显示电路和按键处 理电路组成,由于ADC0808在进行A/D转换时需要有CLK信号,本试验中ADC0808的CLK直接 由外部电源提供为500kHz的方波。由于ADC0808的参考电压VREF=VCC,所以转换之后的 数据要经过数据处理,在数码管上显示出电压值。实际显示的电压值(D/256*VREF) ADC0808采用逐次逼近法转换,把模拟电压转换成16进制的D,由于是对直流电压0~5V进 行采集,所以D对应的电压为V0 ,我们的目的就是要把V0显示在LED显示器上,因为单片 机不好进行小数点计算,所以有:V0=2*D扩大了100倍,扩大100倍后的结果高八位放寄 存器B,低八位放寄存器A,分寄存器B为0或不为0的情况进行存取数据,得到的结果个位 放入R0,十位放入R1,通过查表使之显示在LED显示器。 3.2仿真电路图 用Protues软件仿真设计的电路如图3-1所示。 图3-1 仿真电路 3.3设计过程 简易数字电压测量电路由A/D转换、数据处理及显示控制等组成。电路原理图见附录 2。A/D转换由集成电路0808完成。0808具有8路模拟输入端口,地址(23- 25)脚可决定对哪路模拟输入作A/D转换,22脚为地址锁存控制,当输入为高电平时,对 地址信号进行锁存。6脚为测试控制,当输入一 《单片机课程设计-数字电压表》是一个关于利用单片机实现数字电压表的项目,涉及到了微电子技术、单片机系统、A/D转换器、数字显示等多个知识点。 1. **数字电压表实现原理** 数字电压表(DVM)是将模拟电压信号转化为数字信号的仪表。它通过A/D转换器(ADC)将输入的模拟电压转换成数字值。在本设计中,使用的是8位A/D转换器ADC0808。当输入电压为5V时,其最大分辨率是0.0196V(5V/255)。ADC0808有8路输入,通过地址选择进行转换,可依次测量8路电压。 2. **设计要求** 设计的目标是建立一个能测量0-5V直流电压的数字电压表,使用四位LED数码管显示电压值。要求分辨率为0.02V,同时可以循环显示或选择显示3路电压值。 3. **软件仿真电路设计** 电路设计包括单片机AT89C51、ADC0808、数码管显示电路和按键处理电路。ADC0808的CLK信号由外部500kHz方波提供。转换后的数据经过处理后在数码管上显示实际电压值。数据处理过程中,电压值被扩大100倍以便于单片机处理,结果分别存储在寄存器B和A中,通过查表驱动LED数码管显示。 4. **关键部件介绍** - **AT89C51**:这是一款8位微控制器,具备CPU、内存、计时器等功能,其引脚包括电源、复位、I/O口等,广泛应用于嵌入式系统。 - **ADC0808**:8位模拟到数字转换器,有8路输入,通过地址线选择转换通道,转换原理基于逐次逼近法。 - **74LS373**:这是一个地址锁存器,用于锁存地址信号,确保在转换过程中地址稳定。 - **LED数码管**:用于显示电压值,通常采用动态显示方式,即通过快速切换显示各段来实现多位数码管同时显示的效果。 5. **程序设计** 程序包括主程序、A/D转换子程序和中断显示程序。主程序负责整体流程控制,A/D转换子程序处理ADC0808的转换过程,中断显示程序则根据需要更新数码管显示。 6. **调试与性能分析** 在实际操作中,需要进行硬件调试和软件测试,确保测量精度和显示稳定性。性能分析关注的是测量误差、响应时间和系统稳定性。 7. **总结** 该项目通过实践加深了对单片机系统、A/D转换和数字显示原理的理解,同时也锻炼了电路设计和程序编写能力。 这个设计展示了单片机在智能测量系统中的应用,为电子测量和控制领域提供了基础平台,具有很高的实用价值。
剩余24页未读,继续阅读
- m0_740806332023-07-04资源有很好的参考价值,总算找到了自己需要的资源啦。
- 粉丝: 193
- 资源: 3万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助