基于单片机的温度报警系统_第1页
基于单片机的温度报警系统_第2页
基于单片机的温度报警系统_第3页
基于单片机的温度报警系统_第4页
基于单片机的温度报警系统_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

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

文档简介

1、基于单片机的温度报警系统设计摘 要温度控制是工业生产过程中经常遇到的过程控制,有些工艺过程对其温度的控制效果直接影响着产品的质量,因而设计一种较为理想的温度控制系统是具有不一般的价值与意义。其典型应用于蔬菜大棚多点测温中,对蔬菜大棚内的温度进行实时检测控制,以使蔬菜大棚内的作物保持在最佳的生长状态。本文介绍了基于AT89C51单片机和10个DS18B20传感器的蔬菜大棚多点测温系统。其中DS18B20为温度采集模块, AT89C51单片机作为主要控制器,并配合数码管显示电路,按键控制电路,温度上下限调整电路,声光报警等电路实现10点单总线多点温度的检测、显示、温度上下限可调的温度检测系统。通过

2、按键对单片机的工作状态进行控制,确定其工作在测温状态、报警状态、还是设定状态。按键设定温度上下限,以适应不同种类、不同生长时期作物生长所需最适温度的要求。在系统设计过程中充分考虑性价比,选用价格低、微功耗、性能稳定的元器件。该温度测量仪具有连接点数多,传输距离远,扩展方便,便于构成采集系统及价格低廉等优点,非常适用于多点蔬菜大棚的温度检测,能够方便准确地显示蔬菜大棚内的温度,且省时省力。能有效保证蔬菜的正常生长,为蔬菜的生长提供稳定的环境场所。关键词:温度;DS18B20;单总线多点;蔬菜大棚The alarm system design based on MCU temperatureAbs

3、tractTemperature control is a process often encountered in industrial production process control, and some of its process control effects of temperature directly affects the quality of the product, and therefore to design a more ideal temperature control system is an unusual value and significance.

4、Typical multi-point temperature measurement used in vegetable greenhouses .The real-time detection and control of temperature in the vegetable greenhouse will keep the vegetable greenhouse crops maintaining an optimal growth state.This paper introduces the vegetable greenhouses multi-point temperatu

5、re measurement system based on AT89C51 microcontroller, C language, and 10 DS18B20 sensor. DS18B20 is the temperature acquisition module. AT89C51 microcontroller as the main controller with the display circuit and digital key control circuit, the lower limit on the temperature adjustment circuit, so

6、und and light alarm circuit is the system. The temperature detection system can realize the 10 points temperature detection, display and adjustment by a single bus. The keys control the working status of the microcontroller to determine its work in the temperature status, alarm status, or set the st

7、ate. The buttons is to set the temperature lower limit to accommodate the types of different growth stages of crop growth and the optimum temperature required. Fully considering the cost-effective in the system design process I selected low price, micro-power consumption and stable performance compo

8、nents. The temperature gauge has a number of connection points, the transmission distance; the expansion is convenient, easy to form a collection system and the advantages of low prices. The system is ideal for multi-point temperature of the vegetable greenhouses detection. It can easily and accurat

9、ely shows the temperature inside the vegetable greenhouses. Whats more, It effectively guarantee the normal growth of vegetables and provide a stable environment for the growth of vegetables places.Key words:singlechip;Temperature;DS18B20;Vegetable greenhouseV目 录1 绪 论11.1研究的背景及意义11.2国内外研究现状21.3预期目标4

10、2 系统的总体设计62.1系统的设计要求62.2系统的基本组成62.3系统的工作原理73 系统的硬件设计83.1单片机AT89C5183.1.1功能特性93.1.2管脚说明93.2温度采集模块123.2.1DS18B20温度采集模块硬件电路图133.2.2DS18B20的主要特性133.2.3DS18B20的外部形状及内部结构143.2.4单总线操作流程和操作命令193.2.5DS18B20使用中注意事项213.3声光报警模块223.4按键控制模块233.5数码管显示模块234 系统的软件部分254.1主程序流程图254.2按键处理子程序流程图264.3温度采集处理相关程序274.3.1DS1

