基于AT89C51单片机电子体温计设计

合集下载

(完整word版)基于AT89C51单片机数字温度计的设计

(完整word版)基于AT89C51单片机数字温度计的设计

基于AT89C51单片机数字温度计的设计一、项目概述在生活和生产中,人们经常要用到一些测温设备,但是传统的测温设备具有制作成本高、硬件电路和软件设计复杂登缺点。

基于AT89C51的数字温度计具有制作简单、成本低、读数方便、测温范围广等优点,应用前景广泛。

二、项目要求基于AT89C51的数字温度计的具体要求如下:1.温度值用LED显示。

2.测温范围为-30~100℃,且测量误差不大于±0.5℃。

3.成品的体积、质量尽可能小。

三、设计框图及流程图1 主控制器单片机AT89S51具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电。

2 显示电路显示电路采用4位共阳LED数码管。

3温度传感器DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。

DS18B20的性能特点如下:●独特的单线接口仅需要一个端口引脚进行通信;●多个DS18B20可以并联在惟一的三线上,实现多点组网功能;●无须外部器件;●可通过数据线供电,电压范围为3.0~5.5V;●零待机功耗;●温度以9或12位数字;●用户可定义报警设置;●报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件; ●负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;DS18B20采用3脚PR -35封装或8脚SOIC 封装,其内部结构框图如下图所控制器使用单片机AT89C51,测温传感器使用DS1820,用4位共阳极LED 数码管以动态扫描法实现温度显示,电路图如图1所示:图1.电路原理图五、软件设计1.程序流程图主程序的主要是负责温度的实时显示,读出并处理DS1280测量的当前温度值,温度测量每1s进行一次。

基于AT89C51单片机的数字温度计的设计与研究

基于AT89C51单片机的数字温度计的设计与研究

科 技 天 地58INTELLIGENCE基于AT89C51单片机的数字温度计的设计与研究长春职业技术学院 丁 磊 佟 彤摘 要:随着现代信息技术的飞速发展和传统工业改造的逐步实现.能够独立工作的温度检测和显示系统应用于诸多领域。

本文将介绍一种基于AT89C51单片机数字温度计,本温度计具有以下创新功能:高低温告警、温度储存、温度自动调节。

关键词:单片机 数字温度控制 AT89C51 DS18B20一、概述随着现代信息技术的飞速发展和传统工业改造的逐步实现,能够独立工作的温度检测和显示系统被应用于诸多领域。

传统的温度检测以热敏电阻为温度敏感元件。

热敏电阻的成本低,但需后续信号处理电路,而且可靠性相对较差,测温准确度低,检测系统也有一定的误差。

与传统的温度计相比,本项目设计的数字温度计具有读数方便,测温范围广,测温精确,数字显示,适用范围宽等特点。

该温度计具有制作简单、成本低、读数方便、测温范围广和测温准确等优点,应用前景广泛。

二、设计方案选用AT89C51型单片机作为主控制器件,DS18B20作为测温传感器,通过4个共阳极LED 数码管串口传送数据,实现温度显示。

通过DSl8820直接读取被测温度值,进行数据转换,该器件的物理化学性能稳定,线性度较好,在-30℃~150℃最大误差小于正负0.5℃。

该器件可直接向单片机传输数字信号,便于单片机处理及控制。

另外,该温度计还能直接采用测温器件测量温度,从而简化数据传输与处理过程。

1.单片机的选择AT89C51单片机作为该系统设计的核心元器件。

该元器件是Intel 公司生产的5l 系列单片机中最典型的产品,采用了可靠的高性能CMOS 8位工艺制造技术的单片机。

AT89C2051是一种带2K 字节闪烁可编程可擦除100次的只读存储器的单片机。

它不仅结合了HMOS 的高速和高密度技术及CHMOS 的低功耗特征,而且继承和扩展了MCS 一48单片机的体系结构和指令系统。

基于AT89C51单片机温度报警系统设计与制作.

基于AT89C51单片机温度报警系统设计与制作.

一、摘要我们介绍的是一种基于单片机控制的数字温度报警,本温度系统具有多功能性,即可以当数字温度计使用,显示当前环境温度,又可以作为报警器使用,设置报警温度,当温度不在设置范围内时,可以报警,并采取措施使温度下降。

该温度报警系统控制器使用单片机AT89C51,测温传感器使DS18B20,用2位共阳极LED数码管,实现温度显示,能准确达到以上要求。

二、设计方案1、方案一由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。

2、方案二进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。

从以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计也比较简单,故采用了方案二。

温度报警系统电路设计总体设计方框图如图1所示1、单片机主板电路单片机AT89C51具有低电压供电和体积小等特点,该模块包括中央处理CPU -AT89C51、时钟电路及复位电路;图2复位电路图3 时钟电路2、DS18B20温度传感器与单片机的接口电路DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。

DS18B20是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。

该电路完成了信号的采集、转换和传输。

图43、上下限报警调整电路分别调整温度的上下限报警设置,有“+“、”“-”、“确定”等键图5上下限报警调整电路4、温度显示电路显示当前测得的温度,数码管采用74LS247驱动图6温度显示电路5、报警电路当环境温度超过设定温度时,蜂鸣器鸣叫,红灯点亮,发生报警;当人员发现警报时,可按图8中的按钮,暂时中断蜂鸣器的鸣叫。

基于AT89C51单片机的数字温度显示计

基于AT89C51单片机的数字温度显示计
基于AT89C51单片机的课程设计
一、设计任务 二、电路原理图 三、流程图的绘制及说明 四、Proteus仿真
一、设计任务
• 本次设计是基于AT89C51单片机的数字温 度计。该单片机与MCS-51系列单片机完全 兼容、工作性能优良、性价比较高。温度 转换器采用DS18B20数字温度传感器,它 是一种智能温度传感器,具有结构简单、 分辨率高等优点。 • 本次设计的温度计可实现 10-50℃ 范围内 的温度显示,可以设定温度的上下限仿真
• 首先,添加仿真文件,双击AT89C51后,在 Program File选项中添加通过伟福编译器编译后 生成的后缀为.hex的文件,单击确定完成文件添 加。 • 然后单击菜单栏“源代码”选项,选择“全部编 译”,然后选择“调试”菜单选项下的“执行”, 系统开始运行,进行温度测量和显示工作 。 • 调整DS18B20的测量温度,数码管可以对应显示 结果。当温度在10~50℃之间变化时,报警指示 灯D2不亮;当温度低于10℃,或者大于等于50℃ 时,报警指示灯D2被点亮。
二、电路原理图
应用Proteus ISIS软件绘制的原理图如图1 所示:
图1 电路原理图
三、流程图的绘制及说明
• 本次设计采用汇编方法编写源程序,并使用伟福 编译器进行编译生成Proteus仿真软件所需要 的.hex文件。 • 设计步骤是先将温度传感器DS18B20的转换数据 读入到单片机AT89C51,再将读到的补码形式二 进制数据转换为BCD码,然后将BCD码通过查表 得到7段显示码送数码管显示。故主程序需要调用 读温度子程序、温度BCD码计算处理子程序、显 示BCD码刷新子程序等主要子程序,此外这些子 程序还需要调用DS18B20复位初始化子程序、读 出转换后的温度值、写DS18B20的子程序和延时 等子程序。 • 主程序流程图如图2所示 :

基于AT89C51的数字体温计设计

基于AT89C51的数字体温计设计

摘要随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研等各个领域,已经成为一种比较成熟的技术,采用单片机控制已经成为了一种潮流。

现代信息技术的三大基础是信息采集(即传感器技术)、信息传输(通信技术)和信息处理(计算机技术)。

传感器属于信息技术的前沿尖端产品,尤其是温度传感器种类日益繁多,数字温度传感器更因适用于各种微处理器接口组成的自动温度控制系统具有可以克服模拟传感器与微处理器接口时需要信号调理电路和A/D转换器的弊端等优点,被广泛应用于工业控制、电子体温计、测温仪器等各种温度控制系统中。

本文将介绍一种基于STC89C52单片机控制的数字体温计,配合采用DS18B20为温度采集模块,HS1602液晶显示模块显示结果,另外用MAX232模块进行电压转换,实现对体温的采集与再现。

