基于AT89S52的数字电压表设计毕业论文.doc

上传人:h**** 文档编号:130159 上传时间:2018-07-09 格式:DOC 页数:76 大小:547KB
下载 相关 举报
基于AT89S52的数字电压表设计毕业论文.doc_第1页
第1页 / 共76页
基于AT89S52的数字电压表设计毕业论文.doc_第2页
第2页 / 共76页
基于AT89S52的数字电压表设计毕业论文.doc_第3页
第3页 / 共76页
基于AT89S52的数字电压表设计毕业论文.doc_第4页
第4页 / 共76页
基于AT89S52的数字电压表设计毕业论文.doc_第5页
第5页 / 共76页
点击查看更多>>
资源描述

1、单片机系统开发与应用工程实习 报告 选题名称 : 基于 AT89S52 的数字电压表的设计 系(院) : 计算机工程学院 专 业 : 嵌入式系统设计 班 级 : 姓 名 : 学 号 : 指导教师 : 学年学期 : 2009 2010 学年 第 2 学期 2010 年 5 月 30 日 摘要 : 在测量仪器中,电压表是必 须的,而且电压表的好坏直接影响到测量精度。具有一个精度高、转换速度快、性能稳定的电压表才能符合测量的要求。 而且数字电压表是采用数字化测量技术,把连续的模拟电压量转换成不连续、离散的数字化形式并加以显示的仪器。为此 本项目介绍了一种基于 AT89S52 单片机的数字电压表的设计

2、 , 目的是在使用尽量少的元器件的情况下,用单片机 AT89S52 和 ADC0809 高精度 A/D 转换芯片设计一个 4 位数码管显示的数字电压表,并 能够测量 0 5V 之间的直流电压值, 其测量最小分辨率为 0.02V。本设计主要分为两部分:硬件电路及软件程序。而 硬件电路又大体可分为 A/D 转换电路、LED 显示电路,各部分电路的设计及原理将会在硬件电路设计部分详细介绍;程序的设计使用 C语言 编程,详细的设计算法将会在程序设计部分详细介绍。 关键词 : AT89S52; ADC0809; A/D 转换; LED 数码管显示 目录 1. 关于单片机 AT89S52 与 ADC080

3、9 芯片 . 1 1.1 关于 AT89S52 . 1 1.2 关于 ADC0809 . 2 2 硬件电路 . 3 2.1 程序原理图 . 3 2.2 焊接顺序 : . 4 2.3A/D 转换电路 . 4 2.4 LED 显示电路 . 5 3 软件程序的设计 . 6 3.1 主程序流程图 . 6 3.2A/D 转换模块: . 8 3.3 数码管显示模块 . 10 4 实验结果 .11 单片机系统开发与应用工程实习 计报告 1 1. 关于单片机 AT89S52 与 ADC0809 芯片 1.1 关于 AT89S52 At89s52 是一种低功耗、高性能 CMOS8 位微控制器,具有 8K 在系统

4、可编程Flash 存储器。片上 Flash 允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的 8 位 CPU 和在系统 可编程 Flash,使得 AT89S52 为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 AT89S52 具有以下标准功能: 8k 字节 Flash, 256 字节 RAM, 32 位 I/O 口线,看门狗定时器, 2 个数据指针,三个 16 位定时器 /计数器,一个 6 向量 2 级中断结构,全双工串行口,片内晶振及时钟电路。另外, AT89S52 可降至 0Hz 静态逻辑操作,支持 2 种软件可选择节电模式。空闲模式下, CPU 停止工作,

5、允许 RAM、定时器 /计数器、串口、中断继续工作 。掉电保护方式下, RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。 图 1-1 AT89S52 线路引脚图 ( 由于 AT89S52 的引脚较多,介绍起来比较繁琐,在此略过 ) 单片机系统开发与应用工程实习 计报告 2 1.2 关于 ADC0809 A/D 转换器是模拟量输入通道中的一个环节,单片机通过 A/D 转换器把输入模拟量变成数字量再处理。 ADC0809 是采样分辨率为 8位的、以逐次逼近原理进行模 数转换的器件。其内部有一个 8通道多路开关,它可以根据地址码锁存译码后的信号,只选通 8路模拟输

6、入信号中的一个进行 A/D 转换。 图 1-2 ADC0809 引脚图 引脚功能如下: ADC0809 芯片有 28 条引脚,采用双列直插式封装,如图 13 23 所示。下面说明各引脚功能。 IN0 IN7: 8路模拟量输入端。 2-1 2-8: 8 位数字量输出端。 ADDA、 ADDB、 ADDC: 3 位地址输入线,用于选通 8 路模拟输入中的一路 ALE:地址锁存允许信号,输入,高电平有效。 START: A D 转换启动脉冲输入端,输入一个正脉冲(至少 100ns 宽)使其启动(脉冲上升沿使 0809 复位,下降沿启动 A/D 转换)。 单片机系统开发与应用工程实习 计报告 3 EO

7、C: A D 转换结束信号,输出,当 A D 转换结束时,此端输出一个高电平(转换期间一直为低电平)。 OE:数据输出允许信号,输入,高电平有效。当 A D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。 CLK:时钟脉冲输入端。要求时钟频率不高于 640KHZ。 REF( +)、 REF( -):基准电压。 Vcc:电源,单一 5V。 GND:地。 2 硬件电路 2.1 程序原理图 图 2-1 关于 AT89S52 的数字电压表原理图 原理图说明:原理图主要由 AT89S52 芯片, ADC0809 芯片, LED 数码管组成。 AT89S52芯片的 RST 与复位电路相连,

