DS18B20数字温度计的设计-毕业设计

上传人:206****923 文档编号:91846757 上传时间:2019-07-02 格式:DOC 页数:16 大小:107.02KB
返回 下载 相关 举报
DS18B20数字温度计的设计-毕业设计_第1页
第1页 / 共16页
DS18B20数字温度计的设计-毕业设计_第2页
第2页 / 共16页
DS18B20数字温度计的设计-毕业设计_第3页
第3页 / 共16页
DS18B20数字温度计的设计-毕业设计_第4页
第4页 / 共16页
DS18B20数字温度计的设计-毕业设计_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《DS18B20数字温度计的设计-毕业设计》由会员分享,可在线阅读,更多相关《DS18B20数字温度计的设计-毕业设计(16页珍藏版)》请在金锄头文库上搜索。

1、辽 宁 工 业 大 学 单片机原理与接口技术 课程设计(论文)题目: DS18B20数字温度计的设计 院(系): 电气工程学院专业班级:自动化073 学 号: 070302078 学生姓名: 王金玉 指导教师: 赵越岭 教师职称: 教 授 起止时间:2010-07-01至2010-07-10第1章 DS18B20数字温度计的设计概述本课程的课程设计实际是测控技术及仪器专业学生学习完单片机与接口技术课程后,进行的一次全面的综合训练,其目的在于加深对单片机、单片机最小系统和单片机接口技术的认识、理解和应用,掌握单片机的应用技术。随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研,各个领

2、域,已经成为一种比较成熟的技术,本文将介绍一种基于单片机控制的数字温度计,本温度计属于多功能温度计,可以设置上下报警温度,当温度不在设置范围内时,可以报警。随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,该设计控制器使用单

3、片机AT89S51,测温传感器使用DS18B20,用4位共阳极LED数码管以串口传送数据,实现温度显示,能准确达到以上要求。通过DS18B20集成数字温度传感器检测室内温度,将温度值送交LED数码管显示。它包括温度检测、显示等功能。数字温度计除了能显示环境温度之外,经扩展加热,制冷控制电路,还可以扩展成为温度报警器或温度控制器。应用前景广阔。第2章 课程设计方案论证2.1 系统设计方案论证考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以可以采用一只温度传感器DS18B20,该传感器可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。2.2 系统组成总体结构为完成上述系统

4、功能,控制器采用单片机AT89S51,温度传感器采用DS18B20,用4位LED数码管以串口传送数据实现温度显示。L E D 显 示主 控 制 器温度传感器 图2.1 系统总体框图2.2.1 主控制器单片机AT89S51具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电。2.2.2 显示电路LED数码管价格便宜,使用方便,是应用最广泛的显示器。本系统采用4位共阳LED数码管,从并口输出段码。2.2.3温度传感器温度传感器种类很多,接口电路差异很大。如热敏电阻,需要A/D转换。本课设采用DALLAS半导体公司生产的DS

5、18B20智能温度传感器,它接口简单,使用方便。第3章 硬件设计3.1单片机最小系统设计1.单片机由于AT89S51片内含有4KB的flash ROM不需要外扩展存储器,且可以擦写1000次以上,给开发带来极大方便,资源丰富,故选用AT89S51为该系统制器。图3.1单片机引脚图2. 显示电路LED数码管价格便宜,使用方便,是应用最广泛的显示器。本系统采用4位共阳LED数码管,从并口输出段码。 图3.2 管脚图 图3.3共阳极LED原理图3. 温度传感器DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,

6、并且可根据实际要求通过简单的编程实现位的数字值读数方式。C64 位ROM和单线接口高速缓存存储器与控制逻辑温度传感器高温触发器TH低温触发器TL配置寄存器8位CRC发生器Vdd图3.4 DS18B20内部结构4.时钟电路图3.5 时钟电路机器周期T=12*1/12us=1us5.复位电路下图按键复位电路是手动复位电路,使用比较方便,在程序“跑飞”时,可以手动复位,不用重启单片机电源,就可以实现复位图3.6 复位电路3.2 功能电路1,显示电路显示采用4位一体共阳LED显示方式,分别位环境温度值及设定报警温度值的十位和个位,用P0口输出显示数据代码,而字位由P2.0P2.3控制。 图3.7显示电

7、路2,温度采集电路 图3.8 温度采集电路3.3系统硬件电路原理图 图3.9 硬件电路原理图第4章 软件设计4.1软件流程图4.1.1 DS18B20温度计主程序流程图主程序的主要功能是负责温度的实时显示,读出并处理DS18B20的当前温度值,与设定的报警温度比较,其程序流程图如下:调用显示子程序初始化1s到?初次上电发温度转换开始命令读出温度值温度计算处理显示数据刷新 图4.1主程序流程图4.1.2.DS18B20初始化程序流程图在DS18B20工作之前需要进行初始化,流程图如下:发复位命令发跳过ROM命令 初始化成功 结束 图4.2 初始化程序流程图4.1.3.读温度子程序流程图读温度子程

8、序的主要功能是从DS18B20中读出温度数据,移入温度暂存器保存。其程序流程图如下:发复位命令发跳过ROM命令 发读取温度命令 移入温度暂存器 结束 图4.3 温度子程序流程图 4.2 程序清单4.2.1.主程序程序如下:ORG 0000HLJMP MAINORG 0100HDAT BIT P1.0 ;DS18B20数据线接P1.0TEMPER_L EQU 40H ;转换前的低温度值放在40HTEMPER_H EQU 41H ;转换前的高温度值放在41HA_BIT EQU 60H ; 转换后的温度“十位”放在60HB_BIT EOU 61H ;转换后的温度“个位”放在61HMAIN:LCALL

9、 INIT_1820 ;DS18B20初始化 LCALL GET_TEMPER ;获取温度值 LCALL CONVER ;计算温度值,转换成BCD码 LCALL COMPARE ;与设定值比较报警 LCALL DISPLAY ;显示 LJMP MAIN ;返回主程序,继续执行4.2.2.DS18B20初始化程序.DS18B20初始化程序: INIT_1820:NOP L0:CLR DAT MOV R2,#200 L1:NOP DJNZ R2,L1 ;主机发复位脉冲持续3us*200=600us SETB DAT ;主机释放总线,口线改为输入 MOV R2, #20 L2:DJNZ R2,L2

10、;DS18B20等待2us*20=40us CLR C ORL C, DAT ;判断DS18B20数据线状态 JC L0 ;DS18B20未准备好,重新初始化 MOV R6,#80 L3:ORL C ,DAT JC L4 ;数据线变高,初始化成功 DJNZ R6,L3 ;判断数据线低电平可持续240us SJMP L0 ;失败,重来 L4:MOV R2,#120 L5:DJNZ R2,L5 ;DS18B20应答时间 RET4.2.3.读温度子程序读温度子程序: GET_TEMPER: LCALL INIT_1820 MOV A, #0CCH ;发跳过ROM命令 LCALL WRITE MOV A, #44H ;发启动转换命令 LCALL WRITE LCALL DELAY LCALL INIT_1820 MOV A, #0CCH ;发跳过ROM命令 LCALL WRITE MOV A, #0BEH ;发读存储器命令 LCALL WRITE LCALL READ MOV TEMPER_L,A ;温度值低位送40H LCALL READ MOV TEMPER_H,A ;温度值高位送41H RET向DS18B20写一个字节程序: WRITE:CL

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

最新文档


当前位置:首页 > 中学教育 > 其它中学文档

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