毕业设计——单片机数字温度计显示毕业设计终稿c语言.docx_第1页
毕业设计——单片机数字温度计显示毕业设计终稿c语言.docx_第2页
毕业设计——单片机数字温度计显示毕业设计终稿c语言.docx_第3页
毕业设计——单片机数字温度计显示毕业设计终稿c语言.docx_第4页
毕业设计——单片机数字温度计显示毕业设计终稿c语言.docx_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机数字温度计显示毕业设计终稿c语言xxxxxx技术职业学院 毕业设计 题目 单片机数字温度计显示设计 ?选题性质:?设计?报告?其他 院 系 电子工程学院 专 业 电子信息工程技术 班 级 2011级(3)班 学 号 xxxxxxxxxx 学生姓名 叶 xx xx 指导教师 王 x x 教务处制 年 月 日 2014 届 电子工程 学院 毕业设计选题审批单 年级 2011级 专业 电子信息工程技术 班级 x班 学生姓名 xxxx 学 号 xxxxxxxx ?选题 单片机数字温度计显示 选题性质 ?设计?报告?其他 选题论证: 本设计是一个数字温度温度控制系统,能测量温度,并能在超限的情况下进行控制、调整,并报警。CPU选用的是 AT89C51 ,温度传感器用的是Dallas公司的DS18B20,显示器选用的4位数码管。它可以实时的显示和设定温度,实现对温度的自动控制。日常生活及工农业生产中经常要用到温度的检测及控制,本设计对温度的控制有方便、简单、成本低的特点,从而大幅提高了被控温度的技术指标,运用前景广泛。 指导教师初审意见: 签 名: 年 月 日 毕业设计工作领导小组审批意见: 签 名: 年 月 日 2014 届 电子工程 学院 毕业设计开题报告及进度要求 年级 2011级 班级 3班 学生姓名 xxxx 学 号 xxxxxxxxx ?指导教师 xxx 选题性质 ?设计?报告?其他 选题 单片机数字温度计显示设计 选题的目的和意义: 1. 选题目的 日常生活及工农业生产中经常要用到温度的检测及控制,在冶金、食品加工、化工等工业生产过程中,广泛使用的各种加热炉、热处理炉、反应炉等,都要求对温度进行严格控制。在日常生活中,电烤箱、微波炉、电热水器、烘干箱等电器也需要进行温度检测与控制。传统的测温元件有热电偶和热电阻。而热电偶和热电阻测出的一般是电压,再转换成对应的温度,需要比较多的外部硬件支持,硬件电路复杂,软件调试复杂,制作成本高。而采用单片机对温度进行控制,不仅具有控制方便,简单和灵活等优点,而且可以大幅度提高温度控制的技术指标。 2. 设计意义 人们生活与环境温度息息相关,在工业生产过程中需要实时测量温度因此研究温度的测量方法和控制具有重要的意义。 选题研究的主要内容和技术方案: 1.研究(设计)内容 采用数字式温度传感器为检测器件,进行单点温度检测。用数码管直接显示温度值,微机系统作为数字温度计的控制系统。 (1)检测的温度范围:0?,120?,检测分辨率 0.5?。 (2)用4位数码管来显示温度值。 (3)超过警戒值(自己定义)要报警提示。 2.技术方案 拟解决的关键问题及重点、难点。 元件的选用:包括主控制器(单片机)、显示数码管、温度传感器等。 主板电路的设计:系统整体硬件电路包括,传感器数据采集电路,温度显示电路,上下限报警调整电路,单片机主板电路等。 毕业设计工作时间 2013 年 7 月 1 日 至 2013 年 9 月 15 日 毕业设计工作日程安排 时间段 工作内容 2013年7月1日-7月8日 选题、开题、制定任务、开题 2013年7月9日-7月15日 学生收集资料整理文档指导教师集中指导 2013年7月16日-7月25日 撰写设计大纲,思路、框架, 2013年7月26日-9月14日 完成设计撰写毕业设计论文 2013年9月15日 定稿 评审 2013年9月17日-19日 2013年9月20日-24日 答辩 指导教师意见: 所选课题具有一定的现实意义,主要内容和技术方案切实可行并符合实际应用。毕业设计日程安排合理同意该同学的毕业设计工作进度安排: 成果要求: 能较好地完成本设计所要求的内容 签字: 年 月 日 xxxxx技术职业学院 毕业设计小组任务分配表 序号 姓名 班级 毕业设计工作任务分配 xxxxxx技术职业学院毕业设计 摘 要 温度是工业生产和自动控制中最常见的工艺参数之一。过去温度检测系统设计中,大多采用模拟技术进行设计,这样就不可避免地遇到诸如传感器外围电路复杂及抗干扰能力差等问题;而其中任何一环节处理不当,就会造成整个系统性能的下降。随着半导体技术的高速发展,特别是大规模集成电路设计技术的发展, 数字化、微型化、集成化成为了传感器发展的主要方向。 设计介绍了检测的温度显示得基本概念,单总线数字温度传感DS18B20及单片机AT89C51的特性、内部结构及工作原理,给出了DS18B20与单片机AT89C51接口的应用实例,以及由两者组成温度检测系统的方法,并给出了对DS18B20进行各种操作的软件流程图及操作程序。它可以实时的显示和设定温度,实现对温度的自动控制。本设计对温度的控制有方便、简单的特点,运用在现实生活及工业生产的前景广泛。 关键字:单片机、DS18B20、温度显示 I xxxxxx技术职业学院毕业设计 目 录 摘 要 . I 目 录 . II 绪 论 . III 第1章 系统设计及功能. 1 1.1 设计背景 . 1 1.2 设计实现功能 . 1 1.3 电路工作原理 . 1 1.4 设计所需软件 . 1 第2章 单片机原理与应用系统硬件 . 2 2.1 单片机发展历程. 2 2.2 单片机AT89C51简介及引脚说明 . 3 2.2.1 AT89C51单片机简介 . 3 2.3 数字温度传感器 DS18B20 . 5 2.3.1 DS18B20概述 . 5 2.4 DS18B20测温原理 . 8 2.4.1 DS18B20 测温过程 . 9 2.4.2 DS18B20使用注意事项 . 11 第3章 系统的硬件电路设计 . 12 3.1 单片机最小系统电路的设计 . 12 3.2 温度传感电路设计 . 13 3.3 显示电路设计 . 14 3.4 系统电路PCB板图 . 15 第4章 系统软件设计 . 16 4.1 系统软件编写流程 . 16 4.2 系统设计程序 . 17 4.2.1 程序设计软件调试 . 17 4.3 系统设计程序代码 . 18 4.3.1 程序代码 . 18 第5章 系统软件仿真及硬件测试 . 23 5.1 软件仿真设计 . 23 5.1.1 Proteus ISIS软件 . 23 5.2 Proteus仿真电路. 25 5.3 实物设计效果 . 25 结 论 . 26 参考文献 . 27 II xxxxxx技术职业学院毕业设计 绪 论 温度是表征物体冷热程度的物理量,是工业生产和自动控制中最常见的工艺参数之一,生产过程中常常需要对温度进行检测和监控。在传统的温度测控系统设计中,往往采用模拟技术进行设计,这样就不可避免地遇到诸如传感器外围电路复杂及抗干扰能力差等问题;而其中任何一环节处理不当,就会造成整个系统性能的下降。 采用数字温度传感器与单片机组成的温度检测系统进行温度检测、数值显示和数据存储,体积减小,精度提高,抗干扰能力强,并可组网进行多点协测,还可以实现实时控制等技术,在现代工业生产中应用越来越广泛。温度控制广泛应用于人们的生产和生活中,人们使用温度计来采集温度,通过人工操作加热、通风和降温设备来控制温度,这样不但控制精度低、实时性差,而且操作人员的劳动强度大。即使有些用户采用半导体二极管作温度传感器,但由于其互换性差,效果也不理想。在某些行业中对温度的要求较高,由于工作环境温度不合理而引发的事故时有发生。对工业生产可靠进行造成影响,甚至操作人员的安全。为了避免这些缺点,需要在某些特定的环境里安装数字温度测量及控制设备。本设计由于采用了新型单片机对温度进行控制,以其测量精度高,操作简单。可运行性强,价格低廉等优点,特别适用于生活,医疗,工业生产等方面的温度测量及控制。 本设计是一个数字温度测量及控制系统,能测柜内的温度,并能在超限的情况下进行控制、调整,并报警。保证环境保持在限定的温度中。系统具有结构简单、可靠性高、成本低、实时性好、安装维护方便等优点,有广泛的应用前景。 III xxxxxx技术职业学院毕业设计 第1章 系统设计及功能 1.1 设计背景 温度控制广泛应用于人们的生产和生活中,人们使用温度计来采集温度,通过人工操作加热、通风和降温设备来控制温度,这样不但控制精度低、实时性差,而且操作人员的劳动强度大。即使有些用户采用半导体二极管作温度传感器,但由于其互换性差,效果也不理想。在某些行业中对温度的要求较高,由于工作环境温度不合理而引发的事故时有发生。对工业生产可靠进行造成影响,甚至操作人员的安全。为了避免这些缺点,需要在某些特定的环境里安装数字温度测量及控制设备。 1.2 设计实现功能 设计出来的电子温度计能够精确的测量出温度值,能够显示0?,120?的温度,超过或者低于设定上下线时能够做出相应。根据系统的设计要求,选择DS18B20作为本系统的温度传感器,选择单片机AT89C51为测控系统的核心来完成数据采集、处理、显示、报警等功能。温度传感器DS18B20把所测得的温度发送到AT89C51单片机上,经过51单片机处理,将把温度在显示电路上显示。选用数字温度传感器DS18B20,省却了采样,保持电路、运放、数,模转换电路以及进行长距离传输时的串,并转换电路,简化了电路,缩短了系统的工作时间,降低了系统的硬件成本。 1.3 电路工作原理 温度控制系统采用AT89C51八位机作为微处理单元进行控制。本设计采用软件把设定温度的最高值和最低值存入单片机的数据存储器,还可以通过键盘完成温度检测功能的转换。温度传感器把采集的信号与单片机里的数据相比较来控制温度控制器,并将其显示出来。 1.4 设计所需软件 绘制电路图,我们选用Protell99绘图软件绘制,Protell是Altium公司在80年代末推出的EDA软件,在电子行业的CAD软件中,它当之无愧地排在众多EDA软件的前面,是电子设计者的首选软件,它较早就在国内开始使用,在国内的普及率也最高。 电路仿真Proteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路。 第 1 页 xxxxxx技术职业学院毕业设计 第2章 单片机原理与应用系统硬件 2.1 单片机发展历程 单片机又称单片微控制器如图2.1所示。它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括地讲,一块芯片就成了一台计算机。它体积小、质量轻、价格便宜,为学习、应用和开发提供了便利条件。 图2.1 单片机实物图 2.1.1 单片机的快速发展 单片机诞生于20世纪70年代末,经历了SCM、MCU、SOC三大阶段。 (1) SCM (Single Chip Microcomputer) (单片微型计算机)阶段,主要是寻求最佳的单片形态嵌入式系统的最佳体系结构。创新模式获得成功,奠定了SCM与通用计算机完全不同的发展道路。 (2) MCU (Micro Controller Unit)(微控制器)阶段,主要的技术发展方向是:不断扩展、满足嵌入式应用时,发展对象系统要求的各种外围电路与接口电路,突显其对象的智能化控制能力。它所涉及的领域都与对象系统相关,因此,发展MCU的重任不可避免地落在电气、电子技术厂家肩上。SoC (System on Chip)(片上系统)阶段,单片机是嵌入式系统的独立发展之路。向MCU阶段发展的重要推动力,就是寻求应用系统在芯片上的最大化解决;因此,单片专用机的发展自然形成了SoC化趋势。 (3) 使用SoC技术设计系统的核心思想,就是要把整个应用电子系统全部集成在一个芯片中。随着微电子技术、IC设计、EDA工具的发展,基于SoC的单片机应用系统设计会有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到单片应用系统。 2.1.2 数字单片机技术的发展 (1) 单片机在内部已集成了越来越多的部件,这些部件包括一般常用的电路,例如定时器、比较器、A/D转换器、D/A转换器、串行通信接口、Watchdog电路、LCD控制器等。有的单片机为了构成控制网络或形成局部网,内部含有局部网络控制模块CAN。 第 2 页 xxxxxx技术职业学院毕业设计 因此,这类单片机十分容易构成网络。特别是在控制、系统较为复杂时,构成一个控制网络十分有用。有的单片机内部设置了专门用于变频控制的脉宽调制控制电路。特别引人注目的是, 现在有的单片机已采用所谓的三核结构。这是一种建立在系统级芯片概念上的结构。这种单片机由三个核组成: 一个是微控制器和DSP核, 一个是数据和程序存储器核, 最后一个是外围专用集成电路(ASIC)。这种单片机的最大特点在于把DSP和微控制器同时做在一个片上,把它和传统单片机结合集成大大提高了单片机的功能。这是目前单片机最大的进步之一。 (2) 功耗、封装及电源电压的进步。现在新的单片机的功耗越来越小, 特别是很多单片机都设置了多种工作方式, 这些工作方式包括等待、暂停、睡眠、空闲、节电等工作方式。现在单片机的封装水平已大大提高, 随着贴片工艺的出现, 单片机也大量采用了各种符合贴片工艺的封装方式出现,以大量减少体积。扩大电源电压范围以及在较低电压下仍然能工作是当今单片机发展的目标之一。目前,一般单片机都可以在3.3,5.5V的条件下工作。而一些厂家,则生产出可以在2.2,6v的条件下工作的单片机。 2.2 单片机AT89C51简介及引脚说明 2.2.1 AT89C51单片机简介 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C51是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 AT89C51单片机引脚如图2.2所示: 图2.2 AT89C51单片机引脚图 第 3 页 xxxxxx技术职业学院毕业设计 AT89C51单片机引脚说明 VCC:供电电压。 GND:接地。 (1) P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 (2) P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 (3) P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 (4) P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下: ? 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(外部数据存储器读选通) (5) RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 (6) ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的 第 4 页 xxxxxx技术职业学院毕业设计 地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 (7) /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 (8) /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 (9) XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 (10) XTAL2:来自反向振荡器的输出。 2.3 数字温度传感器 DS18B20 2.3.1 DS18B20概述 由Dallas半导体公司生产的DS18B20型单线智能温度传感器,属于新一代适配微处理器的智能温度传感器,可广泛用于工业、民用、军事等领域的温度测量及控制仪器、测控系统和大型设备中。它具有体积小,接口方便,传输距离远等特点。 (1)采用单总线的接口方式。与微处理器连接时,仅需要一条口线即可实现微处理器与DS18B20的双向通讯。 (2)测量温度范围宽。测量精度高 DS18B20 的测量范围为 -55 ?,+ 125 ? ; 在 -10,+ 85?C 范围内,精度为 ? 0.5?C 。 (3)在使用中不需要任何外围元件。 (4)持多点组网功能。多个DS18B20可以并联在惟一的三线上,实现多点测温。 (5)供电方式灵活。DS18B20可以通过内部寄生电路从数据线上获取电源。因此,当数据线上的时序满足一定的要求时,可以不接外部电源,从而 使系统结构更趋简单,可靠性更高。 (6)测量参数可配置。DS18B20的测量分辨率可通过程序设定 9,12 位。 (7)负压特性。电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 (8)掉电保护功能。DS18B20内部含有EEPROM,在系统掉电以后,它仍可保存 第 5 页 xxxxxx技术职业学院毕业设计 分辨率及报警温度的设定值。DS18B20具有体积更小、适用电压更宽、更经济、可选更小的封装方式,更宽的电压适用范围,适合于构建自己的经济的测温系统,因此也就被设计者们所青睐。 2.3.2内部结构 DS18B20内部结构主要由四部分组成:温度传感器,64位光刻ROM,非挥发的温度报警触发器TH和TL,高速暂存器。DS18B20 内部结构主要由四部分组成:温度传感器、64位光刻ROM、非挥发的温度报警触发器TH和TL、配置寄存器。如图2.3所示。 图2.3 DS18B20 内部结构图 DS18B20内部结光刻ROM中的64位序列号构是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位(地址:28H)是产品类型的编号,接着的 48 位是每个DS18B20自身的序列号,并且每个DS18B20的序列号都不相同,因此它可以看作是该DS18B20的地址序列码;最后8位则是前面56位的CRC校验码(CRC=X8+X5+X4+1)。由于每一个 DS18B20 的 ROM 数据都各不相同,因此微控制器就可以通过单总线对多个 DS18B20 进行寻址,从而实现一根总线上挂接多个 DS18B20 。DS18B20中的温度传感器用于完成对温度的测量,它的测量精度可以配置成9位,10位,11位或12位4种状态。温度传感器在测量完成后将测量的结果存储在DS18B20的两个8BIT的RAM中,单片 机可通过单线接口读到该数据,读取时低位在前 ,高位在后数据的存储格式如下表(以12位转化为例):这是 12 位转化后得到的12位数据,存储在18B20的两个8比特的 RAM 中,二进制中的前面 5 位是符号位,如果测得的温度大于 0 ,这 5 位为 0 ,只要将测到的数值乘于 0.0625 即可得到实际温度;如果温度小于 0 ,这 5 位为 1 ,测到的数值需要取反加 1 再乘于 0.0625 即可得到实际温度。 例如: + 125 ? 的数字输出为07D0H , + 25.0625 ? 的数字输出为0191H , -25.0625 ? 的数字输出为 FF6FH , -55 ? 的数字输出为 FC90H 。DS18B20 完成温 第 6 页 xxxxxx技术职业学院毕业设计 度转换后,就把测得的温度值与 TH , TL 作比较,若 TTH 或 TTL, 则将该器件内的告警标志置位,并对主机发出的告警搜索命令作出响应。因此,可用多只 DS18B20 同时测量温度并进行告警搜索。DS1820采用3脚PR-35封装或8脚SOIC封装,管脚排列如图2.4所示。图中GND为地,I/O为数据输入/输出端(即单线总线),该脚为漏极开路输出,常态下呈高电平。VDD是外部+5V电源端,不用时应接地。NC为空脚。 图2.4 DS18B20 的管脚排列图 2.3.3 DS18B20存储器及设置寄存器 DS18B20 温度传感器的内部存储器包括一个高速暂存 RAM 和一个非易失性的可电擦除的 E2RAM, 后者存放高温度和低温度触发器 TH 、 TL 和结构寄存器。数据先写入 RAM ,经校验后再传给 E2RAM 。暂存存储器包含了 8 个连续字节,前两个字节是测得的温度信息,第一个字节的内容是温度的低八位 TL ,第二个字节是温度的高八位 TH 。第三个和第四个字节是 TH 、 TL 的易失性拷贝,第五个字节是结构寄存器的易失性拷贝,这三个字节的内容在每一次上电复位时被刷新。第六、七、八个字节用于内部计算。第九个字节是冗余检验字节,可用来保证通信正确。 主机根据 ROM 的前 56 位来计算 CRC 值,并和存入 DS18B20 中的 CRC 值做比较,以判断主机收到的 ROM 数据是否正确。分布如表2.1所示。 表2.1内部寄存分布 寄存器内容 地址 温度的低八位数据 0 温度的高八位数据 1 高温阀值 2 低温阀值 3 保留 4 保留 5 计数剩余值 6 每度计数值 7 CRC 校验 8 第 7 页 xxxxxx技术职业学院毕业设计 设置寄存器位于高速闪存的低5个字节,这个寄存器中的内容被用来确定温度的转换精度。寄存器各位的内容如表2.2下所示: 表2.2 DS18B20 的设置寄存器各位内容 BIT6 BIT0 BIT5 BIT4 BIT3 BIT2 BIT1 BIT7 R1 R0 1 TM 1 1 1 1 该寄存器的低五位一直都是1,TM是测试模式位,用于设置 DS18B20 在工作模式还是在测试模式。在 DS18B20 出厂时该位被设置为0,用户不要去改动。 R1 和 R0 用来设置分辨率由表2.3.6可知,设定的分辨率越高,所需要的温度数据转换时间就越长。因此,在实际应用中要在分辨率和转换时间权衡考虑。本次设计中采用的为12位分辨率,即750MS转换时间,如表2.2下所示: 表2.3分辨率设置 R1 R0 分辨率 温度最大转换时间 0 0 9 位 93.75 ms 0 1 10 位 187.5 ms 1 0 11 位 375 ms 0 0 12 位 750 ms 2.4 DS18B20测温原理 DS18B20其内部含有两个温度系数不同的温敏振荡器,其中低温度系数振荡器相当于标尺,高温度系数振荡器相当于测温元件,通过不断比较两个温敏振荡器的振荡周期得到两个温敏振荡器在测量温度下的振荡频率比值。根据频率比值和温度的对应曲线得到相应的温度值。这种方式避免了测温过程中的A/D转换,提高了温度测量的精度。低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器 1。高温度系数晶振随温度变化其震荡频率明显改变,很敏感的振荡器,所产生的信号作为减法计数器 2 的脉冲输入,为计数器 2 提供一个频率随温度变化的计数脉冲。图中还隐含着计数门,当计数门打开时, DS18B20 就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将 -55 ? 所对应的基数分别置入减法计数器 1 和温度寄存器 第 8 页 xxxxxx技术职业学院毕业设计 中,减法计数器 1 和温度寄存器被预置在 -55 ? 所对应的一个基数值。减法计数器 1 对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器 1 的预置值减到 0 时温度寄存器的值将加 1 ,减法计数器 1 的预置将重新被装入,减法计数器 1 重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器 2 计数到 0 时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值。 2.4.1 DS18B20 测温过程 1-WIRE 网络具有严谨的控制结构,一般通过双绞线与 1-WIRE 元件进行数据通信,它们通常被定义为漏极开路端点,主 / 从式多点结构,而且一般都在主机端接上一-WIRE 设备提供足够的电源,需要一个 MOSFET 个上拉电阻 +5V 电源。通常为了给 1管将 1-WIRE 总线上拉至 +5V 电源。1-WIRE 网络通信协议是分时定义的,有严格的时隙概念,图2.5所示。 图2.5脉冲的时隙 DS18B20 单线通信功能是分时完成的,他有严格的时隙概念,如果出现序列混乱,1-WIRE 器件将不响应主机,因此读写时序很重要。系统对 DS18B20 的各种操作必须按协议进行。根据 DS18B20 的协议规定,微控制器控制 DS18B20 完成温度的转换必须经过以下 4 个步骤 : (1)每次读写前对 DS18B20 进行复位初始化。复位要求主 CPU 将数据线下拉 500us ,然后释放, DS18B20 收到信号后等待 16us,60us 左右,然后发出 60us,240us 的存在低脉冲,主 CPU 收到此信号后表示复位成功。 (2)发送一条 ROM 功能指令,如表2.4所示: 第 9 页 xxxxxx技术职业学院毕业设计 表2.4 DS18B20 的 ROM 指令集 指令名称 指令代码 指令功能 读 DS18B20ROM 中的序列号(即读 读 ROM 33H 64 位地址) 发出此命令之后,接着发出 64 位 ROM 匹配(符合 ROM 编码,访问单总线上与编码相55H ROM ) 对应 DS18B20 使之作出响应,用于多个DS18B20时定位 用于确定挂接在同一总线上 搜索 ROM 0F0H DS18B20 的个数和识别 64 位 ROM 地址,为操作各器件作好准备 忽略 64 位 ROM 地址,直接向 跳过 ROM 0CCH DS18B20 发温度变换命令,该命令将针对所有在线的DS18B20 该指令执行后,只有温度超过设定值警报搜索 0ECH 上限或下限的片子才做出响应 (3)发送存储器指令,如表2.5所示: 表2.5 DS18B20 的存储器指令集 指令名称 指令代码 指令功能 启动 DS18B20 进行温度转换,转换时间最长为 500ms (典型为 温度变换 44H 200ms ),结果存入内部 9 字节 RAM 中 读暂存器 0BEH 读内部RAM中9位温度值和CRC值 发出向内部 RAM 的第3 ,4字节写写暂存器 4EH 上,下限温度数据命令,紧跟该命令之后,是传送两字节的数据 将 RAM 中第 3 , 4 字节的内容复复制暂存器 48H 制到 EEPROM 中 EEPROM 中的内容恢复到 RAM 中重调 EEPROM 0B8H 的第 3 , 4 字节 读 DS18B20 的供电模式,寄生供电读供电方式 0B4H 时 DS18B20 发送“ 0 ”,外接电源供电 DS18B20 发送“ 1 ” 第 10 页 xxxxxx技术职业学院毕业设计 2.4.2 DS18B20使用注意事项 DS1820 在实际应用中应注意以下几方面的问题: 1)每一次读写之前都要对 DS18B20 进行复位,复位成功后发送一条 ROM 指 (令,最后发送 RAM 指令,这样才能对 DS18B20 进行预定的操作。复位要求主 CPU 将数据线下拉 500 微秒,然后释放, DS18B20 收到信号后等待 16 , 60 微秒左右,后发出 60 , 240 微秒的存在低脉冲,主 CPU 收到此信号表示复位成功。(所有的读写时序至少需要 60us ,且每个独立的时序之间至少需要 1us 的恢复时间。在写时序时,主机将在下拉低总线 15us 之内释放总线,并向单总线器件写 1 ;若主机拉低总线后能保持至少 60us 的低电平,则向单总线器件写 0 。单总线仅在主机发出读写时序时才向主机传送数据,所以,当主机向单总线器件发出读数据指令后,必须马上产生读时序,以便单总线器件能传输数据。) (2)在写数据时,写 0 时单总线至少被拉低 60us, 写 1 时 ,15us 内就得释放总线。 (3)转化后得到的 12 位数据,存储在 18B20 的两个 8 比特的 RAM 中,二进制中的前面 5 位是符号位,如果测得的温度大于 0 ,这 5 位为 0 ,只要将测到的数值乘于 0.0625 即可得到实际温度;如果温度小于 0 ,这 5 位为 1 ,测到的数值需要取反加 1 再乘于 0.0625 即可得到实际温度。 (4)较小的硬件开销需要相对复杂的软件进行补偿,由于 DS1820 与微处理器间采用串行数据传送,因此,在对 DS1820 进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用 PL/M 、 C 等高级语言进行系统程序设计时,对 DS1820 操作部分最好采用汇编语言实现。 (5)在 DS1820 的有关资料中均未提及单总线上所挂 DS1820 数量问题,容易使人误认为可以挂任意多个 DS1820 ,在实际应用中并非如此。当单总线上所挂 DS1820 超过 8 个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。 连接 DS1820 的总线电缆是有长度限制的。试验中,当采用普通信号电缆传(6)输长度超过 50m 时,读取的测温数据将发生错误。当将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达 150m ,当采用每米绞合次数更多的双绞线带屏蔽电缆时,正常通讯距离进一步加长。这种情况主要是由总线分布电容使信号波形产生畸变造成的。因此,在用 DS1820 进行长距离测温系统设计时要充分考虑总线分布电容和阻抗匹配问题。测温电缆线建议采用屏蔽 4 芯双绞线,其中一对线接地线与信号线,另一组接 VCC 和地线,屏蔽层在源端单点接地。 第 11 页 xxxxxx技术职业学院毕业设计 第3章 系统的硬件电路设计 绘制电路图,我们选用Protell99绘图软件绘制,Protell是Altium公司在80年代末推出的EDA软件,在电子行业的CAD软件中,它当之无愧地排在众多EDA软件的前面,是电子设计者的首选软件,它较早就在国内开始使用,在国内的普及率也最高,有些高校的电子专业还专门开设了课程来学习它,几乎所有的电子公司都要用到它,许多大公司在招聘电子设计人才时在其条件栏上常会写着要求会使用Protell。 3.1 单片机最小系统电路的设计 目前的单片机开发系统只能够仿真单片机,却没有给用户提供一个通用的最小系统。由设计的要求,只要做很小集成度的最小系统应用在一些小的控制单元。其应用特点是: (1)全部I/O口线均可供用户使用。 (2)内部存储器容量有限(只有4KB地址空间)。 (3)应用系统开发具有特殊性 图 3.1 最小系统图 单片机最小系统如图3.1所示,其中有4个双向的8位并行I/O端口,分别记作P0、P1、P2、P3,都可以用于数据的输出和输入,P3口具有第二功能为系统提供一些控制信号。时钟电路用于产生MCS-51单片机工作所必须的时钟控制信号,内部电路在时钟 第 12 页 xxxxxx技术职业学院毕业设计 信号的控制下,严格地按时序指令工作。MCS-51内部有一个用于构成振荡器的高增益反向放大器,该高增益反向放大器的输入端为芯片的引脚XTAL1,输出端为XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成了一个稳定的自激振荡器。电路中的微调电容通常选择为30pF左右,该电容的大小会影响到振荡器频率的高低、振荡器的稳定性和起振的快速性。晶体的振荡频率为12MHz。 4Kbyte把EA脚接高电平,单片机访问片内程序存储器,但在PC值超过0FFFH(地址范围)时,将自动转向执行外部程序存储器内的程序。 MCS-51的复位是由外部的复位电路来实现。采用最简单的外部按键复位电路。按键自动复位是通过外部复位电路的来实现的.我们选用时钟频率为12MHz,C1取47f。 3.2 温度传感电路设计 DS18B20的性能 (1) 采用单总线专用技术,既可通过串行口线,也可通过其它I/O口线与微机接口,无须经过其它变换电路,直接输出被测温度值(9位二进制数,含符号位)。 (2) 测温范围为-55?-+125?,测量分辨率为0.0625?。 (3) 内含64位经过激光修正的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论