关键词:52单片机,DSI8B20,HS1602,体温计THE DIGITAL THERMOMETERS DESIGN BASED ON STC89C52’S MINUIMUM SYSTEMABSTRACTWith the progress and development, microcontroller technology has spread to our lives, work, research and other fields, has become a relatively mature technology, using SCM has become a trend. Modern information technology is based on the three information collection (ie, sensor technology), information transfer (ICT) and information processing (computer technology). Sensor belongs to the forefront of cutting-edge information technology products, especially the increasingly diverse types of temperature sensors, digital temperature sensor is more suitable for a variety of microprocessor interface for the composition of the automatic temperature control system can overcome the analog sensors and signal conditioning required for microprocessor interfacing circuit and A / D converter defects, etc., are widely used in industrial control, electronic thermometer, thermometer, etc. of various temperature control systems. This article describes a microcontroller based control ofdigital thermometers STC89C52, with the use of DS18B20 the temperature acquisition module, HS1602 liquid crystal display module displays the results, another module with a MAX232 voltage conversion, acquisition and representation of body temperature.KEYWORDS:52 microcontroller, DSI8B20, HS1602, thermometer目录1引言--------------------------------------------------------------------------------------------------------------- 1 2总体设计--------------------------------------------------------------------------------------------------------- 22.1方案论证 ------------------------------------------------------------------------------------------------- 22.1.1单片机系统--------------------------------------------------------------------------------------- 22.1.2电源模块------------------------------------------------------------------------------------------ 22.1.3温度传感器--------------------------------------------------------------------------------------- 22.1.4显示模块------------------------------------------------------------------------------------------ 32.1.5确定方案------------------------------------------------------------------------------------------ 32.2总体设计 ------------------------------------------------------------------------------------------------- 3 3硬件设计--------------------------------------------------------------------------------------------------------- 43.1 单片机系统 --------------------------------------------------------------------------------------------- 43.2电源模块 ------------------------------------------------------------------------------------------------- 63.3 复位电路 ------------------------------------------------------------------------------------------------ 63.4 时钟振荡电路 ------------------------------------------------------------------------------------------ 73.5单片机最小系统 ---------------------------------------------------------------------------------------- 73.6温度传感器模块 ---------------------------------------------------------------------------------------- 83.6.1 DS18B20原理 ----------------------------------------------------------------------------------- 83.6.2 DS18B20电路连接 --------------------------------------------------------------------------- 103.7液晶显示模块 ----------------------------------------------------------------------------------------- 113.8 串口通信模块 ---------------------------------------------------------------------------------------- 13 4软件设计------------------------------------------------------------------------------------------------------- 164.1 软件流程 ---------------------------------------------------------------------------------------------- 164.2 DS18B20模块程序设计 -------------------------------------------------------------------------- 174.3 HS1602驱动程序设计 ------------------------------------------------------------------------------ 174.4 RS-232-C串口通信模块程序设计 ---------------------------------------------------------------- 18 5结果分析------------------------------------------------------------------------------------------------------- 19 6结语------------------------------------------------------------------------------------------------------------- 20 参考文献: ------------------------------------------------------------------------------------------------------ 21 附录1 完全电路图 -------------------------------------------------------------------------------------------- 22 附录2 部分源程序 -------------------------------------------------------------------------------------------- 231引言随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温体温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从单片机技术入手,一切向着数字化控制,智能化控制方向发展。

基于AT89C51的温度控制系统设计

基于AT89C51的温度控制系统设计

基于AT89C51的温度控制系统设计冯晓锋西安翻译学院实验中心摘要:本系统是基于AT89C51单片机和DS18B20数字温度传感器的智能温度控制系统,根据要求可进行最高和最低温度的设定,通过RS-485总线标准实现与PC机的远程通信,实现PC机对采集温度的存储、处理、打印等功能。

关键字:AT89C51 数字温度传感器温度控制系统一、系统总体结构设计根据设计要求对某指定地点的温度进行实时的监测与控制,采用了分布式系统的控制方式,即在测控点配置能独立工作的从机,从机由主机进行监控管理,上下采用主从式监控管理形式,系统总体结构如图1所示。

图1 系统总体结构系统的各个部分功能和关系如下:①主机为管理机,完成参数设置、数据存储、处理及管理及打印功能。

②从机为控制机,采用单片机AT89C51,直接实现各个模块的控制功能,并能在主机关机的条件下实现所有的控制功能。

③通讯转换芯片MAX485实现RS-232信号和RS-485信号的转换,主机通过其向从机发送控制参数,从机将现场采集数据通过其传给主机。

④数据采集实现对传感器及运行设备的检测。

⑤输入输出部分包括输入模块和输出模块,输入模块将采集的信号转换后输入到从机,输出模块将系统的控制信号输出到控制器及其设备。

二、系统工作方式系统以温度监控为核心,温度参数和设备运行状态由主机根据用户要求定时向从机查询,各控制模块的设置参数修改时,将新的参数发送到从机。

主机可以对从机进行参数设置及控制,从机也可以独立工作。

从机通过温度传感器不间断地采集温度数据,根据控制模块的设置参数做出控制决策,驱动设备运行,并随时准备接受主机的指令,当受到询问时,将各项数据编码通过串行通信方式传输到主机。

主机接收到数据后,进行数据处理,在监控界面上显示当前的状态信息,并将此信息实时地存储到数据库中,为用户维护和管理准备数据。

对数据可以进行查询,也可以将一段时期的数据信息汇集成报表,报表包括各项统计数据,还可以将数据处理绘制成图形曲线,实现对数据的分析与管理。

基于单片机AT89C51数字温度计的设计

基于单片机AT89C51数字温度计的设计

摘要随着科技的不断发展,现代社会对各种信息参数的精确度和准确度的要求都有了很大的增长,而如何准确和迅速的获得这些参数就需要受制于现代信息技术的发展水平。

目前的智能温度传感器(亦称为数字温度传感器)是在20世纪90年代问世的,是微电子技术、计算机技术和自动测试技术(ATE)的结合。

它的特点是能输出温度数据和相关的温度控制量,适合各种微控制器(MCU)。

社会的发展使得人们对传感器的要求也越来越高,现在的温度传感器正在基于单片机的基础之上从模拟到数字式,从集成化到智能化、网络化的发展,并且朝着多功能。

高精度、总线标准化、高安全性和可靠性、开发网络传感器和虚拟传感器、研制单片测温系统等高科技的方向迅速发展。

本文将介绍智能集成温度传感器DS18B20的结构特征和控制方法,并对以此传感器,89C51单片机为控制器构成的数字温度计测量装置的工作原理和程序设计做了详细的介绍。

和传统的温度计相比它具有测量广泛,读数方便,测温准确,输出温度采用数字显示,主要用于对测温要求比较准确的场所,或者是科研实验室使用。

该设计控制器使用ATMEL公司的AT89S51单片机,测温传感器使用DALLAS公司的DS18B20,用液晶显示器来实现温度显示。

关键词:18B20 单片机 LEDABSTRACTWith the development of science and technology, precision and accuracy of modern society on various parameters of information requirements, there has been a lot of growth, and how accurate and fast access to these parameters will need to be subject to the level of development of modern information technology.Current smart temperature sensor (also referred to as digital temperature sensor) is launched in in the 1990 of the 20th century, is micro-electronics technology, computer technology and automated testing technologies (ATE) combination. It features the output temperature data and related temperature control, suitable for various microcontroller (MCU). Society tends to make people's requirements have become more sophisticated about sensors, temperature sensors are now based on single-chip industry from analog to digital, from integration to the development of intelligent, networked, and versatile. High accuracy, standardization, high security and reliability, to develop bus networks sensors and virtual sensors, development of single-chip microcomputer temperature measuring system and the rapid development of high technology. This article describes the architecture of intelligent integrated temperature sensor DS18B20 feature and control method, and with this sensor, 89S51 single-chip controller working principle and design of a digital thermometer measurement unit is introduced in detail. And it has measured a wide range than traditional thermometers, reading, accuracy of temperature measurement, the output temperature with digital display, place used primarily for accurate temperature measurement requirements, or a research laboratory. The design of controller using ATMEL's AT89S51 single-chip, DS18B20 temperature sensor using the DALLAS company, realizes with the LCD temperature display.Keywords: 18B20 Single-chip microcomputer LED目录第1章前言 (1)第2章数字温度计总体设计方案 (2)2.1数字温度计设计方案 (2)2.2总体设计框图 (2)第3章数字温度计硬件设计 (3)3.1主控制器AT89C51 (3)3.1.1 AT89C51的特点及特性: (3)3.1.2管脚功能说明: (3)3.1.3片内振荡器: (5)3.1.4芯片擦除: (6)3.2单片机主板电路 (7)3.3温度采集部分的设计 (7)3.3.1温度传感器DS18B20 (7)3.4显示部分电路设计 (12)3.4.1 74LS164引脚功能及特性 (13)3.4.2温度显示电路 (13)3.5报警系统电路 (14)第4章数字温度计的软件设计 (16)4.1系统软件设计的流程图 (16)4.2数字温度计部分程序清单 (18)结论 (24)致谢 (25)参考文献 (26)第1章前言随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研,各个领域,已经成为一种比较成熟的技术,本文将介绍一种基于单片机控制的数字温度计,本温度计属于多功能温度计,可以设置上下报警温度,当温度不在设置范围内时,可以报警。

