毕业设计(论文)基于AT89C51单片机的数字温度计设计.doc
《毕业设计(论文)基于AT89C51单片机的数字温度计设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于AT89C51单片机的数字温度计设计.doc(30页珍藏版)》请在三一办公上搜索。
1、烟台汽车工程职业学院学生毕业论文数字温度计设计学生姓名: 入学时间: 2008年9月 专业名称: 电子信息工程技术 班 级: 08电子信息一班 指导教师: 职 称: 讲 师 烟台汽车工程职业学院二一一年五月摘 要随着现代信息技术的飞速发展和传统工业改造的逐步实现,能够独立工作的温度检测与显示系统应用于诸多领域。传统的温度检测以热敏电阻为温度敏感元件。热敏电阻的成本低,需要外加信号处理电路,而且可靠性相对较差,测温准确度低,检测系统也有一定的误差。与传统的温度计相比,这次设计的是基于DS18B20的数字温度计,它具有读数方便,测温范围广,测温精确,数字显示,适用范围宽等特点。在本设计中选用AT8
2、9C51型单片机作为主控制器件,采用DS18B20数字温度传感器作为测温元件,通过4位共阳极LED数码显示管并行传送数据,实现温度显示。本设计的内容主要分为两部分,一是对系统硬件部分的设计,包括温度采集电路和显示电路;二是对系统软件部分的设计,应用C语言实现温度的采集与显示。通过DS18B20直接读取被测温度值,送入单片机进行数据处理,之后进行输出显示,最终完成了数字温度计的总体设计。其系统构成简单,信号采集效果好,数据处理速度快,便于实际检测使用。关键词:单片机AT89C51;温度传感器DS18B20;LED数码管;数字温度计目 录0 前言11 数字温度计设计的可行性分析21.1数字温度计设
3、计方案论证21.1.1方案一21.1.2方案二21.2单线技术22 系统的硬件设计42.1核心处理器的设计42.1.1 AT89C51简介42.1.2复位电路的设计72.1.3晶振电路的设计82.2温度采集电路设计82.2.1 DS18B20简介92.2.2 DS18B20的内部结构102.2.2 DS18B20的测温原理132.3显示电路的设计162.3.1 LED数码管162.3.2显示电路173 系统的软件设计183.1 DS18B20的单线协议和命令183.1.1初始化183.1.2 ROM操作命令183.1.3 内存操作命令193.1.4 数据处理203.2温度采集程序设计213.3
4、温度显示程序设计234 结束语24参考文献25致 谢260 前言在日常生活及工业生产过程中,经常要用到温度的检测及控制,温度是生产过程和科学实验中普遍而且重要的物理参数之一。在生产过程中,为了高效地进行生产,必须对它的主要参数,如温度、压力、流量等进行有效的控制。温度控制在生产过程中占有相当大的比例。温度测量是温度控制的基础,技术已经比较成熟。传统的测温元件有热电偶和二电阻。而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,这些方法相对比较复杂,需要比较多的外部硬件支持1。我们用一种相对比较简单的方式来测量。随着国民经济的发展,人们需要对各中加热炉、热处理炉、反应炉和锅炉中温度进行监测和
5、控制。采用单片机来对他们控制不仅具有控制方便,简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。本设计主要介绍了用单片机和数字温度传感器DS18B20相结合的方法来实现温度的采集,以单片机AT89C51芯片为核心,辅以温度传感器DS18B20和LED数码管及必要的外围电路,构成了一个多功能单片机数字温度计。该装置适用于人民的日常生活和工、农业生产的温度测量与报警,实现对温度的监测。其主要研究内容包括两方面,一是对系统硬件部分的设计,包括温度采集电路和显示电路;二是对系统软件部分的设计,应用C语言实现温度的采集与显示。通过利用数字温度传感器DS18B
6、20进行设计,能够满足实时检测温度的要求,同时通过LED数码管的显示功能,可以实现不间断的温度显示,并带有复位功能。本次设计的主要思路是利用51系列单片机,数字温度传感器DS18B20和LED数码显示器,构成实现温度检测与显示的单片机控制系统,即数字温度计。通过对单片机编写相应的程序,达到能够实时检测周围温度的目的。1 数字温度计设计的可行性分析1.1数字温度计设计方案论证1.1.1方案一由于本设计实现的是测温电路,首先我们可以使用热敏电阻之类的器件,利用其感温效应,将其随被测温度变化的电压或电流值采集过来,进行A/D转换后,就可以用单片机进行数据的处理,通过显示电路就可以将被测温度显示出来,
7、这种设计需要用到A/D转换电路,感温电路比较麻烦。因此,我们引出第二种方案。1.1.2方案二我们可以采用技术成熟、操作简单、精确度高的温度传感器,在此,可以选用数字温度传感器DS18B20,根据它的特点和测温原理,很容易就能直接读取被测温度值并进行转换,这样就可以满足设计要求。从以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计也比较简单,故在本设计中采用了方案二。通过方案二设计的温度计总体电路图如附录图C所示,控制器采用单片机AT89C51,温度传感器采用DS18B20,用4位LED数码管以串口并行输出方式传送数据实现温度显示。1.2单线技术目前,常用的微机和外设之间数据传输的串行
8、总线3有I2C总线、SPI总线等,其中I2C总线采用同步串行双线(一根时钟线,一根数据线)方式,而SPI总线采用同步串行三线(时钟线,输入线,数据输入线)方式。这两种总线需要至少两根或两根以上的信号线。美国达拉斯半导体公司推出了一项特有的单线技术。该技术于上述总线不同,它采用单根信号线,即可传输时钟,又能传输数据,而且数据传输时是双向的,因而这种单线技术具有线路简单,硬件开销少,成本低廉。便于扩展的优点。单线技术适用以单主机系统,单主机能够控制一个或多个从机设备。主机可以是微控制器,从机可以是单线器件,它们之间的数据交换,控制都由这根线完成。主机或从机通过一个漏极开路或三态端口连至该数据线,以
9、允许设备在不发送数据时能够释放线,而让其它设备使用。单线通常要求外接一个约5k的上拉电阻,这样,当该线闲置时,器件状态为高电平。主机和从机之间的通信主要分为3个步骤:初始化单线器件,识别单线器件和单线数据传输。由于只有一根线通信,所以它们必须是严格的主从结构,只有主机呼叫从机时,从机才能应答,主机访问每个单线器件都必须严格遵循单线命令序列,从机遵守上述三个步骤的顺序。如果命令序列混乱,单线器件将不会响应主机。所有的单线器件都有遵循严格的协议,以保证数据的完整性。单线协议有复位脉冲,其他均由主机发起,并且所有命令和数据都是字节的地位在前。2 系统的硬件设计2.1核心处理器的设计2.1.1 AT8
10、9C51简介对于单片机的选择,可以考虑使用8031与8051系列,由于8031没有内部RAM,系统又需要大量内存存储数据,因而不适用。所以,我们选用51系列单片机AT89C51。AT89C51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4kbytes的可编程的Flash只读程序存储器,兼容标准8051指令系统及引脚,并集成了 Flash 程序存储器,既可在线编程(ISP),也可用传统方法进行编程,因此,低价位AT89C51单片机可应用于许多高性价比的场合,可灵活应用于各种控制领域,对于简单的测温系统已经足够。单片机AT89C51具有低电压供电和体积小等特点,四个端口只需要
11、两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电2。AT89C51的主要特性如下: (1)与MSC-51兼容;(2)4K字节可编程闪烁存储器;(3)寿命:1000写、檫循环;(4)数据保留时间:10年;(5)全静态工作时间:0Hz-24Hz(6)三级程序存储器锁定;(7)128*8为内存RAM;(8)32根可编程I/O线;(9)两个16位定时器/计数器;(10)5个中断源;(11)可编程串行通道;(12)低功耗的闲置和掉电模式;(13)片内振荡器和时钟电路;1、AT89C51引脚图芯片AT89C51的引脚排列和逻辑符号如图2.1所示。图 2.1 AT89C5
12、1单片机引脚图2、AT89C51引脚功能介绍单片机芯片AT89C51为40引脚双列直插式封装。其各个引脚功能4介绍如下:(1) VCC:供电电压;(2) GND:接地;(3) P0口P0口为一个8位漏级开路双向I/O口,每个管脚可吸收8TTL门电流。当P1口的管脚写”1”时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FLASH编程时,P0口作为原码输入口,当FLASH进行校验时,P0输出原码,此时P0外部电位必须被拉高。(4) P1口P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入”1”后,电位被内
13、部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。(5) P2口P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写”1”时,其管脚电位被内部上拉电阻拉高,且作为输入。作为输入时,P2口的管脚电位被外部拉低,将输出电流,这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址”1”时,它利用内部上拉的优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH
14、编程和校验时接收高八位地址信号和控制信号。(6) P3口P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入”1”后,它们被内部上拉为高电平,并用作输入。作为输入时,由于外部下拉为低电平,P3口将输出电流(ILL),也是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,同时P3口同时为闪烁编程和编程校验接收一些控制信号。其具体功能如表2.1所示。表2.1 P3口特殊功能介绍端口定义符号表示功能描述P3.0RXD串行输入口P3.1TXD串行输出口P3.2INT0外部中断0P3.3INT1外部中断1P3.4T0定时器0外部输入P3.5T1定时器1外部输
15、入P3.6WR外部数据存储器写选通P3.7RD外部数据存储器读选通(7) RST:复位输入端。当振荡器复位时,要保持RST脚两个机器周期的高电平时间。(8) ALE / PROG当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令时ALE才起作用。另外,该引脚被略
16、微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。(9) PSEN外部程序存储器的选通信号。在由外部程序存储器取址期间,每个机器周期PSEN两次有效。但在访问外部数据存储器时,这两次有效的PSEN信号将不出现。(10) EA/VPP当EA保持低电平时,访问外部ROM;注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,访问内部ROM。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。(11) XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。(12) XTAL2:来自反向振荡器的输出。2.1.2复位电路的设计单片机复位电路的设计如图2.2所示。该复位
17、电路采用手动复位与上电复位相结合的方式。当按下按键S1时,VCC通过R1电阻给复位输入端口一个高电平,实现复位功能,即手动复位。上电复位就是VCC通过电阻R2和电容C构成回路,该回路是一个对电容C充电和放电的电路,所以复位端口得到一个周期性变化的电压值,并且有一定时间的电压值高于CPU复位电压,实现上电复位功能5。图2.2 单片机复位电路2.1.3晶振电路的设计单片机晶振电路的设计如图2.3所示。XTAL1(X1)为反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2(X2)是来自反向振荡器的输出。按照理论上AT89C51使用的是12MHz的晶振,但实测使用11.0592MHz。所以设计者
18、通常用的是11.0592MHz。2.2温度采集电路设计由于传统的热敏电阻等测温元件测出的一般都是电压,再转换成对应的温度,需要比较多的外部元件支持,且硬件电路复杂,制作成本相对较高。这里采用DALLAS公司的数字温度传感器DS18B20作为测温元件。图2.3 单片机晶振电路2.2.1 DS18B20简介DALLAS 最新单线数字温度传感器DS18B20是一种新型的”一线器件”,其体积更小、更适用于多种场合、且适用电压更宽、更经济。DALLAS 半导体公司的数字化温度传感器DS18B20是世界上第一片支持”一线总线”接口的温度传感器。温度测量范围为-55+125 摄氏度,可编程为9位12 位转换
19、精度,测温分辨率可达0.0625摄氏度,分辨率设定参数以及用户设定的报警温度存储在EEPROM 中,掉电后依然保存。被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可以在远端引入,也可以采用寄生电源方式产生;多个DS18B20可以并联到3 根或2 根线上,CPU只需一根端口线就能与诸多DS18B20 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便6。DS18B20 的性能特点如下: (1)独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条总线即可实现微处理器与DS18B
20、20的双向通讯;(2)DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温;(3)DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内;(4)适应电压范围更宽,电压范围:3.05.5V,在寄生电源方式下可由数据线供电;(5)测温范围-55125,在-10+85时精度为0.5;(6)零待机功耗;(7)可编程的分辨率为912位,对应的可分辨温度分别为0.5、0.25、0.125和0.0625,可实现高精度测温;(8)在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数
21、字,速度更快;(9)用户可定义报警设置;(10)报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;(11)测量结果直接输出数字温度信号,以一线总线串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力;(12)负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。以上特点使DS18B20非常适用与多点、远距离温度检测系统。DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的管脚排列、各种封装形式如图 3.4 所示。其中,DQ 为数据输入/输出引脚,也可用作开漏单总线接口引脚,当
22、被用在寄生电源工作方式下,可以向器件提供电源;GND为地信号;VDD为可选择的电源引脚,当工作于寄生电源时,此引脚必须接地。其电路图2.4所示。2.2.2 DS18B20的内部结构图2.4为DS1820的内部结构框图,它主要包括寄生电源、温度传感器、64位激光ROM单线接口、存放中间数据的高速暂存器(内含便笺式RAM),用于存储用户设定的温度上下限值的TH和TL触发器存储与控制逻辑、8位循环冗余校验码(CRC)发生器等七部分。DS18B20采用3脚PR35封装或8脚SOIC封装。其中,64 bit闪速ROM的结构如下:8bit 校验CRC48bit 序列号8bit 工厂代码(10H)MSB L
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 AT89C51 单片机 数字 温度计 设计
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-3978700.html