基于单片机的数字电压表设计_第1页
基于单片机的数字电压表设计_第2页
基于单片机的数字电压表设计_第3页
基于单片机的数字电压表设计_第4页
基于单片机的数字电压表设计_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

电子信息工程课程设计报告 电子信息工程课程设计报告电子信息工程课程设计报告 题题 目 目 基于基于单片机单片机的数字电压表设计的数字电压表设计 系部名称系部名称 信息工程学院 专业名称专业名称 电子信息工程 班班 级级 2011 级电子信息工程 1 班 学号学号 20110441031047 学生姓名学生姓名 姚远 指导教师指导教师 陈肇基 电子信息工程课程设计报告 目 录 1 引言 1 2 设计原理及要求 2 2 1 数字电压表的实现原理 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 ADC0809 的工作时序 8 3 5 3 3 档位控制电路 8 3 6 LED 数码管的控制显示 9 3 6 1 LED 数码管的模型及结构分析 9 4 系统软件程序的设计 10 4 1 程序代码分析 11 5 电压表的调试及性能分析 12 5 1 调试与测试 12 电子信息工程课程设计报告 5 2 性能分析 12 电子信息工程课程设计报告 6 总结 12 参考文献 13 电子信息工程课程设计报告 0 1 引言 数字电压表是诸多数字化仪表的核心与基础 电压表的数字化是将连续的 模拟量如直流电压转换成不连续的离散的数字形式并加以显示 这有别于传统 的以指针加刻度盘进行读数的方法 避免了读数的视差和视觉疲劳 目前数字 万用表的内部核心部件是 A D 转换器 转换器的精度很大程度上影响着数字万 用表的准确度 本文 AID 转换器采用 ADC0809 对输入模拟信号进行转换 控 制核心 AT89c51N 对转换的结果进行运算和处理 最后驱动输出装置显示数字 电压信号 2 系统设计要求 基本要求 实现 8 路直流电压检测 测量电压范围 0 5V 显示指定电压通 道和电压值 用按键切换显示通道 发挥要求 测量电压范围为 0 25V 循环 显示 8 路电压 ADC0808 是 8 位的 A D 转换器 当输入电压为 5 00V 时 输出的数据值 为 255 0FFH 因此最大分辨率为 0 0196 5 255 ADC0808 具有 8 路模 拟量输入端口 通过 3 位地址输入端能从 8 路中选择一路进行转换 如每隔一 段时间依次轮流改变 3 位地址输入端的地址 就能依次对 8 路输入电压进行测 量 LED 数码管显示采用软件译码动态显示 通过按键选择可对 8 路循环显示 也可单路显示 单路显示可通过按键选择显示的通道数 3 系统硬件设计方案 3 1 设计思路 多路数字电压表应用系统硬件电路由单片机 A D 转换器 数码管显示电路和 滑动变阻器电路组成 由于 ADC0808 在进行 A D 转换时需要有 CLK 信号 本 试验中 ADC0808 的 CLK 直接由外部电源提供为 500kHz 的方波 由于 ADC0808 的参考电压 VREF VCC 所以转换之后的数据要经过数据处理 在数 码管上显示出电压值 实际显示的电压值 temp1 255 VREF ADC0808 采用逐 次逼近法转换 把模拟电压转换成 16 进制的 temp1 由于是对直流电压 0 5V 进行采集 所以 D 对应的电压为 V0 我们的目的就是要把 V0 显示在 LED 显 示器上 因为单片机不好进行小数点计算 所以有 V0 2 D 扩大了 100 倍 扩大 100 倍后的结果再次放入 temo1 中 通过查表使之显示在 LED 显示器 同理再动态显示小数点后的数 电子信息工程课程设计报告 1 3 2 仿真电路图 用 Protues 软件仿真设计的电路如图 3 1 所示 电子信息工程课程设计报告 2 图 3 1 仿真电路 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 5 端口用作单 路显示 循环显示转换按钮 P3 6 端口用作单路显示时选择通道 P0 端口作 A D 转换数据读入用 P2 端口用作 0808 的 A D 转换控制 3 4 AT89C51 的功能介绍 3 4 1 简单概述 AT89C51 是一种带 4K 字节闪存可编程可擦除只读存储 器 FPEROM Flash Programmable and Erasable Read Only Memory 的低电压 高性能 CMOS 8 位微处理器 俗称单片机 AT89C51 是一种带 2K 字节闪存可编程 可擦除只读存储器的单片机 单片机的可擦除只读存储器可以反复擦除 1000 次 该器件采用 ATMEL 高密度非易失存储器制造技术制造 与工业标 准的 MCS 51 指令集和输出管脚相兼容 由于将多功能8 位 CPU 和闪烁存 储器组合在单个芯片中 ATMEL 的 AT89C51 是一种高效微控制器 AT89C2051 是它的一种精简版本 AT89C51 单片机为很多嵌入式控制系统 提供了一种灵活性高且价廉的方案 外形及引脚排列如图3 2 所示 XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0 0 AD0 39 P0 1 AD1 38 P0 2 AD2 37 P0 3 AD3 36 P0 4 AD4 35 P0 5 AD5 34 P0 6 AD6 33 P0 7 AD7 32 P1 0 1 P1 1 2 P1 2 3 P1 3 4 P1 4 5 P1 5 6 P1 6 7 P1 7 8 P3 0 RXD 10 P3 1 TXD 11 P3 2 INT0 12 P3 3 INT1 13 P3 4 T0 14 P3 7 RD 17 P3 6 WR 16 P3 5 T1 15 P2 7 A15 28 P2 0 A8 21 P2 1 A9 22 P2 2 A10 23 P2 3 A11 24 P2 4 A12 25 P2 5 A13 26 P2 6 A14 27 U1 AT89C51 电子信息工程课程设计报告 3 图 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 片内振荡器和时钟电路 3 4 3 AT89C51 的引脚介绍 89C51 单片机多采用 40 只引脚的双列直插封装 DIP 方式 下面分别 简单介绍 1 电源引脚 电源引脚接入单片机的工作电源 Vcc 40 引脚 5V 电源 GND 20 引脚 接地 2 时钟引脚 XTAL1 19 引脚 片内振荡器反相放大器和时钟发生器电路的输入端 XTAL2 20 引脚 片内振荡器反相放大器的输出端 电子信息工程课程设计报告 4 图 3 3 电源接入方式 3 复位 RST 9 引脚 在振荡器运行时 有两个机器周期 24 个振荡周期 以上的高电平出 现在此引脚时 将使单片机复位 只要这个脚保持高电平 51 芯片便循环 复位 4 Vpp 31 引脚 EA 为外部程序存储器访问允许控制端 当它为高电平时 单片机读片内程EA 序存储器 在 PC 值超过 0FFFH 后将自动转向外部程序存储器 当它为低电平 时 只限定在外部程序存储器 地址为 0000H FFFFH Vpp 为该引脚的第二功 能 为编程电压输入端 5 ALE 30 引脚 PROG ALE 为低八位地址锁存允许信号 在系统扩展时 ALE 的负跳沿江 P0 口 发出的第八位地址锁存在外接的地址锁存器 然后再作为数据端口 为PROG 该引脚的第二功能 在对片外存储器编程时 此引脚为编程脉冲输入端 6 29 引脚 PSEN 片外程序存储器的读选通信号 在单片机读片外程序存储器时 此引脚输 出脉冲的负跳沿作为读片外程序存储器的选通信号 7 pin39 pin32 为 P0 0 P0 7 输入输出脚 称为 P0 口 P0 是一个 8 位漏极开路型双向 I O 口 内部不带上拉电阻 当外接上拉电 阻时 P0 口能以吸收电流的方式驱动八个 LSTTL 负载电路 通常在使用时外 接上拉电阻 用来驱动多个数码管 在访问外部程序和外部数据存储器时 P0 口是分时转换的地址 低 8 位 数据总线 不需要外接上拉电阻 8 Pin1 Pin8 为 P1 0 P1 7 输入输出脚 称为 P1 口 是一个带内部上拉电阻的 8 位双向 I 0 口 P1 口能驱动 4 个 LSTTL 负载 电子信息工程课程设计报告 5 9 Pin21 Pin28 为 P2 0 P2 7 输入输出脚 称为 P2 口 P2 口是一个带内部上拉电阻的 8 位双向 I O 口 P2 口能驱动 4 个 LSTTL 负载 端口置 1 时 内部上拉电阻将端口拉到高电平 作输入用 对内部 Flash 程序存储器编程时 接收高 8 位地址和控制信息 在访问外部程序和 16 位外部 数据存储器时 P2 口送出高 8 位地址 而在访问 8 位地址的外部数据存储器时 其引脚上的内容在此期间不会改变 10 Pin10 Pin17 为 P3 0 P3 7 输入输出脚 称为 P3 口 P3 口是一个带内部上拉电阻的 8 位双向 I O 口 P2 口能驱动 4 个 LSTTL 负载 这 8 个引脚还用于专门的第二功能 端口置 1 时 内部上拉电阻将端口 拉到高电平 作输入用 对内部 Flash 程序存储器编程时 接控制信息 3 5 ADC0808 的引脚及功能介绍 3 5 1 芯片概述 ADC 0809 是一种 8 位 ADC 采用 CMOS 工艺制成的 8 位八通道 A D 转换 器 片内有 8 路模拟采样开关 可控制 8 个模拟量中的一个进入转换器中 其 内部结构图和引脚图分别如图 3 1 1 1 和 3 1 1 2 所示 图 3 1 1 1 ADC0809 内部结构 电子信息工程课程设计报告 6 片内有 8 路开关 模拟开关的地址锁存与译码电路 比较器 256R 电阻 T 型网络 树 状电子开关 逐次逼近寄存器 SAR 三态输出锁存缓冲储存器 定时和控制电路等 ADC0809 通过引脚 IN0 IN1 IN7 可输入 8 路单边模拟输入电压 ALE 将 3 位地址线 ADDA ADDB ADDC 进行锁存 在 ADC0809 片内的 256R 电阻 T 型网络和电子开关树它相当一个 D A 转换器 它 把预测的 8 位二进制数转换为模拟的电压幅值 送入比较器中与实际电压相比较 ADC0809 主要引脚功能如下 IN0 IN7 通道 0 7 的模拟量输入 D0 7 数字量输出 ADDC ADDB ADDA 通道 0 7 选择 ALE 通道地址锁存 正脉冲有效 START 启动信号 正脉冲有效 上升沿所有寄存器清 0 下降沿开始转换 EOC 转换结束 高电平有效 OE 允许输出 高民平有效 3 3 5 5 2 2 ADC0809ADC0809 的工作时序的工作时序 ADC0809 的工作时序如图 2 1 2 1 所示 主要控制信号说明 START 是转换启 动信号 高电平有效 ALE 是 3 位通道选择地址 ADDC ADDB ADDA 信号的锁存 信号 当模拟量送至某一输入端 由 3 位地址信号选择 而地址信号由 ALE 锁存 EOC 是转换情况状态信号 当转换结束后 EOC 输出高电平 以示转换结束 在 EOC 的上升沿后 若使能输出信号 OE 为高电平 则控制打开三态缓冲器 把转换好的 8 位 数据结果输至数据总线 至此 ADC0809 的一次转换结束 图 3 1 2 1 ADC0809 的工作时序图 3 3 5 5 3 3 档位控制电路档位控制电路 电子信息工程课程设计报告 7 为了增加 DVM 的测量范围 设计了档位选择电路 其主要原理是采用电阻分压 原理 上 ADC0809 有八路数据输入端口 也就是说可以分为八档 为了简化设计 只分了两 档 1 档 10 档 当输入电压范围为 0 5V 时 IN0 导通 此时 UI U26 而当输入电压范围为 5 50V 时 FPGA 判断选择档位 IN1 导通 此时 UI U27 即 UI 272625 2725 RRR RR 26 10 1 U 由于 ADC0809 数字量输出为 8 位 数字量化范围为 0 255 当输入电压为满量 程 5V 时 转换电路对输入电压的分辨能力为 mV V 6 19 255 5 电子信息工程课程设计报告 8 3 6 LED 数码管的控制显示 3 6 1 LED 数码管的模型及结构分析 LED 的段码端口 A G 分别接至 AT89C51 的 P1 0 P1 7 口 位选端 1 4 分别接至 P2 3 P2 2 P2 1 P2 0 LED 是发光二极管显示器的缩写 LED 由于结构简单 价格便宜 与单片 机接口方便等优点而得到广泛应用 LED 显示器是由若干个发光二极管组成显 示字段的显示器件 6 在单片机中使用最多的是七段数码显示器 LED 七段数 码显示器由 8 个发光二极管组成显示字段 其中 7 个长条形的发光二极管排列 成 日 字形 另一个圆点形的发光二极管在显示器的右下角作为显示小数点 用 其通过不同的组合可用来显示各种数字 LED 引脚排列如下图所示 LED 引脚排列 3 4 2 LED 显示器的选择 在应用系统中 设计要求不同 使用的 LED 显示器的位数也不同 因此就 生产了位数 尺寸 型号不同的 LED 显示器供选择 在本设计中 选择 4 位一 体的数码型 LED 显示器 简称 4 LED 本系统中前一位显示电压的整数位 即个位 后两位示电压的小数位 4 LED 显示器引脚如图 9 所示 是一个共阴极接法的 4 位 LED 数码显示管 其中 a b c e f g 为 4 位 LED 各段的公共输出端 1 2 3 4 分别是每 一位的位数选端 dp 是小数点引出端 4 位一体 LED 数码显示管的内部结构是 由 4 个单独的LED 组成 每 个 LED 的段输出引脚在内部都 电子信息工程课程设计报告 9 并联后 引出到器件的外部 4 位 LED 引脚 对于这种结构的 LED 显示器 它的体积和结构都符合设计要求 由于 4 位 LED 阴极的各段已经在内部连接在一起 所以必须使用动态扫描方式 将所 有数码管的段选线并联在一起 用一个 I O 接口控制 显示 3 4 3 LED 译码 方式 译码方式是指由显示字符转换得到对应的字段码的方式 对于 LED 数码管 显示器 通常的译码方式有硬件译码和软件译码方式两种 硬件译码是指利用专门的硬件电路来实现显示字符码的转换 软件译码就是编写软件译码程序 通过译码程序来得到要显示的字符的字 段码 译码程序通常为查表程序 3 本设计系统中为了简化硬件线路设计 LED 译码采用软件编程来实现 由 于本设计采用的是共阴极 LED 其对应的字符和字段码如下表 3 3 所示 4 系统软件程序的设计 多路数字电压表系统软件程序主要有主程序 A D 转换子程序和中断显示 程序组成 4 1 程序代码分析 include define uint unsigned int define uchar unsigned char 电子信息工程课程设计报告 10 uchar code table 0 x3f 0X06 0 x5b 0 x4f 0 x66 0 x6d 0 x7d 7 0 x7f 0 x6f 0 x77 sbit START P3 0 sbit EOC P3 1 sbit OE P3 2 sbit dot P1 7 void delay uint m while m void main uint temp1 START 0 OE 0 START 1 START 0 while 1 if EOC 1 OE 1 temp1 P0 temp1 temp1 1 0 255 500 OE 0 P2 0 xfe P1 table temp1 10 delay 500 P2 0 xfd P1 table temp1 10 10 delay 500 P2 0 xfb P1 table temp1 100 10 电子信息工程课程设计报告 11 dot 1 delay 500 START 1 START 0 5 电压表的调试及性能分析 5 1 调试与测试 本设计应用 Proteus6 及 KEIL51 软件 首先根据自己设计的电路图用 Proteus6 软件画出电路模型 关于这个软件的使用通过查一些资料和自己的摸 索学习 然后我们用 KEIL51 软件对所编写的程序进行编译 链接 如果没有 错误和警告便可生成程序的 hex 文件 将此文件加到电路图上使软硬件结合运 行 最后进行端口电压的对比测试 测试的第一路对比见图 4 1 中标准电压值 采用 Proteus 软件中的模拟电压表测得 5 2 性能分析 由于单片机为 8 位处理器 当输入电压为 5 00V 时 输出数据值为 255 FFH 因此单片机最大的数值分辨率为 0 0196V 5 255 这就决定了 该电压表的最大分辨率 精度 只能达到 0 0196V 测试时电压数值的变化一 般以 0 02V 的电压幅度变化 如要获得更高的精度要求 应采用 12 位 13 位 的 A D 转换器 简易数字电压表测得的值基本上均比标准值偏大 0 01 0 02V 这可以通过 校正 0808

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论