基于AT89C51单片机的温度计设计

基于AT89C51单片机的温度计设计

引言概述:AT89C51单片机是一种常用的单片机型号,广泛应用于各种数字电子设备中。

本文将基于AT89C51单片机,设计一款温度计,用于测量环境温度。

通过该设计,可以实时监测环境温度,并将温度值以数字形式显示在屏幕上,提供给用户参考。

正文内容:1. 硬件设计1.1 传感器选择首先,需要选择适合的传感器来测量环境温度。

常见的温度传感器有热敏电阻、温度传感器模块等。

在本设计中,选择了DS18B20温度传感器模块,该传感器具有精度高、体积小等特点,适合本温度计的设计需求。

1.2 电路连接在硬件设计中,需要将DS18B20温度传感器模块与AT89C51单片机相连。

具体步骤如下:1) 将DS18B20传感器的VCC引脚连接至单片机的VCC引脚,将GND引脚连接至单片机的GND引脚,将DQ引脚连接至单片机的P1口,通过电阻和电容设置硬件复位电路。

2) 设置单片机的相应引脚为输入或输出引脚,使其与传感器的引脚相对应,并根据需要设置引脚的电平状态。

3) 根据DS18B20传感器的通信协议,使用单片机的串口通信功能与传感器进行通信,获取温度值。

2. 软件设计2.1 程序框架在软件设计中,需要设计相应的程序框架,以实现温度的测量与显示。

整体的程序框架如下:1) 初始化单片机的串口通信功能,设置波特率等参数。

2) 初始化DS18B20传感器,包括设定分辨率、温度精度等参数。

3) 循环读取传感器的温度数值,并进行必要的温度转换处理。

4) 将处理好的温度数值通过单片机的数码管显示出来。

2.2 温度转换在软件设计中,需要对从传感器获取的温度数值进行转换处理,以得到真实的温度值。

具体的转换公式如下:1) 首先,读取传感器内部存储器中的原始温度数据。

2) 根据DS18B20传感器的配置,进行温度计算。

3) 最后,将计算得到的温度值转换为摄氏度或华氏度,并存储到相应的变量中,以便后续显示。

3. 测试与调试在进行实际应用之前,需要对设计的温度计进行测试与调试,确保其功能正常。

基于单片机AT89C51芯片DS18B20传感器的智能温度计设计

基于单片机AT89C51芯片DS18B20传感器的智能温度计设计

专业课程设计报告题目:基于单片机的数字温度计设计所在学院专业班级学生姓名学生学号同组队员指导教师提交日期2012年12月13 日电气工程学院专业课程设计评阅表学生姓名学生学号同组队员专业班级题目名称基于单片机的数字温度计设计一、学生自我总结二、指导教师评定目录一、设计目的 (1)二、设计要求和设计指标 (1)三、设计内容 (1)3.1主控制电路 (2)3.1.1 晶振电路 (2)3.1.2 复位电路 (2)3.2 测温电路 (3)3.3 显示电路 (3)3.4 仿真分析 (4)四、本设计改进建议 (5)五、总结 (5)六、主要参考文献 (6)附录6一、设计目的这次基于单片机的温度计设计,加强了我对单片机的理论了解,也深入学习了单片机线路的设计和编程。

理论联系实际,通过自己对基于51芯片的单片机板设计,熟悉了各元件的识别和作用,也掌握了如何使用Protues画线路图。

还加强掌握了C语言的编程应用,学习了使用Keil对单片机编程,并通过Protues进行仿真。

通过这次实训,学到东西之余,也增强了动手能力,提高了学习的兴趣,培养了创新意识。

二、设计要求和设计指标(1) 设计一个数字温度计,实现温度的采集,范围0-100℃,误差小于0.1℃;(2)选择单片机作为主控器;(3)选择合适的温度传感器进行温度测试;(4)能把采集到的温度显示出来。

三、设计内容这次设计,我们采用了AT89C51单片机芯片,做一个采温、显示功能的数字温度计。

在测温电路上,可以采用热敏电阻(如PT100)之类的器件,利用其感温效应,然后采集不同温度下的电压或者电流,进行A/D转换,然后通过单片机的数据处理,就可以获得所测的温度。

但这种设计电路较为复杂,还涉及到A/D转换,在程序的设计上面也相应变得复杂一些。

因此这次设计不予采用。

而是选择温度传感器DS18B20,DS18B20读书较为方便,通过对温度的采集,经过单片机的处理,用四位的共阴极数码管显示温度值。

基于AT89C51单片机的心率体温测量仪设计

基于AT89C51单片机的心率体温测量仪设计
序时需注意读写时序否则测温结果出现混乱脉冲频率仿真值ledmpx2100检测的心率信号送at89c51的p34口采用0848亮中断完成存储计数值设为零之后对定时器初始化然后0954亮不亮计数之后判断是否计时到达若没满则继续计106010s10s
己 口 I ] 年 ]月
第] 己 卷 e mp e r a t u r e s e n s o r — DS 1 8 B2 0 t o a c q u i r e t h e s i g n a l o f t e mp e r a t u r e , a n d i t a d o p t s p r e s s u r e s e n s o r — M PX2 1 0 0 t o a c q u i r e t h e
s i g n a l o f h e a r t r a t e , t h e n i t s e n d s t h e m i n t o mi c r o c o n t r o l l e r — A T8 9 S 5 1 .The s o f t wa r e u s e s C l a n g u a g e p r o g r a mm i n g t O p r o c e s s e s t h e c o l l e c t e d s i g n a l s b y A T8 9 C5 l a n d t h e n d i s p l a y s t h e m t h r o u g h t h e l i q u i d c r y s t a 1 . Th e s y s t e m s h o ws t h a t i t
a c c o r d s wi t h t he e x p e c t e d d e s i g n t h r o u g h Pr o t e u s s i mu l a t i o n.

基于AT89C51单片机和DS18B20的数字温度计

基于AT89C51单片机和DS18B20的数字温度计