11、8B20初始化时序及程序274.3.2DS18B20写时序及程序284.3.3DS18B20读时序及程序294.3.4循环检测温度子程序流程图315 总 结335.1总结335.2展望33参考文献35谢 辞36附 录37附录A 电路图37附录B 程序381 绪 论1.1研究的背景及意义温度报警系统是指对温度进行控制,并在温度达到上限或下限的时候能够自动提示对方做出报警,而温度控制是工业控制的重要组成部分,而温度测量又是温度控制当中重要的一环。并且温度是一种最基本的环境参数,它是与人类的生活、工作关系最密切的物理量,也与各门学科与工程研究设计中经常遇到和必须精确测量的物理量。随着微机测量和控制技

12、术的迅速发展与广泛应用,以单片机为核心的温度采集与控制系统的研发与应用在很大程度上提高了生产生活中对温度的控制水平。在农业生产中也离不开温度的测量,各种农作物的生长都跟温度有直接的关系,掌握了温度的变化就可以更好的控制农作物的生长。近年来,随着我国农业科技的发展,蔬菜大棚技术得到了广泛的普及应用,温室大棚数量日渐增多。对于这些蔬菜大棚来说,温度是衡量温室大棚的重要指标,它直接影响到栽培作物的生长和产量。为了实现大棚蔬菜生产优质、高产,加强温室内的温度检测是十分有必要的,但是传统的方法是用双金属式测量计等测试器材进行测量,通过人工进行检测,对不符合温度要求的大棚进行升温和降温等工作。这种人工测试

13、方法费时费力、效率低,且测量的温度误差大,随机性大。现在,随着农业产业规模的提高,对于数量较多的大棚,传统的控制措施就显现出很大的局限性。因此我们需要一种造价低廉、使用方便且测量准确的温度测量仪。该设计即是针对这一问题,设计出了能够实现温度自动检测、显示、上下限报警等多功能的温度检测系统。它以先进的技术和现代化设施,人为控制作物生长的环境条件,使作物生长不受自然气候的影响,做到常年工厂化,进行高效率,高产值和高效益的生产。1.2国内外研究现状基于AT89C51单片机提高了系统的可移植性、扩展性,利于现代测控、自动化、电气技术等专业实训要求1。以单片机为核心设计的温度报警,具有安全可靠、操作简单

14、方便、智能控制等优点。温度对于工业生产如此重要,由此推进了温度传感器的发展。温度传感器主要经过了三个发展阶段:1)模拟集成温度传感器。该传感器是采用硅半导体集成工艺制成,因此亦称硅传感器或单片集成温度传感器。此种传感器具有功能单一(仅测量温度)、测温误差小、价格低、响应速度快、传输距离远、体积小、微功耗等特点,适合远距离测温、控温,不需要进行非线性校准,外围电路简单。它是目前在国内外应用最为普遍的一种集成传感器,典型产品有AD590、AD592、TMP17、LM135等;2)模拟集成温度控制器。模拟集成温度控制器主要包括温控开关、可编程温度控制器,典型产品有LM56、AD22105和MAX65

15、09。某些增强型集成温度控制器(例如TC652/653)中还包含了A/D转换器以及固化好的程序,这与智能温度传感器有某些相似之处。但它自成系统,工作时并不受微处理器的控制,这是二者的主要区别;3)智能温度传感器(亦称数字温度传感器)。智能温度传感器是在20世纪90年代中期问世的,其内部都包含温度传感器、A/D转换器、信号处理器、存储器(或寄存器)和接口电路。有的产品还带多路选择器、中央控制器(CPU)、随机存取存储器(RAM)和只读存储器(ROM)。智能温度传感器的特点是能输出温度数据及相关的温度控制量,适配各种微控制器(MCU);并且它是在硬件的基础上通过软件来实现测试功能的,其智能化程度也

16、取决于软件的开发水平。现代信息技术的三大基础是信息采集(即传感器技术)、信息传输(通信技术)和信息处理(计算机技术)。传感器属于信息技术的前沿尖端产品,尤其是温度传感器被广泛用于工农业生产、科学研究和生活等领域,数量高居各种传感器之首。数字温度传感器可以直接将被检测的温度信息以数字化形式输出,与传统的模拟式温度传感器相比,具有测量精度高、功耗低、稳定性好、外围接口电路简单特点。而单片机微处理器越来越丰富的外围功能模块,更加方便了数字式温度传感器输出信号的处理。智能温度传感器内部都包含温度传感器、A/D转化器、信号处理器、存储器(或寄存器)和接口电路。有的产品还带多路选择器、中央处理器(CPU)