8、 XTAL1 与 XTAL2 连接着晶振电路。 P0 口与 ADC0809 直接相连接受来自 ADC0809 传输而来的数据, P2口作为 4 位动态数码显示管的位显示控制, P1口则是动态数码显示管的段显示控制并连接着 74LS07 作为驱动, P3 则是提供给 ADC0809 芯片的 CLK 信号并控制其开始。相对的 ADC0809 芯片的 IN0 接了滑动电阻器以为实验产生不等的电压。 ADD AC 接地,并确保基准电压。 单片机系统开发与应用工程实习 计报告 4 2.2 焊接顺序: a)把 “ 单片 机系统 ” 区域中的 P1.0 P1.7 与 “ 动态数码显示 ” 区域中的 ABCD

9、EFGH 端口用 8芯排线连接。 b) 把 “ 单片机系统 ” 区域 中 的 P2.0 P2.7 与 “ 动态 数 码 显 示 ” 区域中的S1S2S3S4S5S6S7S8 端口用 8 芯排线连接。 c)把 “ 单片机系统 ” 区域中的 P3.0 与 “ 模数转换模块 ” 区域中的 ST 端子用导线相连接。 d 把 “ 单片机系统 ” 区域中的 P3.1 与 “ 模数转换模块 ” 区域中的 OE 端子用导线相连接。 e)把 “ 单片机系统 ” 区域中的 P3.2 与 “ 模数转换模块 ” 区域中的 EOC 端子用导线相连接。 f)把 “ 单片机系统 ” 区域中的 P3.3 与 “ 模数转换模块

10、 ” 区域中的 CLK 端子用导线相连接。 g)把 “ 模数转换模块 ” 区域中的 A2A1A0 端子用导线连接到 “ 电源模块 ” 区域中的 GND端子上。 h)把 “ 模数转换模块 ” 区域中的 IN0 端子用导线连接到 “ 三路可调电压模块 ” 区域中的 VR1 端子上。 i)把 “ 单片机系统 ” 区域中的 P0.0 P0.7 用 8 芯排线连接到 “ 模数转换模块 ” 区域中的 D0D1D2D3D4D5D6D7 端 2.3A/D 转换电路 A/D 转换器是模拟量输入通道中的一个环节,单片机通过 A/D 转换器把输入模拟量变成数字量再处理。 具体 电路 图如下 : 单片机系统开发与应用

11、工程实习 计报告 5 图 2-2 实现 A/D 转换电路图 ADC0809 实现 A/D 转换的原理如下: 其工作原理如下: 首先输入 3 位地址,并使 ALE=1,将地址存入地址锁存器中。此地址经译码选通 8路模拟输入之一到比较器。 START 上升沿将逐次逼近寄存器复位。下降沿启动 A D 转换,之后 EOC 输出信号变低,指示转换正在进行。直到 A D转换完成, EOC变为高电平,指示 A D 转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当 OE 输入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。 2.4 LED 显示电路 设计中采 用的是 4 段 LED 数

12、码管来显示电压值。 LED 具有耗电低、亮度高、视角大、线路简单、耐震及寿命长等优点,它由 4个发光二极管组成,其中 3 个按 8 字型排列,另一个发光二极管为圆点形状,位于右下角,常用于显示小数点。把 4 个发光二极管连在一起,公共端接高电平,叫共阳极接法,相反,公共端接低电平的叫共阴极接法,我们采用共阴极接法。当发光二极管导通时,相应的一段笔画或点就发亮,从而形成不同的发光字符。其 8 段分别命名为 dp g f e d c b a。例如,要显示 “0” ,则 dp g f e d c b a分别为: 00111111B;若要显示多个数字,只要让若干个数码管的位码循环为高电平就可以了。 单

13、片机系统开发与应用工程实习 计报告 6 图 2-3 LED 数码管显示电路图 根据设计要求,显示电路需要至少 4 位 LED 数码管来显示电压值,我们再多加一位用来显示电压单位 “V” ,则有 7 位 LED 循环显示。利用单片机的 I/O 口驱动 LED 数码管的亮灭,设计中由 P0 口驱动 LED 的段码显示,即显示字符,由 P2 口选择 LED 位码,即选择点亮哪位 LED 来显示。 3 软件程序 的设计 3.1 主程序流程图 单片机系统开发与应用工程实习 计报告 7 图 3-1 主程序流程图 程序初始化 : #include unsigned char code dispbitcode

14、=0xfe,0xfd,0xfb,0xf7, 0xef,0xdf,0xbf,0x7f; unsigned char code dispcode=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f,0x00; unsigned char dispbuf8=10,10,10,10,0,0,0,0; unsigned char dispcount; unsigned char getdata; unsigned int temp; unsigned char i; sbit ST=P30; sbit OE=P31; sbit EOC=P32; sbit CLK=P33; void main(void) ST=0; OE=0; ET0=1;/允许定时器 0 ET1=1;/允许定时器 1 EA=1;/中断允许总控制位,中断总允许 TMOD=0x12; TH0=216; TL0=216; TH1=(65536-4000)/256; /定时时间计算公式: TL1=(65536-4000)%256;/一共 4 个 8 位定时器 TR1=1;/启动定时器 1

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。