51单片机实现的数字电压表设计与ADC0809应用

3 下载量 29 浏览量 更新于2024-06-29 收藏 1.96MB PPT 举报
"51单片机数字电压表课程设计" 本次课程设计主要涉及的是使用51系列单片机AT89C52配合A/D转换器ADC0809构建一个能够测量0~5V直流电压的数字电压表。数字电压表(DVM)是一种运用数字化技术将模拟输入电压转换为数字形式并显示的仪表,其主要特点包括显示清晰、读数准确、精度高、分辨率高、测量范围广泛以及具有良好的抗干扰能力。 在设计要求方面,你需要实现的功能是通过4位数码管显示被测电压值。这要求你理解并掌握如何利用ADC0809进行A/D转换,以及如何与AT89C52单片机通信来控制显示。ADC0809是一个8位的逐次逼近型A/D转换器,具备8个模拟输入通道,通过3根地址线ADDA、ADDB和ADDC来选通其中一路。转换完成后,数据会通过数据输出端输出,并有转换结束信号EOC指示转换完成。 在ADC0809的时序图中,可以观察到A/D转换启动、转换结束、地址锁存允许和输出允许等关键信号的变化。这些信号的正确控制对于成功进行A/D转换至关重要。 在程序设计阶段,你需要编写C语言代码来控制ADC0809的转换过程,包括选择通道、设置定时器提供时钟信号、启动转换以及判断转换是否结束。程序设计流程通常包括初始化、选择通道、启动转换、等待转换结束、读取转换结果、数值转换以及数据显示等步骤。在代码示例中,可以看到涉及到的IO口控制,如EOC、START、OE和CLK等,这些都是与ADC0809交互的关键信号。 此外,还需要实现数值转换和显示功能,这可能涉及将A/D转换得到的二进制数据转换为十进制,然后根据ASCII码表将其转化为4位数码管可显示的字符。这通常通过查找显示字符对应的段码表来完成,例如在源代码中看到的`table`数组就包含了0-9和部分特殊字符的段码。 在实际制作过程中,除了软件编程,还需要考虑硬件连接和调试,例如确保单片机与A/D转换器的接口电路正确无误,以及数码管的驱动电路。最后,通过实际操作和测试,对系统进行全面的功能验证,以确保数字电压表的准确性和稳定性。 这个课程设计涵盖了单片机控制、A/D转换、数字显示等多个知识点,是对电气工程及其自动化专业学生实践技能的一次综合训练。
2023-02-27 上传
基于单片机的电子产品设计与制作实训报告书 数字电压表 院 部: 专 业: 姓 名: 学 号: 指导老师: 目 录 概述................... .......... .......... .......... .. 3 一.设计目的与功能要求. ......... .......... ......... .......... ......... .......... .......4 §1.1设计目的…………………………………………4 §1.2功能要求 4 二.总体设计 4 §2.1 系统设计………………………………………..4 §2.2设计方案……………………………………………5 §2.3总体设计框图……………………………………5 三.设计原理图 6 四.硬件电路设计 6 §4.1核心元器件介绍 6 §4.1.1芯片介绍 6 §4.1.2其它部分简介.....................................12 1.四位八段共阴极数码管...............................................12 2.模拟电压输入部分......................................13 五.软件设计……………………………………………13 §5.1 汇编流程图.....................................................14 §5.2汇编程序清单.....................................................15 §5.3 程序说明.......................................................15 六.调试仿真…...........................................................16 七.设计总结与致谢.............................18 <参考文献>.............................................19 概述 在电量的测量中,电压、电流和频率是最基本的三个被测量,其中电压量的测量最为 经常。而且随着电子技术的发展,更是经常需要测量高精度的电压,所以数字电压表就 成为一种必不可少的测量仪器。数字电压表简称DVM,它是采用数字化测量技术,把连续 的模拟量转换成不连续、离散的数字形式并加以显示的仪表。由于数字式仪器具有读数 准确方便、精度高、误差小、测量速度快等特而得到广泛应用[1]。 传统的指针式刻度电压表功能单一,进度低,容易引起视差和视觉疲劳,因而不能满 足数字化时代的需要。采用单片机的数字电压表,将连续的模拟量如直流电压转换成不 连续的离散的数字形式并加以显示,从而精度高、抗干扰能力强,可扩展性强、集成方 便,还可与PC实时通信。数字电压表是诸多数字化仪表的核心与基础[2]。以数字电压表 为核心,可以扩展成各种通用数字仪表、专用数字仪表及各种非电量的数字化仪表。目 前,由各种单片机和A/D转换器构成的数字电压表作全面深入的了解是很有必要的。 最近的几十年来,随着半导体技术、集成电路(IC)和微处理器技术的发展,数字电 路和数字化测量技术也有了巨大的进步,从而促使了数字电压表的快速发展,并不断出 现新的类型[4]。数字电压表从1952年问世以来,经历了不断改进的过程,从最早采用继 电器、电子管和形式发展到了现在的全固态化、集成化(IC化),另一方面,精度也从 0.01%-0.005%。 目前,数字电压表的内部核心部件是A/D转换器,转换的精度很大程度上影响着数字 电压表的准确度,因而,以后数字电压表的发展就着眼在高精度和低成本这两个方面[3 ]。 本文是以简易数字直流电压表的设计为研究内容,本系统主要包括三大模块:转换模 块、数据处理模块及显示模块。其中,A/D转换采用ADC0808对输入的模拟信号进行转换 ,控制核心AT89C51再对转换的结果进行运算处理,最后驱动输出装置LED显示数字电压 信号[11]。 1. 设计目的与功能要求 §1.1 设计目的 利用单片机及ADC0809核心元件制作3位数字电压表,更好地学习掌握ADC0809的工作 原理及A/D的转换编程方法。 §1.2功能要求 利用ADC0809设计实现数字电压表的测量值为0~5V,用电位器模拟ADC0809的输入电 压,用3位数码管显示,实时模拟数字电压表。 二.总体设计 §2.1系统设计 主要分为两部分:硬件电路及软件程序。硬件电路包括:单片机及外围电路,模拟 信号采集电路,A/D转换电路,数码管显示电路,各部分电路的衔接。软件的程序