17、、随机存取存储器(RAM)和只读存储器(ROM)。并且它是在硬件的基础上通过软件来实现测试功能的,其智能化程度也取决于软件的开发水平13。进入21世纪后,智能温度传感器正朝着高精度、多功能、总线标准化、高可靠性及安全性、开发虚拟传感器和网络传感器、研制单片机测温系统等的方向发展。数字化温度传感器可以直接将温度量以数字脉冲信号形式输出,具有测量精度高、抗干扰能力强、传输距离远、外围接口电路简单等诸多优点。同时数字温度传感器还可直接与微处理器进行接口,大大方便了传感器输出信号的处理处理器进行接口,大大方便了传感器输出信号的处理。数字单总线温度传感器是目前最新的测温器件,它集温度测量,A/D转换于一

18、体,具有单总线结构,数字量输出,直接与微机接口等优点。从国内外蔬菜大棚温度检测技术的发展状况来看,蔬菜大棚温度检测技术大致经历了2个发展阶段:1)人工测量阶段。在人工测量阶段,是温室控制技术发展初期所采取的控制手段,其实并没有真正意义上的控制系统。主要采用两种测量方法。第一种是原始的检测方法,生产一线的种植者即是蔬菜大棚温度检测系统的传感器,他们通过对蔬菜大棚内外的气候状况和对作物的生长状况进行观测,凭借长期积累的经验和身体感知推测并判断,并通过手动调节蔬菜大棚内的温度。种植者凭借自己的经验和直觉对蔬菜的生长环境温度进行测量,是传统农业的生产规律。这种测量方法劳动生产率较低、误差较大,不符合工

19、业化农业的生产需要,而且对种植者的素质要求较高。第二种是传统的检测方式,常采用双金属式测量计等测试器材进行测量,人工检测。双金属温度计等原始温度缺点为测温范围较小、精度相对不高,从而误差较大,而且这种测试方法费时费力,效率低。不符合工业化农业生产的需要。2)自动测量阶段。随着科学技术的发展,蔬菜大棚温度检测系统的自动化、智能化程度也在日益增强。第一种是与单片机组成的温度检测系统,种植者输入蔬菜大棚的生产作物所需环境的目的参数,单片机根据传感器实际的测量值与事先设定的目标进行比较,对蔬菜大棚环境温度测量,并进行报警,相应的控制机构进行加热、降温等动作。具有测量精度高、稳定性好、配置灵活、成本低廉

20、、容易扩展、传输距离远且抗干扰性强等特点。但不适宜规模化生产,自动化、智能化有待提高。第二种,是与计算机组成的自动控制的温度检测系统,通过计算机输入温度控制的目的参数,此目的参数是根据蔬菜大棚内作物的生长状态的最优化目的参数,可以自动的进行温室内环境气候调节,能使植物在每个时间都处在最佳的生产状态。使种植者能得到优质、高产的作物,也提高了生产的自动化、智能化,但只适用于单个蔬菜大棚温度的控制。第三种是由上位机下位机组成的组网。系统能对大棚环境温度进行采集和显示,能通过上位机端远程设定蔬菜的生长期适宜温度,当蔬菜大棚的环境温度参数超过设定的下限值时控制电热棒加热,当温度参数超过设定的上限时,则控

21、制风扇工作降低温度。每隔一定的时间控制器需要将温度信息发送到上位机,由上位机软件将温度数据存储到数据库中。管理人员可以随时查询采集过来的温度历史记录,另外一台上位机可控制多个大棚通过改变温室环境设定的目标值,可以自动的进行温室内环境气候调节。使温度检测控制系统的自动化、智能化程度大大增强,符合农业生产需要,使农业生产朝着越来越先进越来越完备的方向发展5。1.3预期目标本系统中DS18B20检测温度适用范围为一55+l25 ,精确度高,因此能完全满足温室大棚的测量要求。单片机在读取温度数据后进行显示,并且与预先设定的上下限温度值进行比较,当温度超出农作物生长适宜温度时,单片机控制蜂呜器和LED灯