基于AT89C51单片机和DS18B20的数字温度计1课题说明随着现代信息技术的飞速发展和传统工业改造的逐步实现;能够独立工作的温度检测和显示系统应用于诸多领域..传统的温度检测以热敏电阻为温度敏感元件..热敏电阻的成本低;但需后续信号处理电路;而且可靠性相对较差;测温准确度低;检测系统也有一定的误差..这里设计的数字温度计具有读数方便;测温范围广;测温精确;数字显示;适用范围宽等特点..本设计选用AT89C51型单片机作为主控制器件;DS18B20作为测温传感器;通过LCD1602实现温度显示..通过DS18B20直接读取被测温度值;进行数据转换;该器件的物理化学性能稳定;线性度较好;在0℃~100℃最大线性偏差小于0.01℃..该器件可直接向单片机传输数字信号;便于单片机处理及控制..另外;该温度计还能直接采用测温器件测量温度;从而简化数据传输与处理过程..2 实现方法采用数字温度芯片DS18B20 测量温度;输出信号全数字化..采用了单总线的数据传输;由数字温度计DS18B20和AT89C51单片机构成的温度测量装置;它直接输出温度的数字信号;也可直接与计算机连接..采用AT89C51单片机控制;软件编程的自由度大;可通过编程实现各种各样的算术算法和逻辑控制;而且体积小;硬件实现简单;安装方便..该系统利用AT89S51芯片控制温度传感器DS18B20进行实时温度检测并显示;能够实现快速测量环境温度;并可以根据需要设定上下限温度..该系统扩展性非常强..该测温系统电路简单、精确度较高、实现方便、软件设计也比较简单..系统框图如图1所示..图1 DS18B20温度测温系统框图3 硬件设计3.1 单片机最小系统设计3.1.1 电源电路图2 电源电路3.1.2 振荡电路与复位电路图3 振荡电路图4 复位电路3.2 DS18B20与单片机的接口电路图5 DS18B20与单片机的接口电路3.3 PROTEUS仿真电路图图6 PROTEUS仿真电路图4 软件设计系统程序主要包括主程序、读取温度子程序、数据转换子程序、显示数据子程序等..4.1 程序流程4.1.1 主程序流程图主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值;温度测量每1s进行一次..这样可以在一秒之内测量一次被测温度;其程序流程见图7所示..图7 主程序流程图4.1.2 各子程序流程图1、初始化程序所有操作都必须由初始化脉冲开始;波形如图;单片机先输出一个480~960us低电平到DQ引脚;再将DQ引脚置高电平;过15~60us后检测DQ引脚状态;若为低电平则DS18B20工作正常;否则初始化失败;不能正常测量温度..2、读取温度子程序读取温度子程序的主要功能是读出RAM中的9字节;在读出时需进行CRC校验;校验有错时不进行温度数据的改写..主要包括以下三个命令:1写暂存器命令 4EH这个命令为由TH寄存器开始向DS18B20暂存器写入数据;4EH命令后的3字节数据将被保存到暂存器的地址2、3、4TH、TL、CONFIG三个字节..所有数据必须在复位脉冲前写完..即如果只想写一个字节的数据到地址2;可按如下流程:1、初始化;2、写0CCH;跳过ROM检测;3、写4EH;4、写1字节数据;5、复位;即向DQ输出480~960us低电平2读暂存命令BEH这个命令由字节0读取9个暂存器内容;如果不需要读取所有暂存内容;可随时输出复位脉冲终止读取过程3转换温度命令44H这个命令启动温度转换过程..转换温度时DS18B20保持空闲状态;此时如果单片机发出读命令; DS18B20将输出0直到转换完成;转换完成后将输出1..图8 读取温度子程序3、写流程图写时隙:写时隙由DQ引脚的下降沿引起..18B20有写1和写0两种写时隙..所有写时隙必须持续至少60μs;两个时隙之间至少有1μs的恢复时间..DS18B20在DQ下降沿后15μs~60μs间采样DQ引脚;若此时DQ为高电平;则写入一位1;若此时DQ为低电平;则写入一位0;如图9所示..所以;若想写入1;则单片机应先将DQ置低电平;15us后再将DQ置高电平;持续45μs;若要写入0;则将DQ置低电平;持续60μs..图9 写流程图4、读流程图读时隙:读时隙由DQ下降沿引起;持续至少1μs的低电平后释放总线DQ置1DS18B20的输出数据将在下降沿15μs后输出;此时单片机可读取1位数据..读时隙结束时要将DQ置1..所有读时隙必须持续至少60μs;两个时隙之间至少有1μs的恢复时间..图10 读流程图4.4 汇编语言程序源代码DATA_BUS BIT P3.3FLAG BIT 00HTEMP_L EQU 30HTEMP_H EQU 31HTEMP_DP EQU 32HTEMP_INT EQU 33HTEMP_BAI EQU 34HTEMP_SHI EQU 35HTEMP_GE EQU 36HDIS_BAI EQU 37HDIS_SHI EQU 38HDIS_GE EQU 39HDIS_DP EQU 3AHDIS_ADD EQU 3BHORG 0000HAJMP STARTORG 0050HSTART:MOV SP; #40H MAIN: LCALL READ_TEMP LCALL PROCESSAJMP MAIN;读温度程序READ_TEMP:LCALL RESET_PULSEMOV A; #0CCHLCALL WRITEMOV A; #44HLCALL WRITELCALL DISPLAYLCALL RESET_PULSEMOV A; #0CCHLCALL WRITEMOV A; #0BEHLCALL WRITELCALL READRET;复位脉冲程序RESET_PULSE:RESET: SETB DATA_BUSNOPNOPCLR DATA_BUSMOV R7; #255DJNZ R7; $SETB DATA_BUSMOV R7; #30DJNZ R7;$JNB DATA_BUS; SETB_FLAG CLR FLAGAJMP NEXTSETB_FLAG:SETB FLAGNEXT: MOV R7; #120DJNZ R7; $SETB DATA_BUSJNB FLAG; RESETRET;写命令WRITE: S ETB DATA_BUSMOV R6; #8CLR CWRITING:CLR DATA_BUSMOV R7; #5DJNZ R7; $RRC AMOV DATA_BUS; CMOV R7; #30HDJNZ R7; $SETB DATA_BUSNOPDJNZ R6; WRITINGRET;循环显示段位DISPLAY:MOV R4; #200DIS_LOOP:MOV A; DIS_DPMOV P2; #0FFHMOV P0; ACLR P2.7LCALL DELAY2MSMOV A; DIS_GEMOV P2; #0FFHMOV P0; ASETB P0.7CLR P2.6LCALL DELAY2MSMOV A; DIS_SHIMOV P2; #0FFHMOV P0; ACLR P2.5LCALL DELAY2MSMOV A; DIS_BAIMOV P2; #0FFHMOV P0; AMOV A; TEMP_BAICJNE A; #0;SKIPAJMP NEXTT SKIP: CLR P2.4LCALL DELAY2MS NEXTT: NOPDJNZ R4; DIS_LOOPRET;读命令READ: SETB DATA_BUS MOV R0; #TEMP_LMOV R6; #8MOV R5; #2CLR C READING:CLR DATA_BUSNOPNOPSETB DATA_BUSNOPNOPNOPNOPMOV C; DATA_BUSRRC AMOV R7; #30HDJNZ R7; $SETB DATA_BUSDJNZ R6; READINGMOV @R0; AINC R0MOV R6; #8SETB DATA_BUSDJNZ R5; READINGRET;数据处理PROCESS:MOV R7; TEMP_LMOV A; #0FHANL A; R7MOV TEMP_DP;AMOV R7; TEMP_LMOV A; #0F0HANL A; R7SWAP AMOV TEMP_L; AMOV R7; TEMP_HMOV A; #0FHANL A; R7SWAP AORL A; TEMP_LMOV B; #64HDIV ABMOV TEMP_BAI;AMOV A; #0AHXCH A; BDIV ABMOV TEMP_SHI;AMOV TEMP_GE;BMOV A; TEMP_DPMOV DPTR; #TABLE_DPMOVC A; @A+DPTRMOV DPTR; #TABLE_INTER MOVC A; @A+DPTR MOV DIS_DP; AMOV A; TEMP_GEMOV DPTR; #TABLE_INTER MOVC A; @A+DPTRMOV DIS_GE; AMOV A; TEMP_SHIMOV DPTR; #TABLE_INTER MOVC A; @A+DPTRMOV DIS_SHI; AMOV A; TEMP_BAIMOV DPTR; #TABLE_INTER MOVC A; @A+DPTRMOV DIS_BAI ;ARETDELAY2MS:MOV R6; #3LOOP3: MOV R5; #250DJNZ R5; $DJNZ R6; LOOP3RETTABLE_DP:DB00H;01H;01H;02H;03H;03H;04H;04H;0 5H;06HDB 06H;07H;08H;08H;09H;09H TABLE_INTER:DB 03FH;006H;05BH;04FH;066HDB 06DH;07DH;07H;07FH;06FHEND5 DS18B20简单介绍DALLAS 最新单线数字温度传感器DS18B20是一种新型的“一线器件”;其体积更小、更适用于多种场合、且适用电压更宽、更经济..DALLAS 半导体公司的数字化温度传感器DS18B20是世界上第一片支持“一线总线”接口的温度传感器..温度测量范围为-55~+125 摄氏度;可编程为9位~12 位转换精度;测温分辨率可达0.0625摄氏度;分辨率设定参数以及用户设定的报警温度存储在EEPROM 中;掉电后依然保存..被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可以在远端引入;也可以采用寄生电源方式产生;多个DS18B20可以并联到3 根或2 根线上;CPU只需一根端口线就能与诸多DS18B20 通信;占用微处理器的端口较少;可节省大量的引线和逻辑电路..因此用它来组成一个测温系统;具有线路简单;在一根通信线;可以挂很多这样的数字温度计;十分方便..5.1 DS18B20 的性能特点如下:●独特的单线接口方式;DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯●DS18B20支持多点组网功能;多个DS18B20可以并联在唯一的三线上;实现组网多点测温●DS18B20在使用中不需要任何外围元件;全部传感元件及转换电路集成在形如一只三极管的集成电路内●适应电压范围更宽;电压范围:3.0~5.5V;在寄生电源方式下可由数据线供电●温范围-55℃~+125℃;在-10~+85℃时精度为±0.5℃●零待机功耗●可编程的分辨率为9~12位;对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃;可实现高精度测温●在9位分辨率时最多在93.75ms内把温度转换为数字;12位分辨率时最多在750ms内把温度值转换为数字;速度更快●用户可定义报警设置●报警搜索命令识别并标志超过程序限定温度温度报警条件的器件●测量结果直接输出数字温度信号;以"一线总线"串行传送给CPU;同时可传送CRC校验码;具有极强的抗干扰纠错能力●负电压特性;电源极性接反时;温度计不会因发热而烧毁;但不能正常工作以上特点使DS18B20非常适用与多点、远距离温度检测系统..DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器..DS18B20的管脚排列、各种封装形式如图12所示;DQ 为数据输入/输出引脚..开漏单总线接口引脚..当被用着在寄生电源下;也可以向器件提供电源;GND为地信号;VDD为可选择的VDD引脚..当工作于寄生电源时;此引脚必须接地..图12 外部封装形式5.2 DS18B20使用中的注意事项DS18B20 虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点;但在实际应用中也应注意以下几方面的问题:●DS18B20 从测温结束到将温度值转换成数字量需要一定的转换时间;这是必须保证的;不然会出现转换错误的现象;使温度输出总是显示85..●在实际使用中发现;应使电源电压保持在5V 左右;若电源电压过低;会使所测得的温度精度降低..●较小的硬件开销需要相对复杂的软件进行补偿;由于DS1820与微处理器间采用串行数据传送;因此;在对DS1820进行读写编程时;必须严格的保证读写时序;否则将无法读取测温结果..在使用PL/M、C等高级语言进行系统程序设计时;对DS1820操作部分最好采用汇编语言实现..●在DS18B20的有关资料中均未提及单总线上所挂DS18B20 数量问题;容易使人误认为可以挂任意多个DS18B20;在实际应用中并非如此;当单总线上所挂DS18B20 超过8 个时;就需要解决微处理器的总线驱动问题;这一点在进行多点测温系统设计时要加以注意..●在DS18B20测温程序设计中;向DS18B20 发出温度转换命令后;程序总要等待DS18B20的返回信号;一旦某个DS18B20 接触不好或断线;当程序读该DS18B20 时;将没有返回信号;程序进入死循环;这一点在进行DS18B20硬件连接和软件设计时也要给予一定的重视..5.3 DS18B20内部结构图13为DS1820的内部框图;它主要包括寄生电源、温度传感器、64位激光ROM 单线接口、存放中间数据的高速暂存器内含便笺式RAM;用于存储用户设定的温度上下限值的TH 和TL 触发器存储与控制逻辑、8位循环冗余校验码CRC 发生器等七部分..DS18B20采用3脚PR -35 封装或8脚SOIC 封装;其内部结构框图如图 6所示图 13DS18B20内部结构框图64 b 闪速ROM 的结构如下:MSBLSBMSBLSBMSBLSB开始8位是产品类型的编号;接着是每个器件的惟一的序号;共有48 位;最后8位是前面56 位的CRC 检验码;这也是多个DS18B20 可以采用一线进行通信的原因..温度报警触发器TH和TL;可通过软件写入户报警上下限..主机操作ROM 的命令有五种;如表所列DS18B20 温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM..高速暂存RAM 的结构为8字节的存储器;结构如图14所示..便笺式存储器上电状态指 令 说 明读ROM33H 读DS1820的序列号匹配ROM55H 继读完64位序列号的一个命令;用于跳过ROMCCH 此命令执行后的存储器操作将针对搜ROMF0H 识别总线上各器件的编码;为操作各报警搜索ECH仅温度越限的器件对此命令作出响Byte0 Byte1 Byte2 Byte3 Byte4 Byte5 Byte6 Byte7 Byte8图 14 高速暂存RAM 结构图前2个字节包含测得的温度信息;第3和第4字节TH和TL的拷贝;是易失的;每次上电复位时被刷新..第5个字节;为配置寄存器;它的内容用于确定温度值的数字转换分辨率..DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值..温度低位 温度高位 THTL 配置 保留 保留 保留8位CRCLSB MSB当DS18B20接收到温度转换命令后;开始启动转换..转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1;2字节..单片机可通过单线接口读到该数据;读取时低位在前;高位在后;数据格式以0.062 5 ℃/LSB 形式表示..温度值格式如下:23 2221 20 2-1 2-2 2-3 2-4 MSBLSB MSBLSB这是12位转化后得到的12位数据;存储在18B20的两个8比特的RAM 中;二进制中的前面5位是符号位;如果测得的温度大于0;这5位为0;只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0;这5位为1;测到的数值需要取反加1再乘于0.0625即可得到实际温度..图中;S 表示位..对应的温度计算:当符号位S=0时;表示测得的温度植为正值;直接将二进制位转换为十进制;当S=1时;表示测得的温度植为负值;先将补码变换为原码;再计算十进制值..例如+125℃的数字输出为07D0H;+25.0625℃的数字输出为0191H;-25.0625℃的数字输出为FF6FH;-55℃的数字输出为FC90H..DS18B20温度传感器主要用于对温度进行测量;数据可用16位符号扩展的二进制补码读数形式提供;并以0.0625℃/LSB 形式表示..表2是部分温度值对应的二进制温度表示数据..表2 部分温度值温度测量值MSB50H TH 高温寄存器 TL 低温寄存器 配位寄存器 预留FFH 预留OCH 预留IOH 循环冗余码校验CRCTH 高温寄存器 TL 低温寄存器 配位寄存器SSSSS262524温度/℃ 二进制表示 十六进制表示 +125 07D0H +25.06250191H85℃E 2PRO就把测得的温度值与RAM中的TH、TL字节内容作比较;若T>TH或T<TL;则将该器件内的告警标志置位;并对主机发出的告警搜索命令作出响应..因此;可用多只DS18B20同时测量温度并进行告警搜索..在64位ROM的最高有效字节中存储有循环冗余校验码CRC..主机根据ROM的前 56位来计算CRC值;并和存入DS18B20中的CRC值做比较;以判断主机收到的ROM数据是否正确..5.4DS18B20测温原理DS18B20的测温原理如图15所示;图中低温度系数晶振的振荡频率受温度的影响很小;用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其震荡频率明显改变;所产生的信号作为减法计数器2的脉冲输入;图中还隐含着计数门;当计数门打开时;DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数;进而完成温度测量.计数门的开启时间由高温度系数振荡器来决定;每次测量前;首先将-55 ℃所对应的基数分别图15 DS18B20测温原理图在正常测温情况下;DS1820的测温分辨力为0.5℃;可采用下述方法获得高分辨率的温度测量结果:首先用DS1820提供的读暂存器指令BEH读出以0.5℃为分辨率的温度测量结果;然后切去测量结果中的最低有效位LSB;得到所测实际温度的整数部分Tz;然后再用BEH指令取计数器1的计数剩余值Cs和每度计数值CD..考虑到DS1820测量温度的整数部分以0.25℃、0.75℃为进位界限的关系;实际温度Ts可用下式计算:Ts=Tz-0.25℃+CD-Cs/CD6 总结与体会在本次设计的过程中;我发现很多的问题;虽然以前还做过这样的设计但这次设计真的让我长进了很多;单片机课程设计重点就在于软件算法的设计;需要有很巧妙的程序算法;虽然以前写过几次程序;但我觉的写好一个程序并不是一件简单的事;举个例子;以前写的那几次;数据加减时;我用的都是BCD码;这一次;我全部用的都是16进制的数直接加减;显示处理时在用除法去删分;感觉效果比较好;有好多的东西;只有我们去试着做了;才能真正的掌握;只学习理论有些东西是很难理解的;更谈不上掌握..从这次的设计中;我真真正正的意识到;在以后的学习中;要理论联系实际;把我们所学的理论知识用到实际当中;学习单机片机更是如此;程序只有在经常的写与读的过程中才能提高;这就是我在这次课程设计中的最大收获..。

