1、 本科生毕业论文(设计) 基于DS18B20的高精度温度显示设计院系名称姓名学号专业指导教师 年4月29日摘要由于具有原理简单、实现容易、工作可靠等诸多优点而受到越来越广泛的重视。本系统由于同时兼顾高精度和大量程的要求,温度精确到0.001摄氏度,温度测量范围-55到+125之间,并使用了六位七段LED显示器的设计能自动巡回每隔5s显示实时温度,使它较好的达到实际的设计要求。本文主要侧重于对电路部分和系统主要程序的设计进行描述。首先,本文将概述温度采集的基本原理,并且阐述选择DS18B20数字温度传感器的原因。其次,本文将讲述本系统中AT89C51的的基本工作原理和特性。再次,本文将详细阐述D
2、S18B20数字传感器的工作原理。最后,描述系统主要程序的设计。 关键词:传感器;AT89C51;数码管;锁存器I Abstract Because of the principle is simple and easy to implement, reliable work, and many other advantages by more and more extensive attention. This system due to the requirement of both high precision and large range, accurate to 0.001 deg
3、rees Celsius temperature, temperature measurement range and 55 to + 125 , and using the six of seven segment LED display design can display the real-time temperature automatic circuit every 5 s, make it better meet the requirements of actual design. This paper mainly focuses on the main circuit part
4、 and system program design is described. First of all, this article will outline the basic principle of temperature acquisition, and reasons for selecting the DS18B20 digital temperature sensor in this paper. Secondly, this article will talk about the basic working principle of this system of AT89C5
5、1 and features.Keywords: sensors, AT89C51, digital tube, latch 目录摘要I引言11第一章 系统总体概述21.1 工作原理21.2 原理框图21.3 原理介绍21.31 单片机和数码管的连接图31.32 单片机和DS18B20的连接图32第二章 硬件介绍52.1 AT89C51简介52.11 MCS-51单片机系列52.12 振荡器特性92.13 芯片擦除102.2 DS18B20 数字温度传感器102.2.1 DS18B20的特点102.22 DS18B20的结构112.23 DS18B20的控制方法122.3 LED数码管142.
6、4 锁存器74HC573简介153第三章 软件设计163.1 程序介绍163.2 主程序流程图163.3 主程序17结论与展望25致谢26参考文献271 引言在工业生产和日常生活中,经常要对温度进行测量和控制,并且有时是对多个点进行温度测量,比如冷库温度监控、环境温度监测、农业温室监控、粮库温度监控等。在这种情况下,温度监测系统应运而生。温度监测系统能够对工作点的温度进行检测,显示当前温度,并能够对温度进行报警。DS18B20数字温度传感器因为采用了单总线技术,可通过串行口线,也可通过其他I/O口线与微机直接接传感器直接输出被测温度值,本设计主要对DS18B20数字温度传感器温度采集与显示系统
7、进行设计,完成对温度的采集与显示。MCS51是指由美国INTEL公司生产的一系列单片机的总称,这一系列单片机包括了好些品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用8051来称呼MCS51系列单片机,INTEL公司将MCS51的核心技术授权给了很多其它公司,所以有很多公司在做以8051为核心的单片机,当然,功能或多或少有些改变,以满足不同的需求,其中89C51就是这几年在我国非常流行的单片机,它是由美国ATMEL公司开发生产的。以后我们将用89C51、89
8、S51来完成一系列51子系列:基本型,根据片内ROM的配置,对应的芯片为8031、8051、8751、895180C51单片机是在8051的基础上发展起来的,也就是说在单片机的发展过程中是先有8051,然后才有80C51的。8051单片机与80C51单片机从外形看是完全一样的,其指令系统、引脚信号、总线等完全一致(完全兼容),也就是说在8051下开发的软件完全可以在80C51上应用,反过来,在89C51下开发的软件也可以在8051上应用。这两种单片机是完全可移植的。8051与80C51单片机的主要差别就在于芯片的制造工艺上。80C51的制造工艺是在8051基础上进行了改进。1第一章 系统总体概
9、述1.1工作原理 本系统主要采用DS18B20数字温度传感器进行对温度的采集,把采集到的信号直接转化为数字信号传递给单片机,然后单片机把测得的温度输出显示在六位七段共阳极数码管上。1.2原理框图 DS18B20传感器74HC573AT89C52六位数码管显示1.3原理介绍控制器采用AT89C52单片机,温度采集使用DS18B20数字温度传感器,显示器通过AT89C51的P0口和P2口扩展。 电路原理图如下所示,在测温度时,P2.0口用于温度的采集,P0口和P2口用于六位七段LED显示器的段码及扫描输出。 1单片机和数码管的连接图2单片机和DS18B20的连接图 2第二章 硬件介绍2.1 AT8
10、9C51简介1MCS-51单片机系列 本设计所用到的89C51单片机是MCS-51的一种。 MCS-51是一个单片机的系列产品,具有多种型号。具体说,按其内部资源的不同,MCS-51可以分为两个子系列和四个类型。如表3.2表3.2 MCS系列单片机的分类 资源配置子系列片内ROM形式片内ROM容量片内RAM容量定时器/记数器中断源无ROMEPROMEEPROM51子系列80318051875189514KB128B216552子系列80328052875289528KB256B3166按资源配置的数量,MCS-51分为51和52两个子系列,其中51系列是基本型,52系列是增强型,以芯片的型号的
11、最末数字“1”和“2”作为标志。89C51单片机是在8951芯片的基础上发展起来的,因此兼容,改进和增强将是我们对89C51和8951进行比较的内容。首先,与8951的兼容是对89C51的基本要求,以确保8位单片机MCS-51系列的继承和发展。兼容包括指令、引脚信号、总线等多个方面,指令兼容能保证两者之间不存在指令障碍以维持软件的可移植性,而引脚信号和风状以及总线的兼容则确保两者在系统扩展的接口方向的一致性。有利于系统的开发利用。其中中央处理器(CPU)是单片机的核心,完成运算和控制操作。内部数据存储器用语存放可读写数据,通常所说的内部数据存储器是指前128个单元。内部程序存储器用语存放程序和
12、原始数据。另外,由于控制和应用需要,89C51共有两 16位的定时器/记数器,以实现定时或记数功能,并以定时或记数功能对单片机进行控制。89C51单片机还有4个8位的I/O口,用以实现数据的并行输入输出。除此之外,单片机还有一个全双工的串行口,以实现单片机和其他数据设备之间的串行数据传送。还有一些其他是硬件电路,如:中断控制系统、时钟电路、位处理器,总线等,这里不一一介绍,请参阅有关单片机的书籍。本设计采用内部有4KB的89C51单片机,因此不必进行外部存储器扩展。89C51单片机的信号引脚89C51是标准的40引脚的双列直插式集成电路芯片,引脚排列见图3.7图3.7 89C51单片机芯片引脚
13、图VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一
14、个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平
15、,并用作输入。作为输入,由于外部下拉为低电平,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(外部数据存储器读选通)RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目