22、闪烁报警。使用者只需要将电源打开就能精确观察到温室大棚的温度情况,在报警后可对蔬菜大棚温度进行调节,大大节省了人力物力,提高了生产效率。602 系统的总体设计2.1系统的设计要求用单片机的一个I/O口实现10个DS18B20温度传感器温度的读取,四个数码管显示地点编号及温度,三个指示灯(报警灯,设定指示灯,工作状态灯),由四个按键控制系统的工作状态。系统处在正常工作状态时,间隔3秒循环显示各点温度,工作状态灯闪烁,固定显示某点温度,工作状态灯常亮。系统处在报警状态时,报警灯闪烁,蜂鸣器响,数码管显示报警地点编号和温度,若是有多点报警则间隔 2秒循环显示。系统处在设定状态时,可以设定各点报警温度

23、值,系统供电电压DC5V,检测精度1度。2.2系统的基本组成此系统可应用于对环境温度检测要求比较高的场合,如家庭温度检测,粮仓温度检测、蔬菜大棚等。用数字温度传感器DS18B20实现10点以上环境温度检测,单片机分析各点数据,显示出各温度点数值,并能实现温度超限报警。系统的基本架构如图21所示9。具体电路图见附录A。数码管显示单片机多路DS18B20温度检测点声光报警按键控制图2-1 系统的基本架构系统各部分的主要作用如下:单片机:实施控制的核心单元,采集DS18B20的温度,对数据进行处理,数据处理完毕,通过I/O口输出启动相应的显示电路和报警电路;对按键进行扫描,控制系统的工作状态。本设计

24、选取的是AT89C51单片机,由于系统不需要特殊的A/D转换、PWM输出等功能,所以AT89C51足以满足系统需求。按键:用来控制单片机的工作状态,可控制两种工作状态,温度显示工作状态和对工作状态进行上下限的设置设定状态。本设计共有四个按键,低电平有效。开机后循环检测各点的温度,SET(S1)键进入报警温度值设置。ENTER(S2)键确定退出报警值设置状态,ADD(S3)报警值加,DEC(S4)报警值减。数码管:用来显示地址编号和温度,在进行温度上下限设置的时候显示相应的温度上下限。本设计采用四位八段数码管,共阴极连接。声光报警电路:指示系统工作状态,在超限的时候报警灯亮、蜂鸣器发出响声,进行

25、报警。本设计采用三个发光二极管作为指示灯,分别为报警灯、设定指示灯、工作状态灯,一个蜂鸣器,温度超限时,发出声响进行报警。2.3系统的工作原理每个DS18B20芯片有唯一编码,系统首先读取DS18B20的序列号,根据序列号对每一个DS18B20进行编号,在对DS18B20进行温度采集时,首先通过I²C总线对DS18B20进行自身ROM序列号的匹配,系统只对序列号匹配成功的DS18B20进行操作,DS18B20具有A/D转换功能。只有地址编码完全匹配的DS18B20,将A/D转换完毕的温度值发送给单片机,单片机通过I²C总线接收到DS18B20发送的温度。单片机判断是否超限,

26、通过I/O口送数码管进行显示并确定是否启动相应的声光报警。上电开机后单片机进入循环显示各点温度的正常工作状态,通过SET键使单片机进入报警值设定状态,ADD、DEC键可对DS18B20温度上下限进行调整,ENTER键可确定跳出报警值设定状态,实现温度上下限可变的温度报警系统。3 系统的硬件设计 系统硬件主要包括单片机、DS18B20温度采集模块、声光报警模块、按键控制模块、数码管显示模块。3.1单片机AT89C51AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性

27、能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案1。AT89C51芯片的引脚结构如图3-1:图3-1 AT89C51引脚图3.1.1功能特性AT89C51提供以下标准功能:40个引脚、4K Bytes Flash片内程序存储器、128 Bytes的随机存取数据存储器(RAM)、32个外部双向输入/输出(I/O)口、5个中断优先级2层中断嵌套中断、2个数据指针、2