基于AT89C51单片机控制的数字温度计设计

基于AT89C51单片机控制的数字温度计设计

基于AT89C51单片机控制的数字温度计设计王珍珍(吉首大学张家界学院,湖南张家界 427000)摘要数字温度计操作简单,灵活,方便,已经广泛的应用于生活的各个领域。

本课题研究了基于AT89C51单片机控制的数字温度计设计技术。

DS1620芯片是测量温度的器件,能够输出9位二进制的温度值;从DS1620传送温度数据到AT89C51,温度超过设定数值就会报警;AT89C51采集温度数据发送到七段数码管;然后数码管上就有温度显示,可以直接读取温度值。

从键盘输入数据,设定报警温度。

用单片机汇编语言编辑程序,用Protel画出系统的原理图,并对系统的各个模块进行详细的设计与分析。

系统的设计特点是引入了单片机的控制,使其在功能上具有一定智能化,实现一目了然的观察被测物的温度。

关键词:单片机AT89C51;数字温度计;DS1620;控制Design of Digital Thermograph Based on AT89C51 ControlWang Zhenzhen(College ofZhangJiaJie,Jishou University, Zhangjiajie,Hunan 427000)AbstractDigital thermograph is simple, flexible, convenient and has been widely used in all areas of life. The research based on the digital thermograph design technology of the AT89C51 control. DS1620 chip is the components that can measurement the temperature, which can output the binary 9 temperature; The transmission of the temperature date from DS1620 to the AT89C51, If the temperature exceeds a set value it will be alarm; AT89C51 collecting temperature data and then sent to the digital control of paragraph 7; Then there will be a digital temperature show, which can directly read the temperature. Input the data from the key and set the temperature of the alarm. Use MCU assembly language to editor the procedures, and use the software of the Protel to pain the diagram of the system, and then do the desigh and analysis to the each module of the system. The feature of the System design is introduction of the MCU control, which make it has the function of a certain intelligence and achieved that it is very clear to observe the temperature of the observation.Key word:MCU AT89C51; Digital thermograph; DS1620; Control目录第一章综述 (1)1.1 引言 (1)1.2 温度计的分类 (1)1.3 课题研究的实际意义 (2)第二章设计方案选择 (3)第三章系统硬件设计 (4)3.1 硬件结构框图 (4)3.2 主要器件简介 (4)3.2.1 AT89C51简介 (4)3.2.2 DS1620简介 (6)3.3系统硬件详细设计 (8)3.3.1 系统时钟模块 (8)3.3.2 温度采集模块 (9)3.3.3 报警模块 (10)3.3.4.键盘输入 (10)3.3.5 显示模块 (11)第四章系统软件设计 (14)4.1 程序流程图 (14)4.2 程序详细设计 (14)4.2.1 写/读DS1620模块 (15)4.2.2 配置DS1620模块 (15)4.2.3 开始转换模块 (16)4.2.4 读取温度模块 (16)4.2.5 键盘输入程序 (16)4.2.6 显示子程序和温度测量程序 (17)4.3 程序调试运行 (19)第五章结束语 (20)参考文献 (21)致谢 (22)附录:总体电路图 (23)第一章综述1.1 引言温度测量涉及各行各业,而传统的温度测量仪器有酒精温度计、煤油温度计、水银温度计等,都需人工手动测量。

