片机 数字温度计

上传人:tian****1990 文档编号:72918903 上传时间:2019-01-24 格式:DOC 页数:25 大小:429.05KB
返回 下载 相关 举报
片机 数字温度计_第1页
第1页 / 共25页
片机 数字温度计_第2页
第2页 / 共25页
片机 数字温度计_第3页
第3页 / 共25页
片机 数字温度计_第4页
第4页 / 共25页
片机 数字温度计_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《片机 数字温度计》由会员分享,可在线阅读,更多相关《片机 数字温度计(25页珍藏版)》请在金锄头文库上搜索。

1、中国矿业大学电气信息电子综合设计键入公司名称数字温度计学期综合电子设计作品张阳、赵正雄、朱坤 2011/12/16 摘要基本要求:可测量温度范围:000.0-102.0,温度分辨力:0.4。测量相对误差:2%,用数码管实时显示被测量的温度。提高要求:实现多个温度点的实时测量,实现温度的分档测量(102、51、25.5)。本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,该设计控制器使用单片机AT89S51,测温传感器使用DS18B20,用4位共阳极LED数码管,实现温度显示,能准确达到以上要求

2、。温度计电路设计控制器采用单片机AT89S51,具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电。温度传感器采用DS18B20,DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现位的数字值读数方式,仅需要一个端口引脚进行通信,内部存储器还包括一个高速暂存和一个非易失性的可电擦除的EERAM。显示电路采用4位共阴极LED数码管,采用LED动态显示方式,从P0口输出段码,P2.0P2.3作为位

3、选控制端。目录1 概述 (4) 1.1 课程设计的要求 (4) 1.2课程设计的目的(4) 1.3 系统组成及工作原理(4)2 系统总体方案及硬件设计(5) 2.1设计思路及描述(5) 2.2硬件构成(5) 1主控模块AT89C51单片机(5) 2DS18B20介绍 (5) 2.3显示模块(9) 2.4开关控制电路模块 (10)3 软件设计 (11) 3.1主程序 (11) 3.2读取温度子程序 (11) 3.3温度转换命令子程序 (12)3.4计算温度子程序(12)3.5温度比较子程序(13)4 Proteus软件仿真(14)5 课程设计体会 (17)参考文献(17)附1:源程序代码(18)

4、附2:系统原理图(33)1 概述1.1课程设计的要求基本要求:可测量温度范围:000.0-102.0,温度分辨力:0.4。测量相对误差:2%,用数码管实时显示被测量的温度。提高要求:实现多个温度点的实时测量,实现温度的分档测量(102、51、25.5)。1.2课程设计的目(1) 通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步的了解。(2)掌握LED的动态显示,DS18B20的使用和编程原理。(3)通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。(4)掌握WAVE、protel及proteus仿真软件的使用方法。1.3 系统组成及工作原理本系统功

5、能是由硬件和软件两大部分协调完成的,硬件部分主要完成各种新号的采集和各种信息的显示的;软件主要完成信号的处理及控功能等。基于工作原理是89C51单片机对按钮的输入信号的查询和检测,然后对输入信号进行相应处理后通过LED数码管输出。2 系统总体方案及硬件设计2.1设计思路及描述本实验设计3个开关按键K1,K2,K3,分别对应报警低中高3个档位。该实验要求对环境温度进行测量并在LED上显示数据,则可利用AT89C51芯片的P0.7-P0.0管脚对应了接数码管的A,B,C,D,E,F,G和小数点位,P2.0P2.3接显示数据的小数位、个位、十位、百位(符号位),P3.4端口与DS18B20进行数据传

6、递和通信端口,P3.7端口输出报警信号。 2.2硬件构成 1主控模块AT89C51单片机功能特性描述 AT89C51是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程 Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 AT89C51具有以下标准功能: 8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器2个数据指针,三

7、个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至 0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。 P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用

8、来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。 P1口:P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 P2口:P2口是一个具有内部上拉电阻的8位双向 I/O口,P2 输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 2DS18B20介绍 DS18B20

9、温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现912位的数字值读数方式。DS18B20的性能特点如下:独特的单线接口仅需要一个端口引脚进行通信;多个DS18B20可以并联在惟一的三线上,实现多点组网功能;无须外部器件;可通过数据线供电,电压范围为3.05.5V;零待机功耗;温度以9或12位数字;用户可定义报警设置;报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;64位ROM的结构开始8位是产品类型

10、的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。温度报警触发器TH和TL,可通过软件写入户报警上下限。DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM。高速暂存RAM的结构为8字节的存储器,结构如图3所示。头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。该字节各位的定义如图1所示。低5位一

11、直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。DS18B20内部结构框图温度 LSB温度 MSBTH用户字节1TL用户字节2配置寄存器保留保留保留CRC 图1 DS18B20字节定义高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性。当DS18B20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。单片机可以通

12、过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625LSB形式表示。当符号位S0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值。表1是一部分温度值对应的二进制温度数据。DS18B20完成温度转换后,就把测得的温度值与RAM中的TH、TL字节内容作比较。若TH或TTL,则将该器件内的报警标志位置位,并对主机发出的报警搜索命令作出响应。因此,可用多只DS18B20同时测量温度并进行报警搜索。在64位ROM的最高有效字节中存储有循环冗余检验码(CRC)。主机ROM的前56位来计算CRC值,并

13、和存入DS18B20的CRC值作比较,以判断主机收到的ROM数据是否正确。DS18B20的测温原理是这这样的,器件中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。器件中还有一个计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进行计数进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将55所对应的一个基数分别置入减法计数器1、温度寄存器中,计数器1和温度寄存器被预置在55所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法

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

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号