28、个16位可编程定时/计数器、2个全双工串行通信口、3看门狗(WDT)电路、片内振荡器及时钟电路。此外,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式,空闲模式,CPU暂停工作,而RAM、定时/计数器、串行通信口、外中断系统可继续工作。掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求2。3.1.2管脚说明P0口:P0口为一个8位漏极开路双向I/O口,也即地址/数据总线复用口。作为输出口用时,能驱动8个TTL逻辑门电路。对端口写“1”时,被定义为高阻输入3。在

29、访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1口:P1口是一个带内部上拉电阻的8位双向I/O口,P1口的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口4。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在Flash编程和程序校验期间,P1接收低8位地址。部分端口还有第二功能,如表3-1所示。 表3-1 P1口部分引脚第二

30、功能端口引脚第二功能P1.5P1.6P1.7MOSI(用于ISP编程)MISO(用于ISP编程)SCK(用于ISP编程)P2口:P2口是一个带有内部上拉电阻的8位双向I/O口, P2口的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOV X DPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据寄存器(例如执行MOV X Ri指令)时,P2口线上的内容(也即

31、特殊功能寄存器(SFR)区中P2寄存器的内容),在整个访问期间不改变。在Flash编程或校验时,P2亦接收高位地址和其它控制信号。P3口: P3口是一个带有内部上拉电阻的双向8位I/O口, P3口的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写“1”时,它们被内部的上拉电阻拉高并可作为输入端口。作输入口使用时,被外部信号拉低的P3口将用上拉电阻输出电流(IIL)。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如表3-2所示:P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。表3-2P3口的第二功能P3口各位第二功能P3.0RXD(串行输入)P

32、3.1TXD(串行输出)P3.2(外部中断0输入)P3.3(外部中断1输入)P3.4T0(定时器0外部计数器脉冲输入)P3.5T1(定时器1外部计数器脉冲输入)P3.6(外部数据存储器读选通信号)P3.7(外部数据存储器写选通信号)RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上的高电平时间将使单片机复位。WDT溢出将使该引脚输出高电平,设置SFR AUXR的DISRTO位(地址8EH)可打开或关闭该功能。 DISRTO位缺省为RESET输出高电平打开状态。 ALE:当访问外部存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。即使不访问外部寄存器,A

33、LE仍以时钟振荡频率的1/6输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。值得注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只要一条MOVX和MOVC指令才会激活ALE。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE无效。:程序存储允许()输出是外部程序存储器的读选通信号,当AT89S51由外部程序存储器取指令(或数据)时,每个机器周期两次有效,即输出两个脉冲。当访问外部数据存储器时,没有两次

34、有效的信号。EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需要注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端保持高电平(接VCC端),CPU则执行内部程序存储器中的指令。Flash存储器编程期间,该引脚用于施加+12V编程电压(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入端。XTAL2:反向振荡放大器器的输出端。3.2温度采集模块美国Dallas半导体公司的数字化温度传感器DS1820是世界上第一片支持 "一线总线"接口的温度传感器,在其内部使用了在板(

35、ON-B0ARD)专利技术。全部传感元件及转换电路集成在形如一只三极管的集成电路内。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。现在,新一代的DS18B20体积更小、更经济、更灵活。使你可以充分发挥“一线总线”的优点。新的"一线器件"DS18B20体积更小、适用电压更宽、更经济。DS18B20可以程序设定912位的分辨率,精度为±0.5°C。可选更小的封装方式,更宽的电压适用范围。分辨率设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。DS18B20的性能是新一代产品中最好的性能价格比也非常出色继

36、"一线总线"的早期产品后,DS1820开辟了温度传感器技术的新概念。DS18B20使电压、特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统6。DS18B20也支持"一线总线"接口,测量温度范围为-55°C+125°C,在-10+85°C范围内,精度为±0.5°C。现场温度直接以"一线总线"的数字方式传输,大大提高了系统的抗干扰性8。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3.0V5.5V的电压范围,使

37、系统设计更灵活、方便。而且新一代产品更便宜,体积更小6。3.2.1DS18B20温度采集模块硬件电路图图 3-2 温度采集模块硬件电路图温度采集模块硬件电路如图3-4所示,多个DS18B20可以并联在唯一的三线上,实现组网多点测温,3管脚为VCC外接电源进行供电,DS18B20 供电的方法是从VDD 引脚接入一个外部电源,这样做的好处是I/O线上不需要加强上拉,而且总线控制器不用在温度转换期间总保持高电平。如图3-2温度采集模块所示,这样在转换期间可以允许在单线总线上进行其他数据往来7。另外,在单线总线上可以挂任意多片DS18B20,而且如果它们都使用外部电源的话,就可以先发一个Skip RO

38、M 命令,再接一个Convert T 命令,让它们同时进行温度转换。在温度转换期间需要对单总线DQ端提供强上拉,因此DQ端上拉4.7K的上拉电阻,注意当加上外部电源时,GND 引脚不能悬空。3.2.2DS18B20的主要特性1) DS18B20单线接口方式,仅需要一根信号线与CPU连接,即可实现CPU同DS18B20的双向通讯。传送串行数据,不需要外部元件。2) DS18B20每个芯片有唯一编码,支持组网功能,多个DS18B20可以并联在唯一的单线上,实现多点测温。3) DS18B20的测温范围为:55-125,在10-85时,其测量精度为±0.5。4) DS18B20的测温结果的数

