版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、东北大学秦皇岛分校(fn xio)计算机与通信(tng xn)工程学院单片机综合(zngh)课程设计数字电压表设计专业名称物工程班级学号学生姓名指导教师设计时间2014.1.42014.1.11课程设计任务书专业(zhuny):物联网(lin wn)工程 学号:2125101 学生(xu sheng)姓名(签名): 设计题目:数字电压表设计一、设计实验条件816实验室二、设计任务及要求实验任务:采用51系列单片机和ADC0808设计一个数字电压表,输入为05V线性模拟信号,输出通过LED显示,要求显示两位小数。实验要求:采用中断方式,对2路05V的模拟电压进行循环采集;采集的数据送LED显示,
2、并存入内存;超过界限时指示灯闪烁。三、设计报告1前言数字电压表的基本工作原理是利用A/D转换电路将待测的模拟信号转换成数字信号,通过相应换算后将测试结果以数字形式显示出来的一种电压表。较之于一般的模拟电压表,数字电压表具有精度高、测量准确、读数直观、使用方便等优点。电压表的数字化测量,关键在于如何把随时连续变化的模拟量转化成数字量,完成这种转换的电路叫模数转换器(A/D)。数字电压表的核心部件就是A/D转换器,由于各种不同的A/D转换原理构成了各种不同类型的DVM。一般说来,A/D转换的方式可分为两类:积分式和逐次逼近式。本设计(shj)以8051单片机为核心,以逐次(zh c)比较型A/D
3、转换器ADC0808、数码(shm)管显示为主体,构造了一款简易的数字电压表,能够测量2路05V直流电压。2基本功能描述本次设计的数字电压表可以实现以下功能:(1)0-5V直流电压的获取。(2)采用AD转换器ADC0808实现单通道直流电压检测。(3)用7段数码管显示所测电压值(4)实现2路直流电压检测,在数码管循环显示各路电压值。(5)设定电压报警值,当超过这一数值时,会出现二极管闪烁。3设计主体3.1设计步骤(1)明确数字电压表的原理。数字电压表的基本工作原理是利用A/D转换电路将待测的模拟信号转换成数字信号,通过相应换算后将测试结果以数字形式显示出来的一种电压表。(2)模拟输入&A/D转
4、换电路设计本设计采用ADC0808芯片进行数模转换,ADC0808是具有8通道、8位逐次逼近式A/D模数转换器。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。A/D转换工作原理:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平时,输出三态门打开,转换结果的数字量输
5、出到数据总线上。图3-1-1 A/D转换(zhunhun)电路本设计通过(tnggu)可变电阻一端接电源+5v,一端(ydun)接地GND,通过改变电阻的阻值,从而改变所测电压值,实现电压的模拟信号输入。通过输入电路将2路输入电压送入ADC0808。并通过单片机P3口控制实现模数转换,并将转换后的数字信号送入单片机的P1口。(3) 单片机主控电路设计图3-1-2 单片机主控电路本电路用P3口来控制ADC芯片的工作和输入电压通道的选取。将数模转换后的数据通过P1端口送入单片机,再由P0、P2端口控制将其数值显示在数码管上。(4) 显示(xinsh)电路图3-1-3 显示(xinsh)电路通过(t
6、nggu)P0口控制6位7段共阴极数码管段选,通过P2口的低6位控制位选。P0接上拉电阻,否则P0会处于高阻态。3.2硬件设计本设计数字电压表的工作系统框图。电压采集 模数转换 单片机处理 数码管显示图3-2-1 系统框图图3-2-2 整体(zhngt)电路图 3.3软件设计开始初始化选择通道(电路1、电路2以及自动循环显示)启动A/D转换数据处理LED显示YES报警灯亮是否过限NO存储图3-3 程序(chngx)流程图程序设计(chn x sh j)如下:#include#define uint unsigned int#define uchar unsigned charuchar cod
7、e table=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f;sbit ST=P30;/AD转换启动输入端sbit OE=P31;/输出允许控制端sbit IN=P37;/通道选择端口sbit LED=P36;/报警灯控制位sbit LLED=P35;/循环指示灯控制位sbit DOT=P07;/小数点控制位uint count;uint Data;uint data AD_Data2; /设置的内存uchar flag;void DelayMS(uint ms)uchar i;while(ms-)for(i=0;i0
8、x96) /电压超过3VLED=0;DelayMS(10);LED=1;elseLED=1;AD_Data0=Data;/存储0路AD数值else /若选择通道IN1if(Data0 xE1) /超过4.5VLED=0;DelayMS(10);LED=1;else LED=1;AD_Data1=Data;ST=0;ST=1;/启动下一次AD转换ST=0;EX1=1;void INT_0() interrupt 0 EX0=0;TR0=0;flag+;flag=flag%3;if(flag=0) LLED=1;IN=0;if(flag=1) LLED=1;IN=1;if(flag=2) LLED
9、=0;IN=0;TR0=1;TMOD=0 x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EX0=1;void Time_0() interrupt 1 if(flag=2)TH0=(65536-50000)/256;TL0=(65536-50000)%256;if(count=100)IN=!IN;count=0;count+;4.总结(zngji)体会本次(bn c)课设是很好的一次实践机会,通过平常的课堂教学能够发现单片机非常注重实际的操作,在课程设计的实际操作中,能够发现理想与现实的差距(chj),比如在P0口接上拉电阻这一块,虽然书本里
10、面多次强调,但是实际操作的时候还是有可能忘记,因此通过本次课程设计,我更深地了解了单片机的基本原理、功能以及构造,根据课本上所说的ADC0808/ADC0809的基本工作原理,付诸于实践,充分利用KeilC51和Protuse这两个软件,尤其是proteus连接电路的时候,需要注意每一个接口的含义;同时,当调试出现错误的时候,知道哪里出错,改正哪里。另外,对于程序的理解也更加透彻,单片机的编程需要考虑硬件和软件的结合,这与平时所学到的单纯的编程有很大不同,需要在文件开头定义位变量(binling),这一点总是忘记。另外,对于中断的理解也比以前深刻了一些,这对于以后的学习也是很有帮助的。同时,在这次单片机课程设计中,团队的分工合作也非常重要,大家各自搞好(o ho)自己的一部分然后对接起来,达到事半功倍的效果。5.参考资料1 陈海宴51单片机原理(yunl)及应用M 第2版 北京:北京航空航天大学出版社,20142 基于Proteus单片机程序设计实验.东北大学秦
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 挂牌授权合作协议书
- 股票配资透明度协议范本
- 汽车按揭贷款协议
- 社区公共服务人员协议范本
- 地质勘探项目合作框架协议
- 质量风险监测指标协议
- 2024至2030年中国汽车模特制服数据监测研究报告
- 63T四柱液压机方案
- 政府采购信息化建设服务合同
- 设计保密协议书
- CPK-数据自动生成器
- 食品的感官检验-感官检验的常用方法(食品检测技术课件)
- 传染病护理学高职PPT完整全套教学课件
- 心理投射测验案例集(含解析)
- 超市物品盘点表
- 《大学信息技术》期末考试复习题库(含答案)
- 贵阳乌当富民村镇银行2023年第四期招聘应届毕业生(往届可)笔试历年高频考点试题答案带详解
- 武汉科技大学2021年《护理综合》考研真题与答案解析
- 三类修理厂安全应急预案
- 中国书画市场基本情况调查
- 浦东机场分区(PD4)地质灾害危险性评估报告(2020年度更新成果)
评论
0/150
提交评论