基于AT89C51单片机的数字温度计毕业设计 精品

基于AT89C51单片机的数字温度计毕业设计 精品

CHANGZHOU INSTITUTE OF TECHNOLOGY科研实践题目:基于单片机的数字温度计的设计目录目录 (2)1.绪论 (3)1.1课题研究背景及意义 (3)1.2课题研究的内容 (3)2.数字温度计的系统概论 (5)2.1系统的功能 (5)2.2温度计的分析 (5)3.设计方案和要求 (6)3.1设计任务和要求 (6)3.2元器件的选取 (6)3.3系统最终设计方案 (7)4.硬件设计 (8)4.1总体设计结构图 (8)4.2硬件电路概述 (8)4.2.1最小系统 (8)4.2.2输入电路设计 (11)4.2.3输出电路设计 (12)5.硬件仿真 (15)6.实物制作 (18)6.1电路板焊接 (18)6.2电路板调试 (19)7.小结 (20)附录 (21)1.参考文献 (21)2.原理图 (22)3.元器件清单 (23)4.软件程序 (24)5.实物图 (30)1.绪论1.1课题研究背景及意义单片机技术作为计算机技术的一个分支,广泛地应用于工业控制,智能仪器仪表,机电一体化产品,家用电器等各个领域。

“单片机原理与应用”在工科院校各专业中已作为一门重要的技术基础课而普遍开设。

学生在课程设计,毕业设计,科研项目中会广泛应用到单片机知识,而且,进入社会后也会广泛接触到单片机的工程项目。

鉴于此,提高“单片机原理及应用”课的教学效果,让学生参与课程设计实习甚为重要。

单片机应用技术涉及的内容十分广泛,如何使学生在有限的时间内掌握单片机应用的基本原理及方法,是一个很有价值的教学项目。

为此,我们进行了“单片机的学习与应用”方面的课程设计,锻炼学生的动脑动手以及协作能力。

单片机课程设计是针对模拟电子技术,数字逻辑电路,电路,单片机的原理及应用课程的要求,对我们进行综合性实践训练的实践学习环节,它包括选择课设任务、软件设计,硬件设计,调试和编写课设报告等实践内容。

通过此次课程设计实现以下三个目标:第一,让学生初步掌握单片机课程的试验、设计方法,即学生根据设计要求和性能约束,查阅文献资料,收集、分析类似的相关题目,并通过元器件的组装调试等实践环节,使最终硬件电路达到题目要求的性能指标;第二,课程设计为后续的毕业设计打好基础,毕业设计是系统的工程设计实践,而课程设计的着眼点是让学生开始从理论学习的轨道上逐渐引向实际运用,从已学过的定性分析、定量计算的方法,逐步掌握工程设计的步骤和方法,了解科学实验的程序和实施方法。

(完整版)基于单片机的多点温度检测系统毕业设计论文

(完整版)基于单片机的多点温度检测系统毕业设计论文

集成电路课程设计课题:基于AT89C51单片机的多点温度测量系统设计姓名:韩颖班级:测控12-1学号:指导老师:汪玉坤日期:目录一、绪论二、总体方案设计三、硬件系统设计1主控制器2 显示模块3温度采集模块(1)DS18B20的内部结构(2)高速暂存存储器(3)DS18B20的测温功能及原理(4)DS18B20温度传感器与单片机的连接(5)单片机最小系统总体电路图四、系统软件设计五、系统仿真六、设计总结七、参考文献八、附源程序代码一、绪论在现代工业控制中和智能化仪表中,对于温度的控制,恒温等有较高的要求,如对食品的管理,冰箱的恒温控制,而且现在越来越多的地方用到多点温度测量,比如冰箱的保鲜层和冷冻层是不同的温度这就需要多点的测量和显示可以让用户直观的看到温度值,并根据需要调节冰箱的温。

它还在其他领域有着广泛的应用,如:消防电气的非破坏性温度检测,电力、电讯设备之过热故障预知检测,空调系统的温度检测。

温度检测系统应用十分广阔。

本设计采用DALLAS最新单线数字温度传感器DS18B20 简介新的"一线器件"体积更小、适用电压更宽、更经济DALLAS 半导体公司的数字化温度传感器DS18B20是世界上第一片支持"一线总线",测量温度范围为-55°C~+125°C,在-10~+85°C范围内,精度为±0.5°二、设计过程及工艺要求1、基本功能(1)检测两点温度(2)两秒间隔循环显示温度2、主要技术参数测温范围:-30℃到+99℃测量精度:0.0625℃显示精度:0.1℃显示方法:LCD循环显示3、系统设计系统使用AT89C51单片机对两个DS18B20进行数据采集,并通过1602LCD液晶显示器显示所采集的温度。

DS18B20以单总线协议工作,51单片机首先分别发送复位脉冲,使信号上所有的DS18B20芯片都被复位,程序先跳过ROM,启动DS18B20进行温度变换,再读取存储器的第一位和第二位读取温度,通过IO口传到1602LCD显示。

基于AT89C51单片机的数字温度计设计

基于AT89C51单片机的数字温度计设计

--基于温度传感器的数字温度计----摘要在日常生活及工业生产过程中,经常要用到温度的检测及控制,温度是生产过程和科学实验中普遍而且重要的物理参数之一。