39、字量位数为9-12位,可编程进行选择。在93.75ms和750ms内将温度值转化9位和12位的数字量。5) DS18B20不需要备份电源,可用数据线供电,也可用外部的电源(3.0-5.5V)供电。.6) 用户可自设定非易失性的报警上下限值,报警搜索命令可以识别某片DS18B20温度超限。3.2.3DS18B20的外部形状及内部结构图 3-3 DS18B20引脚图1) 图3-3为DS18B20的外部引脚图,其引脚定义如下: GND:1管脚接地;DQ :2管脚为数字信号输入/输出端;VDD:3管脚为外接供电电源输入端(在寄生电源接线方式时接地)2) 图3-4 的方框图示出了DS18B20内部结构的

40、主要部件。DS18B20有四个主要数字部件:64位光刻ROM;温度传感器;非易失性温度报警触发器TH和TL;一个高速暂存器。64位ROM和单线端口存储器和控制逻辑暂存器8位CRC产生器电源探测 温度传感器上限触发TH下限触发TL图 3-4 DS18B20的内部结构光刻ROM中的64位序列号(如图3-5所示)是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是1-8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就

41、可以实现一根总线上挂接多个DS18B20的目的。8-BIT CRC号码 48-BIT序列号 8-BIT系列码(10h)LSBMSBLSBLSBMSBMSB图3-5 64位光刻ROM存储器由一个高速暂存SRAM和一个存储高、低报警触发值的TH和TL的非易失性可擦除E2PROM组成。当报警功能不使用时,TH和TL寄存器可以当做普通寄存器使用。DS18B20温度传感器的结构示于图3-6所示,存储器由一个暂存E2PROM和一个存储高低温报警触发值TH 和TL 的非易失性电可擦除E2PROM组成。当在单线总线上通讯时,暂存器帮助确保数据的完整性。数据先被写入暂存器,这里的数据可被读回。数据经过校验后,用

42、一个拷贝暂存器命令会把数据传到非易性E2PROM中。这一过程确保更改存储器时数据的完整性。字节0和字节1是测得温度信息的LSB(低字节)和MSB(高字节),该字节是只读的。单片机可通过单线接口读到数据,读取时低位在前,高位在后。数据时按补码的格式存储的,具体的存储格式还是要根据配置字的设定而定。字节2和字节3是对E2PROM中的TH和TL的复制。数据通过写暂存器指令4Eh写入高速暂存器的2、3、4字节;数据必须以字节2为最低有效位开始传送。总线控制器要完成从暂存器到E2PROM的TH、TL和配置数据传递,必须发出复制暂存器指令48h。E2PROM寄存器中的数据在期间掉电时仍然继续保持;上电时,

43、数据被载入暂存器。暂存器 字节温度LSB0温度MSB1TH/用户字节12TL/用户字节23配置寄存器4保留位FFh5保留位0Ch6保留位10h7CRC8E2PROMTH/用户字节1TL/用户字节2图 3-6 DS18B20 存储器图表 3-3 TH、TL的存储格式bit7bit6bit5bit4bit3bit2bit1bit0S26252423222120DS18B20完成一次温度转换后,就拿温度值和存储在TH 和TL (表3-3)中的值进行比较。标志位(S)指出温度值的正负;正数S=0,负数S=1。每进行一次测温就对这个标识进行一次更新。当报警标识置位时,DS18B20会对报警搜索命令有反应

