基于DS18B20的温度控制系统毕业设计(共39页).doc

上传人:飞****2 文档编号:15051655 上传时间:2022-05-10 格式:DOC 页数:39 大小:1.95MB
返回 下载 相关 举报
基于DS18B20的温度控制系统毕业设计(共39页).doc_第1页
第1页 / 共39页
基于DS18B20的温度控制系统毕业设计(共39页).doc_第2页
第2页 / 共39页
点击查看更多>>
资源描述

《基于DS18B20的温度控制系统毕业设计(共39页).doc》由会员分享,可在线阅读,更多相关《基于DS18B20的温度控制系统毕业设计(共39页).doc(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上扬 州 市 职 业 大 学毕 业 设 计(论 文)设计(论文)题目: 基于DS18B20的温度控制系统系 别:电子工程系专 业:通信技术班 级:09通信(1)姓 名:高立元学 号:指导教师:完成时间:2012年5月 目 录第1章 绪论5第2章 设计任务及方案分析6 2.1 设计任务及要求6 2.2 设计总体方案及方案论证6 2.2.1 系统总体设计6 2.2.2主控制部分6 2.2.3 温度检测部分7第3章 芯片功能简介8 3.1 AT89S51的功能简介8 3.1.1 AT89S51芯片简介8 3.1.2 引脚说明8 3.2 DS18B20的功能简介11 3.2.1

2、 芯片简介11 3.2.2 DS18B20外形和内部结构11 3.2.3 DS18B20与单片机的典型接口设计14第4章 系统硬件电路的设计 16 4.1 主控制电路和测温控制电路原理图16 4.2 上电复位电路16 4.3 时钟电路16 4.4 按键电路17 4.5 数码管显示电路17 4.6 温度报警电路19第5章 系统软件的设计20 5.1 主程序流程图 20 5.2 DS18B20复位检测子程序流程图20 5.3 温度转换子程序图21 5.4写DS18B20子程序图21 5.5 读DS18B20子程序图22 5.6 温度计算子程序图23 5.7 显示子程序图23 5.8 温度比较报警子

3、程序24 5.9 按键扫描子程序25第6章 调试与仿真26 6.1 软件调试仿真26 6.2 硬件测试26结论27致谢28参考文献29附 录A源程序30附 录 B实物图36附 录 C原理图37附 录 D仿真图38专心-专注-专业题目:基于DS18B20的温度控制系统作者:高立元摘要:本论文介绍了一种以单片机为主要控制器件,以DS18B20为温度传感器的新型数字温度计。主要包括硬件电路的设计和系统程序的设计。硬件电路主要包括主控制器,测温控制电路和显示电路等,主控制器采用单片机AT89S51,温度传感器采用美国DALLAS半导体公司生产的DS18B20,显示电路采用4位共阳极LED数码管,通过三

4、极管驱动显示。测温控制电路由温度传感器和预置温度值比较报警电路组成,当实际测量温度值超出预置温度值时,发出报警信号,且发光二极管亮。系统程序主要包括主程序,测温子程序和显示子程序等。DS18B20新型单总线数字温度传感器是DALLAS 公司生产的单线数字温度传感器, 集温度测量和 A /D转换于一体 ,直接输出数字量,具有接口简单、精度高、抗干扰能力强、工作稳定可靠等特点。关键词:数码管, AT89S51,DS18B20第1章 绪论日常生活及工农业生产中经常要用到温度的检测及控制,在冶金、食品加工、化工等工业生产过程中,广泛使用的各种加热炉、热处理炉、反应炉等,都要求对温度进行严格控制。测量温

5、度的关键是温度传感器,温度传感器正从模拟式向数字式、从集成化向智能化、网络化的方向发展。在测温电路中,可以使用热敏电阻之类的器件利用其感温效应,将随被测温度变化的电压或电流采集过来,先进行A/D转换,然后用单片机进行数据的处理,再在显示电路上,将被测温度显示出来。这种设计需要用到A/D转换电路,因此感温电路的设计比较复杂。本数字温度计的设计采用美国DALLAS半导体公司推出的一种改进型智能温度传感器DS18B20作为检测元件,其温度值可以直接被读出来,通过核心器件单片机AT89S51控制温度的读写和显示,用LED数码管显示。测温范围为55125,最大分辨率可达0.0625。而且采用单总线与单片

6、机相连,减少了外部的硬件电路,具有低成本和易使用的特点。 按照系统设计功能的要求,确定系统有5个模块组成:主控制器、温度传感器DS18B20、报警电路、按键预置温度值电路及显示电路。控制器使用AT89S51,温度传感器使用DS18B20,用4位共阳极LED数码管以动态扫描法实现温度显示。综上所述,本设计以智能集成温度传感器DS18B20为例,介绍基于DS18B20传感器的数字温度计的设计,该设计适用于人们的日常生活及工农业生产中用于温度的检测及控制。第2章 设计任务及方案分析2.1 设计任务及要求设计一个基于DS18B20的温度控制系统,其可实现的功能为:(1)用DS18B20温度传感自检测温

7、度;(2)用数码管显示温度,精确到0.1摄氏度;(3)当温度在温度上下限之外时,用声光提示; (4)温度上下限可设置;2.2 设计总体方案及方案论证2.2.1 系统总体设计系统主要包括单片机模块、温度采集模块、温度显示模块,温度上下限调整模块和报警模块五部分。系统总体框架如图2-1所示。单片机处理模块温度采集模块温度显示模块温度上下限调整模块图2-1 系统总体框架报警模块2.2.2主控制部分方案一: 此方案采用PC机实现,可在线仿真的功能,这让调试变得方便.但是PC机输出信号不能直接与DS18B20通信.需要通过RS232电平转换兼容,硬件的合成在线调试,较为繁琐,很不简便.而且在一些环境比较

8、恶劣的场合,PC机的体积大,携带安装不方便,性能不稳定,给工程带来很多麻烦! 方案二: 此方案采用AT89S51八位单片机实现.单片机软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制.而且体积小,硬件实现简单,安装方便.既可以单独对多DS18B20控制工作,还可以与PC机通信.2.2.3 温度检测部分方案一: 采用热敏电阻,可满足40摄氏度至90摄氏度测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测1摄氏度的信号是不适用的.而且在温度测量系统中,采用单片温度传感器,比如AD590,LM35等.但这些芯片输出的都是模拟信号,必须经过A/D转换后才能送给计算机,这样就使得测温装

9、置的结构较复杂.方案二:采用数字温度芯片DS18B20测量温度,输出信号全数字化,便于单片机处理及控制,省去传统的测温方法的很多外围电路,且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好.在0100摄氏度时,最大线形偏差小于1摄氏度。综上,本设计采用以AT89S51作为主控,以温度芯片DS18B20测量温度的温度控制系统。第3章 芯片功能简介3.1 AT89S51的功能简介3.1.1 AT89S51芯片简介单片机由单块集成电路芯片构成,内部包含计算机的基本功能部件:CPU、存储器、I/O接口电路、定时/计数器、串行口等。因此,单片机只需要在适当的软件及外部设备相结合,便可成为一

10、个单片机控制系统。MSC-51系列单片机是英特尔公司于1980年起推出的第二代产品。与8084相比,8051的硬件结构和指令系统均有很大改进,可支持更大的存贮空间,扩充了更多的硬件功能I/O功能,速度提高了2- 5倍,可完成逻辑运算等。近年来推出的一些增强的MSC-51系统单片机,片内还集成了许多特殊功能单元,只需要加一些扩展电路及必要的通道接口即可构成各种计算机应用系统。因此,MSC-51系统单片机在智能仪表、智能接口、功能模块等领域得到了非常广泛的应用。 主要技术特性: 适于控制应用的8位CPU。 64KB程序存贮器空间和64KB数据存贮器空间。 4KB片内程序存贮器。 128B片内数据R

11、AM。 2个16位定时/计数器。 扩展的逻辑处理能力。3.1.2 引脚说明图3-1 AT89S51引脚示意图VCC:供电电压。 GND:接地。 P0口:8位双向I/O口。在访问外部存储器时,P0口用于分时传送低8位地址(地址总线)和8位数据信号(数据总线)。P0口能驱动8个LSTTL门。在不接外ROM和外RAM时,P0口可做双向I/O口用。P1口:P1口是一个内部提供上拉电阻的8位准双向I/O口,P1口负载能力为4个LSTTL门。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。P2口:8位准双向I/O口。在访问外部存储器时,P2口

12、用于传送高8位地址。P2口负载能力为4个LSTTL门。 P3口:8位准双向I/O口。可做一般I/O口用,同时P3口每一引脚还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。P3口第二功能如下。 P3.0-RXD (串行输入口) P3.1-TXD (串行输出口) P3.2-/INT0 (外部中断0) P3.3-/INT1 (外部中断1) P3.4-T0 (定时/计数器0外部输入) P3.5-T1 (定时/计数器1外部输入) P3.6-/WR (外部数据存储器写选通) P3.7-/RD (外部数据存储器读选通) P3口负载能力为4个LSTTL门。RST:复位输入。当振荡器复位器件时,要

13、保持RST脚两个机器周期的高电平时间。 ALE、/PROG:正常使用为ALE功能,用来锁存P0口送出的低8位地址。P0口一般分时传送低8位地址还是8位数据地址呢?当ALE信号有效时,P0口传送的是低8位地址信号;ALE信号无效时,P0口传送的是8位数据信号。通常在ALE信号的下降沿,锁定P0口传送的内容,即低8位地址信号。需要指出的是,当CPU不执行访问外RAM指令(MOVX)时,ALE以时钟振荡频率1/6的固定速率输出,因此ALE信号也可作为外部芯片CLK时钟或其他需要。但是,当CPU执行MOVX指令时,ALE将跳过一个ALE脉冲。ALE端可驱动8个LSTTL门电路。/PROG在固化片内存储

14、器的程序(也称为“烧录程序”)时,此引脚用于输入编程脉冲,此时为低电平有效。/PSEN:外ROM的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外RAM或内ROM时,这两次有效的/PSEN信号将不出现。 /EA、VPP:正常工作时,/EA为内外ROM选择端。MCS-51型单片机ROM寻址范围为64KB,其中4KB在片内,60KB在片外。当/EA保持高电平时,先访问内ROM,但当PC(程序计数器)值超过4KB时,将自动转向执行外ROM中的程序。当/EA保持低电平时,则只访问外ROM,不管芯片内有否内ROM。对80C31芯片,片内无ROM,因此/EA必须接地。XTA

15、L1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。3.2 DS18B20的功能简介3.2.1 芯片简介(1) 适应电压范围更宽,电压范围:3.0 V5.5V,在寄生电源方式下可由数据线供电。(2) 独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。(3) DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内。(4) 测温范围55125,在-10+85时精度为0.5。(5) 可编程的分辨率为912位,对应的可分辨温度分别为0.5、0.25、0.125和0.

16、0625,可实现高精度测温。(6) 在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快。(7) 测量结果直接输出数字温度信号,以“一线总线”串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。(8) 负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。3.2.2 DS18B20外形和内部结构DS18B20内部结构如图3-2所示,主要由4部分组成:64位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的外形及管脚排列如图3-3和表3-1所示。 64位ROM和单线接 口 高速

17、缓存 存储器 存储器和控制器8位CRC生成器温度传感器 低温触发器TL高温触发器TH配置寄存器电源检测图3-2 DS18B20的内部结构图3-3 DS18B20的管脚排列表3-1 DS18B20引脚定义:序号名称引脚功能描述1GND地信号2DQ数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。3VDD可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。(1) 64位ROM ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码,每个DS18B20的64位序列号均不相同。64位ROM的循环冗余校验码(CRC=X8X5X41)。RO

18、M的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。DS18B20中的温度传感器完成对温度的测量,用16位符号扩展的二进制补码读数形式提供,以0.0625/LSB形式表达,其中S为符号位。DS18B20温度值格式表3-2如下所示。这是12位转化后得到的12位数据,存储在DS18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。例如25.0625的数字输出为0191H,25.

19、0625的数字输出为FF6FH。 表3-2 DS18B20温度值格式表 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0LS Byte22222222 bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8MS ByteSSSSS222(2)高低温报警触发器TH和TLDS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。 (3)配置寄存器 该字节各位的意义如下表3-3所示。表3-3:配置寄存器结构TMR1R011111低五位一直都是“

20、1”,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。在DS18B20出厂时该位被设置为0,用户不要去改动。R1和R0用来设置分辨率,如下表3-4所示(DS18B20出厂时被设置为12位)。表3-4: 温度分辨率设置表R1R0分辨率温度最大转换时间009位93.75ms 0110位187.5ms 1011位375ms 1112位750ms (4)高速暂存器是一个9字节的存储器。开始两个字节包含被测温度的数字量信息;第3、4、5字节分别是TH、TL、配置寄存器的临时拷贝,每一次上电复位时被刷新;第6、7、8字节未用,表现为全逻辑1;第9字节读出的是前面所有8个字节的CRC码,可

21、用来保证通信正确。高速暂存器RAM结构图如下表3-5所示。表3-5: DS18B20暂存寄存器分布寄存器内容 字节地址温度值低位 (LS Byte)0温度值高位 (MS Byte)1高温限值(TH)2低温限值(TL)3配置寄存器4保留5保留6保留7CRC校验值83.2.3 DS18B20与单片机的典型接口设计图3-4(a)中DS18B20采用寄生电源方式,图3-4(b)中DS18B20采用外接电源方式,其VDD端用3V5.5V电源供电。(a) 寄生电源工作方式 (b) 外接电源工作方式图3-4 电源工作方式图第4章 系统硬件电路的设计4.1 主控制电路和测温控制电路原理图AT89S51是此硬件

22、电路设计的核心,通过AT89S51的管脚P3.7与DS18B20相连,控制温度的读出和显示。电路原理图如下图4-1所示。图4-1主控制电路和测温控制电路原理图4.2 上电复位电路图4-2 上电复位电路本设计中AT89S51是采用上电自动复位,如图4-2所示。上电瞬间,RC电路充电,RST引线端出现正脉冲,只要RST端保持10ms以上的高电平,就能使单片机有效地复位。4.3 时钟电路此处选用内部时钟方式。即利用其内部的振荡电路在XTAL1和XTAL2引线上外接定时元件,内部振荡电路产生自激振荡。最常用的是在 XTAL1和XTAL2之间接晶体振荡器与电路构成稳定的自激振荡器,如图4-3电路.图4-

23、3 时钟电路4.4 按键电路键盘是一种常见的输入设备,用户可以向计算机输入数据或命令。本设计是采用独立式按键,用5个按键,分别接P1.0P1.4,当无按键按下时其口上的电平为高电平。当某按键按下时,与其相连的I/O线将得到低电平输入。如图4-4。图4-4 按键电路4.5 数码管显示电路发光二极管LED是一种通电后能发光的半导体器件,其导电性质与普通二极管类似。它使用了8个LED发光二极管,其中7个显示字符,1个显示小数点,故通常称之为7段发光二极管数码显示器,如图4-5所示。 为了显示字符,要为 LED显示器提供段码(或称字形代码),组成一个“8”字形的7段,再加上1个小数点位,共计8段,因此

24、提供给LED显示的段码为1个字节。各段码位的对应关系如下:表格4-1 各段码位的对应关系段码位 D7 D6 D5 D4 D3 D2 D1 D0 显示段 dp g f e d c b a 共阳极接法:把发光二极管的阳极连在一起构成公共阳极,使用时公共阳极接+5 V, 每个发光二极管的阴极通过电阻与输入端相连。当阳极端输入低电平时,段发光二极管就导通点亮,而输入高电平时则不点亮。 共阳极 显示段码图4-5 LED数码显示器的显示段码本设计采用LED数码管显示电路,该显示电路由7段共阳数码管,限流电阻,三极管,基极电阻,P0口,P2口等组成。P0口通过与8个270电阻与数码管的8个数据位相连,送显示

25、数码。电阻即可起到限流作用,又可起到上拉电阻的作用。P2口的P2.0P2.3通过4个4.7k的电阻和4个三极管与4个7段数码管相连,起位选的作用。数码管显示电路的原理图如图4-6 。图4-6 数码管显示电路图4.6 温度报警电路温度报警电路是检测当前温度的值并与预置的温度上下限进行比较,当当前温度超出预置的温度上下限时,系统就会立即发出报警信号。此设计的温度报警电路是由声光报警电路组成,用到了蜂鸣器和LED发光二极管。原理图如图4-7:图4-7 温度报警电路第5章 系统软件的设计5.1主程序流程图主程序首先进行初始化,当检测到DS18B20存在时发出温度转换命令和读温度命令,在分别调用相应的数

26、据处理子程序,完成温度测量及显示工作。流程图如图5-1:YN开始延时537us复位低脉冲SETB DQCLR DQ100US内DQ=0FLAG1=1时序延时216usSETB DQ返回FLAG1=0图5-2 DS18B20复位检测子程序开始DS18B20复位检测子程序温度转换子程序读温度子程序按键扫描子程序温度计算子程序显示子程序温度比较子程序5-1 主程序流程图5.2 DS18B20复位检测子程序流程图主机控制DS18B20完成任何操作之前必须先初始化,即主机发一复位脉冲(最短为480us的低电平),接着主机释放总线进入接收状态,DS18B20在检测到I/O引脚上的上升沿之后,等待15-60

27、us然后发出存在脉冲(60-240us的低电平)。如图5-3所示。图5-3 初始化程序开始发跳过rom命令写入子程序发温度转换命令返回图5-4 温度转换子程序DS18B20复位检测子程序的主要功能为检测DS18B20是否存在。若存在则将标志位FLAG1置1,反则置0.后续程序可以通过判断标志位来决定进行何种操作。流程图如图5-2:5.3 温度转换子程序图温度转换命令子程序主要是发温度转换命令,当采用12位分辨率时转换时间约为750ms,流程图如图5-4:5.4 写DS18B20子程序图写时间片:将数据从高电平拉至低电平,产生写起始信号。在15us之内将所需写的位送到数据线上,在15us到60u

28、s之间对数据线进行采样,如果采样为高电平,就写1,如果为低电平,写0就发生。在开始另一个写周期前必须有1us以上的高电平恢复期。其写时序图5-5,流程图如图5-6:图5-5 写时序YN开始R2=8写之前复位CLR DQ延时16us以上RRC A延时100us DQ=1R2=0返回SETB DQ图5-6写入DS18B20子程序图CLR CYN开始发DS18B20复位命令跳过rom命令发读温度命令8字节完返回存入温度暂存器图5-7读温度子程序图读操作5.5 读DS18B20子程序图 读时间片:主机将数据线从高电平拉至低电平1us以上,再使数据线升为高电平,从而产生读起始信号。主机在读时间片下降沿之

29、后15us内完成读位。每个读周期最短的持续期为60us,各个读周期之间也必须有1us以上的高电平恢复期。如图5-8.读温度子程序只读出DS18B20暂存器前4个字节的数据:温度值LSB温度值MSB、温度报警值TH和TL,并将它们分别存入25H28H单元中。如图5-7:图5-8读时序5.6 温度计算子程序图温度计算子程序首先判断温度值MSB的符号位,当符号位S=0时,表示测得的温度值为正,可以直接将二进制转换为十进制;当符号位S=1时,表示测得的温度值为负,要先将补码变成原码,再计算十进制值。计算时先将温度值LSB的低四位取出,进行小数部分数据处理。再将温度值LSB的高四位和温度值MSB的低四位

30、取出,重新组合后进行整数部分数据处理。如图5-9:NY温度零下温度值取补码置“-”标志置“+”标志计算小数位BCD值计算整数位BCD值返回开始图5-9计算温度BCD码子程序图5.7 显示子程序图温度显示子程序将从DS18B20读出的温度值,经过数据处理后,送往数码管进行实时显示。包括显示子程序和刷新子程序。如图5-10,图5-11;YNYNNYYN开始取温度标记TEMPBJ负数返回5-11 显示数据刷新子程序图调显示子程序百位=0十位=0十位显示符号百位不显示百位不显示十位=0十位不显示开显示取百位BCD码,查看表得7段码,送显示口选通百位数码管开关调用延时2ms程序关显示取小数位BCD码,查

31、看表得7段码,送显示口选通小数位数码管开关调用延时2ms程序关显示取十位BCD码,查看表得7段码,送显示口选通十位数码管开关5-10 显示子程序58 温度比较报警子程序图温度比较子程序将实测温度值与设定的温度报警值进行比较,根据比较结果执行相应处理程序。当实测温度超出设定的温度报警值时,发出报警信号,LED灯闪烁,蜂鸣器响。当实测温度正常时,数码管正常显示当前温度值。如图5-12:开始Y大于上限小于下限显示子程序报警子程序返回图5-12 温度比较子程序图YNNYN开始有键按下键盘抖动R6键值等待键释放返回图5-13按键扫描及消抖子5.9 按键扫描子程序按键扫描子程序对数字温度计的K1K5键进行

32、扫描,得到键值,根据键值完成相应操作。当按下K1键时数码管显示H50,当按下K2键显示L05,按下K3和K4分别加1和减1.再按K5保存设置,返回显示当前温度值,如图5-13和图5-14:NNNNNYYYYYYYNYNN开始K1K1显示下限显示上限K3K4K5K3K4返回加1减1减1加1图5-14 按键处理子程序图K5第6章 调试与仿真6.1 软件调试和仿真软件调试是通过对用户程序的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。本设计的程序编辑完成以后,通过wave6000编程软件来调试,经过多次的修改调试。软件的仿真是用的Proteus ISIS,是英国Labce

33、nter公司开发的电路分析与实物仿真软件。将设计的电路图连接好,将程序加入到AT89S51中,进行仿真,和多次的修改,最终得到预测的结果。6.2 硬件测试硬件调试是利用开发系统、基本测试仪器(万用表、示波器)等,检查用户系统硬件中存在的故障。 硬件调试可分为静态调试和动态调试两步进行: (1)静态调试:静态调试是在用户系统未工作时的一种调试。 步骤如下: 第一步:目测。检查外部的各种元件或者是电路是否有断点。 第二步:用万用表测试。先用万用表复核目测中有疑问的连接点,在检测各 种电源线与接地线之间是否有短路现象。 第三步:加点检测。给电路板加电,检测所有的插座或者是硬件的电源是否 符合要求的值

34、。 第四步:联机检查。应为只有单片机开发系统才能完成对用户系统的调试。 (2)动态调试:动态调试是在用户系统工作的情况下发现和排除用户系统硬件中存在的器件内部故障、器件连接逻辑错误等的一种硬件检查。 结 论 本文针对温度测量方法的现状和所要研究问题的分析,提出了一种采用单总线式数字温度传感器DS18B20芯片,并运用AT89S51作为控制芯片的温度测量控制系统,接着从单片机的结构,原理分析起,在熟悉了AT89S51的工作原理及使用方法后,详细的分析了DS18B20芯片的结构、工作原理、时序和测量温度的方法,最后又简要了解下LED数码管的显示方法。在这个过程中我查阅了大量的相关资料,综合所分析所

35、有内容,再结合单片机基本知识设计了系统电路,通过仿真确定了功能的可实现性,最后做出实物。通过这次学习,并亲自动手制作焊接,学到了很多,也加强了很多大学学习的基本技能,是理论与实际得到很好的结合。致 谢首先感谢我的指导老师。本论文是在老师的指导下和同学们的帮助下修改完成的。在此,我要向他们的细心帮助和指导表示由衷的感谢。在这段时间里,我从他们身上不仅学到了许多的专业知识,更感受到他们工作中的兢兢业业,生活中的平易近人。此外,他们严谨的治学态度和忘我的工作精神值得我去学习。非常感谢大家在我的毕业设计中,给予我极大的帮助,使我对整个毕业设计的思路有了总体的把握,并耐心的帮我解决了许多实际问题,使我有

36、了很大的收获。感谢多年来传授我知识的老师们,更要感谢那些对我学习上支持和鼓励的人。同时感谢所有关心帮助过我的同学、老师和学校。总之,在以后的学习生活中我将以加倍的努力对给予我帮助的学校、老师及同学们的回报。参 考 文 献:1陈权昌,李兴富.单片机原理与应用. 北京:理工大学出版社,20072陈明.protel 99se原理图与pcb设计教程. 北京:机械工业出版社,20063阎石.数字电子技术基础(第四版). 北京:高等教育出版社,19974王恩荣.MCS-51单片机应用技术. 北京:化学工业出版社,20015黄河,郭纪林.单片机原理及应用. 大连:大连理工大学出版社,20066周贵连. 电子

37、技术基础. 西安:机械工业出版社,20057李广弟. 单片机基础. 北京:北京航空航天大学出版社,19948阎石. 数字电子技术基础. 北京:高等教育出版社,19899栾桂冬.传感器及其应用. 西安:电子科技大学出版社,200310范立南,谢子殿.单片机原理及应用教程. 北京:北京大学出版社,2006. 11潘松,赵敏笑.EDA技术及其应用. 北京:科学出版社,200712丁元杰.单片机原理及应用. 西安:机械工业出版社,1999附录A源程序K1 EQU P1.0K2 EQU P1.1K3 EQU P1.2K4 EQU P1.3K5 EQU P1.4DQ EQU P3.7BEEP EQU P3

38、.5 ;蜂鸣器RELAY EQU P3.6 ;指示灯TEMP EQU 24H ;实测温度存放单元TEMPL EQU 25H ;温度低位存放单元TEMPH EQU 26H ;温度高位存放单元TEMP_TH EQU 27H ;温度上限存放单元TEMP_TL EQU 28H ;温度下限存放单元TEMPBJ EQU 29H ;正负温度标记FLAG1 BIT 20H.0 ;DS18B20存在标志位 ORG 0000H LJMP MAIN ORG 0030HMAIN: MOV SP,#40H MOV A,#00H MOV R0,#20H;MOV R1,#10HCLEAR: MOV R0,A INC R0

39、DJNZ R1,CLEARSTART: LCALL RST JNB FLAG1,START1MOV TEMP_TH,#32H;设TH初值50度 MOV TEMP_TL,#05H;设TL初值05度 LCALL RE_18B20 LCALL WRITE_E2 LJMP START2START1: MOV 2AH,#0EH MOV 2BH,#0EH MOV 2CH,#0EH MOV 2DH,#0EH LCALL DISPLAY SETB RELAY;熄灭指示灯 LCALL BEEP_BL;调蜂鸣器响 LJMP STARTSTART2: LCALL RSTJNB FLAG1,START1MOV A,#

40、0CCH;跳过ROM匹配命令LCALL WRITEMOV A,#44H;温度转换命令LCALL WRITELCALL RSTMOV A,#0CCHLCALL WRITEMOV A,#0BEH;读温度命令LCALL WRITELCALL READLCALL CONVTEMPLCALL DISPLCALL TEMP_COMPLCALL PROC_KEYMOV A,R6JZ START2;无按键按下则跳START2LCALL ANKEY;调用按键处理子程序MOV R6,#00H;清键值标志位SJMP START2;循环;DS18B20复位子程序 R0 R1RST:SETB DQNOPCLR DQMOV R0,#36H ;主机发出延时复位低脉冲537usMOV R1,#03HTSR1:DJNZ R0,$MOV R0,#36HDJNZ R1,TSR1SETB DQ

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

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