单片机课程设计(论文)-基于DS18B20的温度采集系统设计

上传人:aa****6 文档编号:29986333 上传时间:2018-01-26 格式:DOC 页数:21 大小:334KB
返回 下载 相关 举报
单片机课程设计(论文)-基于DS18B20的温度采集系统设计_第1页
第1页 / 共21页
单片机课程设计(论文)-基于DS18B20的温度采集系统设计_第2页
第2页 / 共21页
单片机课程设计(论文)-基于DS18B20的温度采集系统设计_第3页
第3页 / 共21页
单片机课程设计(论文)-基于DS18B20的温度采集系统设计_第4页
第4页 / 共21页
单片机课程设计(论文)-基于DS18B20的温度采集系统设计_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《单片机课程设计(论文)-基于DS18B20的温度采集系统设计》由会员分享,可在线阅读,更多相关《单片机课程设计(论文)-基于DS18B20的温度采集系统设计(21页珍藏版)》请在金锄头文库上搜索。

1、1( 基于 DS18B20 的温度采集系统设计 )课程设计说明书系(部): 信息工程系 班 级: 自动化 082 班 学生姓名: 学号指导教师: 时间:2010 年 12 月 13 日 到 2010 年 12 月 24 日2课 程 设 计 任 务 书题 目 基于 DS18B20 的温度采集系统设计 系 (部) 信息工程系 专 业 自动化 班 级 082 班 学生姓名 学 号 12 月 13 日至 12 月 24 日 共 2 周指导教师(签字) 系 主 任(签字) 年 月 日3一、设计内容及要求利用 DS18B20 实现温度采集,并用数码管显示。能实现温度上下限的设置,并能够超限报警(用 pro

2、teus 实现)二、设计原始资料单片机原理及应用教程 范立南 2006 年 1 月单片机原理及应用教程 刘瑞新 2003 年 07 月 三、设计完成后提交的文件和图表1计算说明书部分1)方案论证报告打印版或手写版2)程序流程图3)具体程序 2图纸部分:具体电路原理图打印版四、进程安排教学内容 学时 地点资料查阅与学习讨论 1 天 单片机实验室分散设计 5 天 单片机实验室编写报告 3 天 单片机实验室成果验收 1 天 单片机实验室 五、主要参考资料电子设计自动化技术基础马建国、孟宪元编 清华大学出版 2004 年 4月实用电子系统设计基础 姜威 2008 年 1 月4单片机系统的 PROTEU

3、S 设计与仿真 张靖武 2007 年 4 月指导老师成绩 答辩小组成绩 总成绩5目录摘要 1.系统方案 1.1 设计任务 1.2 DS18B20 芯片介绍 2.仿真图设计 。1.1 仿真设计总图 1.2 仿真设计中出现的问题 3.软件设计 3.1 主程序设计 3.1.1 主程序流程图设计 3.1.2 主程序程序设计 3.2 子程序设计 3.2.1 子程序流程图设计3.2.2 子程序程序设计4.系统调试与分析 5.设计总结 6附录:总程序 参考文献 摘要随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的

4、要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。本文利用单片机结合传感器技术开发设计,把传感器理论与单片机实际应用有机结合,详细地讲述了利用温度传感器DS18B20 测量环境温度,同时 51 单片机在现代电子产品中广泛应用以及其技术已经非常成熟,DS18B20 可以直接读出被测温度值,而且采用一线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用的特点 关键词: 单片机控制、温度检测、温度传感器、低成本、易使用Abstract71.系统方案1.1 设计的任务书利用 DS18B20实现温度采集,并用数码管显示

5、。 (用 proteus实现)1.2 DS18B20 芯片介绍(1)DS18B20 基本知识 DS18B20 数字温度计是 DALLAS 公司生产的 1Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。 (2)DS18B20 产品的特点 只要求一个端口即可实现通信. 在 DS18B20 中的每个器件上都有独一无二的序列号。 实际应用中不需要外部任何元器件即可实现测温。 测量温度范围在55。C 到125。C 之间。 数字温度计的分辨率用户可以从 9 位到 12 位选择。 内部有温度上、下限告警设置。