44、。这样就允许许多DS18B20并联在一起同时测温,如果某个地方的温度超过了限定值,报警的器件就会被立即识别出来并读取,而不用读未报警的器件。字节4存放的是配置寄存器的数据如表3-4所示,配置字的低5位一直都是“1”;TM是测试模式位,用于设置DS18B20在工作模式还是测试模式,在出厂时该位被设置为0,用户不要改动。R1和R0用来设置分辨率,温度分辨率设置表3-5 所示。表3-4 配置字结构bit7bit6bit5bit4bit3bit2bit1bit0TMR1R011111表3-5 温度分辨率设置表R1R0分辨率温度最大转换时间009位93.75ms0110位187.5ms1011位375m

45、s1112位750ms当配置存储器设定温度的分辨率为12位时,温度寄存器(LSB、MSB)存储格式如表3-6所示。表 3-6 12位精度时温度寄存器的存储格式LSbytebit7bit6bit5bit4bit3bit2bit1bit0232221202-12-22-32-4MSbytebit15bit14bit13bit12bit11bit10bit9bit8SSSSS262524二进制是以补码的形式存储的,前面5位是符号位。如果测得的温度大于0,这5位为0,只要将测到的数值乘以0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘以0.0625,可得到实际温度(

46、也可以理解为后4位为小数位,前面是符号位和整数位)。一些特殊温度值和输出数据的对照关系如表3-7所示。表3-7 DS18B20温度数据关系表温度数据输出(二进制)数据输出(十六进制)+12500000000 1111101000FA+2500000000 001100100032+1/200000000 000000010001000000000 000000000000-1/211111111 11111111FFFF-2511111111 11001110FFCE-5511111111 10010010FF92字节5、字节6、字节7被器件保留,禁止写入,默认值均为1.字节8存放的是前8字节

47、的CRC码,只读。CRC码能够在总线控制器读取DS18B20时进行数据校验。3.2.4单总线操作流程和操作命令单总线是指总线控制器CPU用两根线RX和TX来控制单总线期间,这样是为了方便描述,实际使用时是用一个引脚来完成读写操作。单线总线的空闲状态时高电平。无论任何理由需要暂停某一执行过程时,如果还想恢复执行,总线必须停留在空闲状态。在恢复期间,如果单总线处于非活动(高电平)状态,位与位间的恢复时间可以无限长。如果总线停止在低电平超过480s,总线上的所有器件将被复位8。1)操作流程通过单总线端口访问DS18B20的协议如下:步骤1,初始化;步骤2,ROM操作指令;步骤3,DS18B20功能指

48、令。每一次DS18B20的操作都不许满足以上步骤,若缺少步骤或者顺序混乱,器件将不会返回。2)操作指令a.初始化。通过单总线的所有执行操作处理都从一个初始化序列开始。初始化序列包括一个由总线控制器发出的复位脉冲和其后由从机发出的存在脉冲。存在脉冲让总线控制器知道DS18B20在总线上且准备好操作。b. ROM操作指令。DS18B20有关ROM的操作指令如表3-8所示。表3-8 ROM指令表指 令约定代码功 能读ROM33H读DS1820温度传感器ROM中的编码(即64位地址)。符合 ROM55H发出此命令之后,接着发出 64 位 ROM 编码,访问单总线上与该编码相对应的 DS18B20 使之作出响应,为下一步对该 DS18B20 的读写作准备。搜索 ROM0FOH用于确定挂接在同一总线上 DS18B20 的个数和识别 64 位 ROM 地址。为操作各器件作好准备。跳过 ROM0CCH忽略 64 位 ROM 地址,直接向 DS18B20 发温度变换命令。适用于单片工作。告警搜索命令0ECH执行后只有温度超过设定值上限或下限的片子才做出响应。c.存储器操作指令。DS18B20有关的存储器指令如表3-9所示。表3-9 RAM指令表指 令约定代码功 能温度变换4

温馨提示

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

最新文档

评论

0/150

提交评论