在生产过程中,为了高效地进行生产,必须对它的主要参数,如温度、压力、流量等进行有效的控制。

温度控制在生产过程中占有相当大的比例。

温度测量是温度控制的基础,技术已经比较成熟。

传统的测温元件有热电偶和二电阻。

而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,这些方法相对比较复杂,需要比较多的外部硬件支持。

我们用一种相对比较简单的方式来测量。

基于AT89C51单片机作为控制器、使用数字温度传感器DS18B20作为温度采集器的数字温度计。

重点阐述了AT89C51的结构性能和引脚功能,DS18B20的性能结构、工作原理和控制方法,以及单片机AT89C51和数字温度传感器DS18B20之间的接口、数据传递。

该数字温度计能够测出-20~﹢70℃之间的温度,适合日常生活、工业生产和科学研究等领域对温度测量的需要。

----目录摘要 (2)1绪论 (4)1.1选题背景及研究意义 (4)1.2 温度测量的意义 (4)1.3 系统预期目标 (4)2 开发工具Proteus与Keil (5)2.1 Proteus软件简单应用 (5)2.2 Keil软件调试应用 (5)3 系统设计概述 (6)3.1 方案确定 (6)3.2 系统设计原理 (6)3.3 系统组成框图 (6)4 元器件介绍 (7)4.1 AT89C51单片机介绍 (7)4.1.1 AT89C51单片机主要特性 (8)4.1.2 AT89C51单片机管脚 (8)4.2 1602LCD 液晶模块简介 (9)4.3 DS18B20介绍 (9)4.3.1 DS18B20内部结构及功能 (10)4.3.2 测温原理 (10)5 系统硬件设计 (11)5.1主板电路 (11)5.2液晶显示部分与89C51的接口电路 (11)5.3 DS18B20温度传感器与单片机的接口电路 (12)6 系统软件设计 (13)6.1 主程序设计 (13)6.2 DS18B20初始化 (13)6.3 读出温度子程序 (14)6.4 温度转换命令子程序 (14)6.5 计算温度子程序 (15)6.6显示数据刷新子程序 (15)7 系统仿真测试 (15)结束语.................................................................................. 错误!未定义书签。

基于AT89C51单片机电子体温计设计

基于AT89C51单片机电子体温计设计

1系统设计的目的意义1.1 目的体温是生命活动的一种表现,是人体新陈代谢的一个重要生理参数。

体温既有生理学的意义,又有重要的临床意义,是临床诊断的一个重要指标。

因此体温计在现在的生活中有极为重要的作用。

传统的水银体温计易破碎,存在水银污染的可能,测量时间较长,不易读数,为此设计一种新型的体温计,它的测量精度与传统的水银体温计相媲美的情况下,大大地缩短了测量时间且携带方便,对环境几乎没有污染。

它以AT89C51单片机为核心,结合温度传感器,LED模块等外部设备,在软件的控制下,实现智能化的体温测量,不但能够精确测温,而且能够对温度进行逻辑判断,并且通过LED显示器将测量结果显示出来。

若温度高于38摄氏度系统就会自动报警,这就意味着所测得的温度异于人体正常温度,引起人们注意。

本设计的创新点在于,不仅完成了电子体温计的要求,而且还增加了一个报警装置。

当测量者的体温高于人体正常体温时,体温计就会自动报警,人性化设计,为广大客户带来方便。

1.2 国内外进展情况中国电子体温计行业最早起源于1998年,以每年高于30%的速度发展至今经历了十多年时间。

高达数倍甚至十多倍的利润空间、较低的政策壁垒和技术壁垒吸引了众多企业进入该行业。

目前国内涌现了大小80多家电子体温计品牌,既有“欧姆龙”、“婴之侣”、“捷威”等行业领头的外资品牌,也有“华辰”、“世佳”、“华安”、“康复”等迅速发展壮大的国内品牌。

今后试图进去该行业的生产厂家将达到50多家。

由于行业逐步规范和新一轮电子体温计产品消费热潮的兴起,2009年以后,电子体温计产品行业进入了一个前所未有的高速发展时期,市场的快速发展孕育着巨大的商机。

1.3 设计思路本系统可以使用ISIS画出原理图,打开ISIS软件,单击命令窗口file——new design,创建一个default模板,保存名称为“基于AT89C51单片机电子体温计设计.DSN”。

执行菜单命令library——pick device/symbol,添加所需元件。

基于单片机AT89C51芯片DS18B20传感器的智能温度计设计(word文档良心出品)

基于单片机AT89C51芯片DS18B20传感器的智能温度计设计(word文档良心出品)

专业课程设计报告题目:基于单片机的数字温度计设计所在学院专业班级学生姓名学生学号同组队员指导教师提交日期2012年12月13 日电气工程学院专业课程设计评阅表学生姓名学生学号同组队员专业班级题目名称基于单片机的数字温度计设计一、学生自我总结二、指导教师评定目录一、设计目的 (1)二、设计要求和设计指标 (1)三、设计内容 (1)3.1主控制电路 (2)3.1.1 晶振电路 (2)3.1.2 复位电路 (2)3.2 测温电路 (3)3.3 显示电路 (3)3.4 仿真分析 (4)四、本设计改进建议 (5)五、总结 (5)六、主要参考文献 (6)附录6一、设计目的这次基于单片机的温度计设计,加强了我对单片机的理论了解,也深入学习了单片机线路的设计和编程。

理论联系实际,通过自己对基于51芯片的单片机板设计,熟悉了各元件的识别和作用,也掌握了如何使用Protues画线路图。

还加强掌握了C语言的编程应用,学习了使用Keil对单片机编程,并通过Protues进行仿真。

通过这次实训,学到东西之余,也增强了动手能力,提高了学习的兴趣,培养了创新意识。

二、设计要求和设计指标(1) 设计一个数字温度计,实现温度的采集,范围0-100℃,误差小于0.1℃;(2)选择单片机作为主控器;(3)选择合适的温度传感器进行温度测试;(4)能把采集到的温度显示出来。

三、设计内容这次设计,我们采用了AT89C51单片机芯片,做一个采温、显示功能的数字温度计。

在测温电路上,可以采用热敏电阻(如PT100)之类的器件,利用其感温效应,然后采集不同温度下的电压或者电流,进行A/D转换,然后通过单片机的数据处理,就可以获得所测的温度。

但这种设计电路较为复杂,还涉及到A/D转换,在程序的设计上面也相应变得复杂一些。

因此这次设计不予采用。

而是选择温度传感器DS18B20,DS18B20读书较为方便,通过对温度的采集,经过单片机的处理,用四位的共阴极数码管显示温度值。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1系统设计的目的意义1.1 目的体温是生命活动的一种表现,是人体新陈代谢的一个重要生理参数。

体温既有生理学的意义,又有重要的临床意义,是临床诊断的一个重要指标。

因此体温计在现在的生活中有极为重要的作用。

传统的水银体温计易破碎,存在水银污染的可能,测量时间较长,不易读数,为此设计一种新型的体温计,它的测量精度与传统的水银体温计相媲美的情况下,大大地缩短了测量时间且携带方便,对环境几乎没有污染。

它以AT89C51单片机为核心,结合温度传感器,LED模块等外部设备,在软件的控制下,实现智能化的体温测量,不但能够精确测温,而且能够对温度进行逻辑判断,并且通过LED显示器将测量结果显示出来。

若温度高于38摄氏度系统就会自动报警,这就意味着所测得的温度异于人体正常温度,引起人们注意。

本设计的创新点在于,不仅完成了电子体温计的要求,而且还增加了一个报警装置。

当测量者的体温高于人体正常体温时,体温计就会自动报警,人性化设计,为广大客户带来方便。

1.2 国内外进展情况中国电子体温计行业最早起源于1998年,以每年高于30%的速度发展至今经历了十多年时间。

高达数倍甚至十多倍的利润空间、较低的政策壁垒和技术壁垒吸引了众多企业进入该行业。

目前国内涌现了大小80多家电子体温计品牌,既有“欧姆龙”、“婴之侣”、“捷威”等行业领头的外资品牌,也有“华辰”、“世佳”、“华安”、“康复”等迅速发展壮大的国内品牌。

今后试图进去该行业的生产厂家将达到50多家。

由于行业逐步规范和新一轮电子体温计产品消费热潮的兴起,2009年以后,电子体温计产品行业进入了一个前所未有的高速发展时期,市场的快速发展孕育着巨大的商机。