6、(3)DS18B20 的引脚介绍 TO92 封装的 DS18B20 的引脚排列见图 1,其引脚功能描述见表 1。(底视图)图 1 表 1DS18B20 详细引脚功能描述 序号 名称 引脚功能描述81 GND 地信号2 DQ 数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。3 VDD 可选择的 VDD引脚。当工作于寄生电源时,此引脚必须接地。(4) DS18B20 的使用方法 由于 DS18B20采用的是 1Wire 总线协议方式,即在一根数据线实现数据的双向传输,而对 AT89S51单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总

7、线的协议时序来完成对 DS18B20芯片的访问。 由于 DS18B20是在一根 I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20 有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。 DS18B20的复位时序 DS18B20的读时序 对于 DS18B20的读时序分为读 0时序和读 1时序两个过程。 对于 D

8、S18B20的读时隙是从主机把单总线拉低之后,在 15秒之内就得释放单总线,以让 DS18B20把数据传输到单总线上。DS18B20 在完成一个读时序过程,至少需要 60us才能完成。 9DS18B20的写时序 对于 DS18B20的写时序仍然分为写 0时序和写 1时序两个过程。 对于 DS18B20写 0时序和写 1时序的要求不同,当要写 0时序时,单总线要被拉低至少 60us,保证 DS18B20能够在 15us到 45us之间能够正确地采样 IO总线上的“0”电平,当要写 1时序时,单总线被拉低之后,在 15us之内就得释放单总线。 2仿真图设计2.1仿真图总图102.2仿真图设计中的问

9、题及解决方案(1)在 DS1820 测温程序设计中,向 DS1820 发出温度转换命令后,程序总要等待 DS1820 的返回信号,一旦某个 DS1820 接触不好或断线,当程序读该 DS1820 时,将没有返回信号,程序进入死循环。(2)开始在 p.0-p2.3 都接了三极管,基极接的 p2.0-p2.3,发射极接的电源,集电极接的数码管的片选口。可是都导不通。不管是把 p2.0-p2.3 置1 还是清 0.后来直接把三极管删了。(3)后来在 p.0-p2.3 都接了非门,可是还导不通。不管是把 p2.0-p2.3置 1 还是清 0.后来直接把非门删了。(4)直接用导线连接 p2.0-p2.3

10、 和数码管的片选口,还是不对。结果忘了改晶振频率。3. 软件设计3.1 主程序设计113.1.1 主程序流程图设计3.1.2 主程序程序设计 ORG 0000HSJMP STARTORG 0050HSTART: ;设置初值MOV SP,#70HMOV LED_0,#00H MOV LED_1,#00HCLR SOUNDMOV H_TEM,#60 ;高温报警温度设置MOV L_TEM,#40 ;低温报警温度设置MAIN: LCALL GET_TEMPER ;读出传感器感应温度MOV A,TEMPER_LMOV C,40H ;将 28H 中的最低位移入 C RRC AMOV C,41H12RRC

11、AMOV C,42HRRC AMOV C,43HRRC AMOV TEMPER_L,A ;循环右移实现把用两个字节存放的温度存到 29H 中来WAIT: SETB ALARM_L ;关黄灯SETB ALARM_H ;关红灯CLR SOUND ;关报警MOV WENDU,29H ;读取转换结果MOV A,#99 ;由于选用了两位数码管,设置读数上限为99 度MOV R7,WENDUSUBB A,R7 JC OUT ;判断是否高于 99,如高于 99 输出恒定符号CLR CMOV A,H_TEMDEC AMOV R0,WENDUSUBB A,R0 ;判断是否高于高温上限JC HALM MOV R1

12、,L_TEM MOV A,WENDU ;判断是否低于高温报警温度 (或下限温度)SUBB A,r1JC LALMNOPLCALL DISPLJMP MAINLALM: ;低温报警JNB CLOSE,CL ;关闭报警声CLR ALARM_L ;亮黄灯SETB SOUND ;开报警声LCALL DISP ;显示报警温度LJMP MAINHALM: ;高温报警13JNB CLOSE,CL ;关闭报警声MOV R2,#235 ;置计数值SETB SOUND ;开报警声DV: LCALL DELAY1mS ;延时 1 毫秒DJNZ R2,DVCPL ALARM_H ;标志位取反LCALL DISP ;显示报警温度SJMP CL CL: LJMP MAINOUT: ;超过 99 度上限显示LCALL GET_TEMPER_2MOV A,TEMPER_LMOV C,40H ;将 28H 中的最低位移入 C RRC AMOV C,41HRRC AMOV C,42HRRC AMOV C

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号