1.3 设计思路本系统可以使用ISIS画出原理图,打开ISIS软件,单击命令窗口file——new design,创建一个default模板,保存名称为“基于AT89C51单片机电子体温计设计.DSN”。

执行菜单命令library——pick device/symbol,添加所需元件。

本程序中可以使用DS18B20温度传感器,上面有“+”“-”可以模拟外界温度变化。

芯片选取74LS137,74LS373。

在原理图编辑窗口中放置元件,再单击工具箱中的“原件终端”图标,在对象选择中单击POWER和GROUND放置电源和地。

放置好元件后,布好线。

左键双击各元件,设置好相应参数,完成电路设计。

设计的软件部分在Keil中完成,具体操作步骤在后面仿真步骤中有详细介绍,在此就不一一列出。

2系统分析2.1 系统总体设计本系统采用AT89C51单片机、DS18B20温度采集模块和LED显示器共同实现。

AT89C51集合了温度传感器、放大器、A/D转换器三者的作用。

其中AT89C51通过P1.0和DS18B20进行单总线通信,启动DS18B20温度采集功能并取出转化后的体温数值,最后将体温值显示在外接在P0口与P2口的四位共阴LED上。

设计思路如图2.1所示。

图2.1 设计思路示意图2.2 DS18B20基础知识DS18B20是Dallas公司继DS1820后推出的一种改进型智能数字温度传感器,与传统热敏电阻相比,只需一根线就能直接读出被测温度,并可根据实际需求编程实现9~12位数字值的读数方式。

2.2.1 DS18B20的封装形式及引脚功能DS18B20有三种封装形式:(1)采用3引脚TO-92的封装形式。

(2)采用6引脚TSOC封装形式。

(3)采用8引脚SOIC封装形式。

DS18B20芯片的引脚功能如下:(1)GND:电源地。

(2)DQ:数字信号输入/输出端。

(3)VDD:外接供电电源输入端。

采用寄生电源方式时,该引脚接地。

2.2.2 DS18B20的内部结构温度传感器DS18B20的内部结构如图所示,主要由64位ROM、温度传感器及高速缓存器配置寄存器等部分组成,如图2.2所示。

下面对DS18B20的相关部分进行简单的描述。

(1)64位ROM。

64位ROM是由厂家用激光刻录一个64位的二进制ROM代码,是该芯片的标志号,如图2.3所示。

MSB LSB MSB LSB MSB LSB图2.3 64位ROM示意图8位分类编号表示产品分类编号,DS18B20的分类编号为10H;48号序列号是一个大于281x1012的十进数编码,作为该芯片的唯一标志代码;8位循环冗余检验为前56位的CRC循环冗余校验码(CRC=X8+X5+X4+1)。

由于每个芯片的64位ROM代码不同,因此在单总线上能够并挂多个DS18B20进行多点温度实时检测。

(2)温度传感器。

温度传感器是DS18B20的核心部分,该功能部件可完成对温度的测量。

通过软件编程可将-55~+125摄氏度范围内的温度值按9位、10位、11位、12位的转换精度进行量化,以上的转换精度都包括一个符号位,因此对应的温度量化值分别为0.5、0.25、0.125、0.0625摄氏度,即最高转换精度为0.0625摄氏度。

芯片出厂时默认为12位的转换精度。

当接收到温度转换指令(44H)后,开始转换,转换完成后的温度以16位带符号扩展的二进制补码形式表示,存储在高速缓存器RAM的第0、1字节中,二进制数的前5位是符号位。

如果测得的温度大于0,这5位为0,只要将测到的数值乘上0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘上0.0625即可得到实际温度。

(3)高速缓存器。

高速缓存器包括一个高速暂存器RAM和一个非易失性可电擦除E2PROM。

非易失性可电擦除E2PROM用于存放高温触发器TH、低温触发器TL和配置寄存器中的信息。

高速暂存器RAM是一个连续8字节的存储器,前两个字节是测得的温度信息,第1个字节的内容是温度的低8位,第2个字节是温度的高8位。

第3个和第4个字节是高温触发器TH、低温触发器TL的易失性复制,第5个字节是配置寄存器的易失性复制,以上字节的内容在每一次上电复位时被刷新。

第6、7、8个字节用于暂时保留为1。

(4)配置寄存器。

配置寄存器的内容用于确定温度值的数字转换分辨率。

DS18B20工作时按此寄存器的分辨率将温度转换为相应精度的数值,它是高速缓存器的第5个字节,该字节定义如图2.4所示。

TM是测试模块位,用于设置DS18B20在工作模式还是在测试模式。

在DS18B20出厂时,该位被设置为0,用户不必改动;R1和R0用来设置分辨率;其余5位均固定为1。

DS18B20的分辨率设置如表2.1所示。

2.2.3 DS18B20的测温原理DS18B20主要由斜率累加器、温度系数振荡器、减法计数器、温度寄存器等部分组成。

斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值。

温度系数振荡器用于产生减法计数脉冲信号,其中低温度系数振荡器受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数振荡器受温度的影响较大,随温度的变化,其振荡频率明显改变,产生的信号作为减法计数器2的输入脉冲。

减法计数器对脉冲信号进行减法计数。

温度寄存器暂存温度数值。

在图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进行计数,从而完成温度测量。

计数门的开启时间由高温度系数振荡器决定,每次测量前,首先将-55摄氏度多对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55摄氏度所对应的一个基数值。

减法计数器1对低温度系数振荡器产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1。

之后,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数振荡器产生的脉冲信号进行计数,如此循环,直到减法计数器2计数到0时,停止温度寄存器的值的累加。

此时,温度寄存器中的数值即为所测温度。

斜率累加器不断补偿和修正测温过程中的非线性,只要计数门未关闭就重复上述过程,直至温度寄存器的值达到被测温度值。

由于DS18B20是单总线芯片,在系统中若有多个单总线芯片,每个芯片的信息交换则是分时完成的,均有严格的读/写时序要求。

系统对DS18B20的操作协议为:初始化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据。

2.2.4 DS18B20的ROM命令(1)Read ROM命令代码33H,允许主设备读出DS18B20的64位二进制ROM代码。

该命令只适用于总线上存在单只DS18B20。

(2)Match ROM命令代码55H,若主线上有多个从设备,使用该命令可以选中某一制定的DS18B20,即可与64位二进制ROM代码完全匹配的DS18B20才能响应其操作。

(3)Skip ROM命令代码CCH,在启动所有DS18B20转换之前或系统只有一个DS18B20时,该命令将允许主设备不提供64位二进制ROM代码就使用寄存器操作命令。

(4)Search ROM命令代码F0H,当系统初次启动时,主设备可能不知总线上有多少个从设备或者它们的ROM代码,使用该命令可确定系统中的从设备个数及ROM代码。

(5)Alarm ROM命令代码ECH,该命令用于鉴别和定位系统中超出程序设定的报警温度值。

(6)Write Scratchpad命令代码4EH,允许主设备向DS18B20的寄存器写入两个字节的数据,其中第一个字节写入TH中,第二个字节写入TL中。

可以在任何时刻发出复位命令中止数据的写入。

(7)Read Scratchpad命令代码BEH,允许主设备读取暂存器中的内容。

从第一个字节开始,直到CRC读完第九个字节。

也可以在任何时刻发出复位命令中止数据的读取操作。

(8)Copy Scratchpad命令代码48H,将高温触发器TH和低温触发器TL中的字节复制到非易失性E2PROM。

若主机在该命令之后又发出读操作,而DS18B20又忙于将暂存器的内容复制到E2PROM时,DS18B20就会输出一个“0”。

若复制结束,则DS18B20输出一个“1”。

如果使用寄生电源,则主设备发出该命令后,立即发出强上拉并至少保持10ms以上的时间。

(9)Convert T命令代码44H,启动一次温度转换。

若主机在该命令之后又发出其他操作,而DS18B20又忙于温度转换,DS18B20就会输出一个“0”。

若转换结束,则DS18B20输出一个“1”。

如果使用寄生电源,则主设备发出该命令之后,立即发出强上拉并至少保持500ms以上的时间。

(10)Recall E2命令代码B8H,将高温触发器TH和低温触发器TL中的字节从E2ROM 中复制回到暂存器中。

该操作是在DS18B20上电时自动执行,若执行该命令后又发出读操作,DS18B20会输出温度转换忙标志:0为忙,1完成。

相关文档
最新文档