欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    仓库温度湿度监测系统的设计.doc

    • 资源ID:3934556       资源大小:394.50KB        全文页数:46页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    仓库温度湿度监测系统的设计.doc

    毕业设计(论文)任务书题 目仓库温度湿度监测系统设计学生姓名李立龙学号200805010219专业班级测控0802设计(论文)内容及基本要求设计一个单片机仓库温度湿度监测系统。主要要求:1. 学习掌握单片机的有关知识;2. 查阅相关资料; 3. 撰写开题报告;4. 完成仓库温度湿度监测系统电路设计;5. 编写软件并对系统进行计算机仿真;6. 撰写毕业设计论文;7. 翻译1.5万字符的英文资料。设计(论文)起止时间2012年 3 月 1 日 至 2012年 6 月 5 日设计(论文)地点西安石油大学指导教师签名年 月 日系(教研室)主任签名年 月 日学生签名年 月 日仓库温度湿度监测系统的设计摘 要:本课题设计是一种基于AT89C51单片机和温湿度传感器的温、湿度监测系统。本系统具有可读性高,稳定性高,反应速度快,测量值准确的特点。论文叙述了单片机、温度传感器DS18B20、湿度传感器HS1101的原理,介绍了系统的硬件和软件设计。并利用proteus软件进行电路的原理图及PCB图绘制。这个系统的功能是:通过按下不同的功能键来向单片机输入控制信号,控制温湿度的报警线,并在数码显示管上显示出对应的数值。系统利用Proteus与Keil 软件的联调来实现仿真功能,基本上达到了系统的设计要求。关键词 :单片机,温度传感器DS18B20,湿度传感器HS1101The design about temperature and humidity measurement system of warehouseAbstract: This paper designed a temperature and humidity measurement system of warehouse which based on AT89C51 and temperature and humidity measurement. This system has a readable, high stability, reaction speed, measured values exact characteristic.The paper includes the principle of microcontroller, temperature sensor DS18B20, humidity sensor HS1101 and system of hardware and software design, procedures, debug the software and hardware at the same time. In the process of designing, Proteus is used to plot schematic diagram and PCB diagram,Implemented functions are: transmitting control signals to the microcontroller by pressing different buttons, controlling the alarm line of temperature and humidity measurement, Through the press different function keys to single chip microcomputer control signal input, control of the temperature and humidity alarm line, and in the digital by LCD display the line 1602showed on the corresponding numerical. Proteus and Keil software system using the alignment to realize simulation function, basically achieved the design of the system requirements.Keyword:microcontroller, temperature sensor DS18B20, humidity sensor HS1101目录1 绪论11.1 选题背景11.2国内外研究现状11.3 课题内容简介21.4设计过程及工业要求22 仓库温度湿度监测系统的设计方案32.1 单片机的发展概述32.2 主要器件的论证及选取42.2.1 温度传感器的论证及选取42.2.2 湿度传感器的论证及选取52.3 总体方案设计及系统方框图53仓库温度湿度监测系统的设计原理73.1 DS18B20温度传感器简介73.1.1 DS18B20温度传感器概述73.1.2 DS18B20温度传感器详细说明83.2 HS1101电容式湿度传感器简介163.2.1 HS1101电容式湿度传感器概述163.2.2 HS1101电容式湿度传感器工作原理173.2.3 HS1101特性184 仓库温度湿度监测系统的系统设计194.1 仓库温度湿度监测系统设计的系统组成194.2 软件流程图214.3 仓库温度湿度监测系统总的程序设计234.3.1 读取温度数据子程序的设计244.3.2 数据比较程序的设计244.3.3 数据设置程序的设计244.4 软件仿真255 结论26参考文献27致谢28附录A 仿真结果图29附录B 系统总程序30附录C 系统电路PCB图40附录 D 元器件清单411 绪论1.1 选题背景防潮、防霉、防腐、防爆是仓库日常工作的重要内容,是衡量仓库管理质量的重要指标。它直接影响到储备物资的使用寿命和工作可靠性。为保证日常工作的顺利进行,首要问题是加强仓库内温度与湿度的监测工作。但传统的方法是用与湿度表、毛发湿度表、双金属式测量计和湿度试纸等测试器材,通过人工进行检测,对不符合温度和湿度要求的库房进行通风、去湿和降温等工作。这种人工测试方法费时费力、效率低,且测试的温度及湿度误差大,随机性大。因此我们需要一种造价低廉、使用方便且测量准确的温湿度测量仪。为保证日常工作的顺利进行,首要问题是加强仓库内温度的监测工作,因为温度的升高,就意味着粮库内的有氧呼吸的加强,就意味着马上就要发生腐烂霉变。因此我们需要一种造价低廉、使用方便且测量准确的温度测量仪。测量温湿度的关键是温湿度传感器,温湿度传感器的发展经历了三个发展阶段:传统的分立式传感器,模拟集成传感器,智能集成传感器。目前,国际上新型温湿度传感器正从模拟式向数字式,从集成化向智能化、网络化的方向飞速发展。1.2国内外研究现状 在工农业生产,气象,环保,国防,科研,航天等部门,经常需要对环境温度和湿度进行测量及控制。准备测量温湿度对于生物制药,食品加工,造纸等行业更是至关重要的。相比之下,测量湿度比测量温度更复杂,这是因为温度是个独立的被测量,而湿度却受大气压强和温度的影响。目前,温湿度测量领域的新技术不断涌现,新产品也层出不穷。主要表现在一下两方面:(1)温湿度传感器正从分立元件向集成化,智能化,系统化的方向迅速发展,为研发新一代温湿度测控系统创造了有利条件; (2)在温湿度测量系统中普遍采用线性化处理,自动温度补偿和自动校准湿度等新技术。在当代,随着电子技术,计算机技术的飞速发展,对现场温度的测量也由过去的刻度温度计,指针温度计想数字显示的智能温度计发展。而且,对测量的精度要求也越来越高。经调研知,在实际生活中的温差测控问题一直没能得到很好的解决。该课题的研究能实现温度的监测和控制,推广应用到日常生活中及其相关的领域。因此,研发高精度的温湿度监测系统具有很好的应用前景。1.3 课题内容简介本文介绍智能集成温度传感器DS18B20和湿度传感器HS1101的结构特征;以AT89C51单片机为控制器,以1602型LCD为显示器的温湿度测量装置;单片机对温、湿度传感器的控制程序,温、湿度的读取,16进制到BCD码转换以及LCD显示程序。使用DS1820的测温系统电路简单,测温精度高,连接方便,占用处理器I/O端口少。使用HS1101的湿度传感器价格低廉,精度高,软件资源丰富。但是较小的硬件开销意味着相对复杂的软件补偿,传感器与处理器间采用串行的数据通信,因此在进行软件设计时设计汇编程序时I/O的时序就显得较为复杂。1.4设计过程及工业要求 根据实际的需求,我们提出了测温组件的基本功能,需要说明的是,在这里你看不到传统的温度显示功能,因为实际上工作人员根本不可能到现场去记录温度的显示。同时增加了组件的测温点免维护自由增减功能,以适应系统的规模的自由裁剪。(1)基本功能;  检测温度、湿度;  显示温度、湿度;  过限报警。 (2)主要技术参数   温度检测范围 :-30+150;  测量精度 :0.5;  湿度检测范围 : 0%100%RH;  检测精度 :1%RH;  显示方式 :1602液晶模块显示。 报警方式 :LED指示灯发光报警。2 仓库温度湿度监测系统的设计方案当将单片机用作测控系统时,系统总要有被测信号懂得输入通道,由计算机拾取必要的输入信息。对于测量系统而言,如何准确获得被测信号是其核心任务;而对测控系统来讲,对被控对象状态的测试和对控制条件的监察也是不可缺少的环节。  传感器是实现测量与控制的首要环节,是测控系统的关键部件,如果没有传感器对原始被测信号进行准确可靠的捕捉和转换,一切准确的测量和控制都将无法实现。工业生产过程的自动化测量和控制,几乎主要依靠各种传感器来检测和控制生产过程中的各种量,使设备和系统正常运行在最佳状态,从而保证生产的高效率和高质量。2.1 单片机的发展概述 近年来,计算机技术迅猛发展,使得计算机在工业,农业,国防科研及日常生活的各个领域显示了日益旺盛的生命力,它已成为各国工业发展水平的主要标志之一,是发展新技术,改造老技术的强有力的武器,计算机使人类面临着一个新的赞赏技术和工业革命,它的作用远远超过了因蒸汽机和电的出现而产生的工业革命。目前,单片机正朝着高性能和多品种方向发展,单片机的发展正朝着CMOS化,低功耗,小体积,大容量,高性能,低价格和外围电路的内装化等几个方面发展。近几年,由于CMOS技术的进步,大大地促进了单片机的CMOS化,此种芯片除了低功耗外,还具有功耗的可控性,使单片机可以工作在功耗精细管理状态,并且单片机一般采用精简指令集结构和流水线技术,可以大幅度提高运行速度,提升信息处理功能,中断和定时控制功能,在一般上还具有串行扩展技术,随着低价位OTP及各种类型片内程序存储器的发展,加之外围接口不断进入片内,特别是IIC,API等串行总线的引入,可以使单片机的引脚设计得更少,单片机系统结构更加简化及规范化。这就引导我们利用单片机来实现对数显可调稳压电源的控制。 随着电子技术的迅速发展,计算机已深入渗透到我们的生活中,就51系列而言,由于Intel公司将其内核使用权以专利互换或出售的形式转给世界许多著名IC制造商,随着计算机技术的不断发展,在工业测量控制领域内单片机的应用越来越广泛。同时,随着超大规模集成电路工艺和集成制造技术的不断完善,单片机的硬件集成度也不断提高,已经出现了能满足各种不同需求、具有各种特殊功能的单片机,这类单片机具有集成度高、性能价格比优越、货源充足等优点,在工业测量领域内获得了极为广泛的应用价值。现代的电子产品朝密集型发展,而电子产品的温度特性普遍比较差,这就对温、湿度的监测提出了新的要求。若采用国外进口的温、湿度监测系统,虽然其性能较好,但是结合国情,其价格相当昂贵,又是全英文,推广起来较困难。就是在以上问题出现的情况下,我们设计出一个利用集成温度传感器及湿度传感器,配合单片计算机系统,从软件的编制上实现对各外围硬件的控制,最终实现对当前环境温、湿度进行监测。在硬件的设计上,所有元器件都采用了通用型产品,使得设计出来的产品生产及维修都相当方便,可以有效地降低成本,同时另外一点就是能用软件实现的功能尽量选用软件进行操作,更加突出了产品的简单性和高可靠性,因此,我们这一设计方法是一个值得推广的方法,接下来我们就对方案与设计原理方框图进行比较分析。2.2 主要器件的论证及选取 2.2.1 温度传感器的论证及选取方案一:采用热电阻温度传感器。热电阻是利用导体的电阻随温度变化的特性制成的测温元件。现应用较多的有铂、铜、镍等热电阻。其主要的特点为精度高、测量范围大、便于远距离测量。铂的物理、化学性能极稳定,耐氧化能力强,易提纯,复制性好,工业性好,电阻率较高,因此,铂电阻用于工业检测中高精密测温和温度标准。缺点是价格贵,温度系数小,受到磁场影响大,在还原介质中易被玷污变脆。按IEC标准测温范围-200650,百度电阻比W(100)=1.3850时,R0为100和10,其允许的测量误差A级为±(0.15+0.002 |t|),B级为±(0.3+0.005 |t|)。铜电阻的温度系数比铂电阻大,价格低,也易于提纯和加工;但其电阻率小,在腐蚀性介质中使用稳定性差。在工业中用于-50180测温。方案二:采用AD590。采用AD590,它的测温范围在-55+150之间,而且精度高。M档在测温范围内非线形误差为±0.3。AD590可以承受44V正向电压和20V反向电压,因而器件反接也不会损坏。使用可靠。它只需直流电源就能工作,而且,无需进行线性校正,所以使用也非常方便,接口也很简单。作为电流输出型传感器的一个特点是,和电压输出型相比,它有很强的抗外界干扰能力。AD590的测量信号可远传百余米。方案三:采用DS18B20。DS18B20 数字温度传感器,测温范围 55125,固有测温分辨率0.5。具有独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现多点测温。工作电源: 35V/DC。在使用中不需要任何外围元件;测量结果以912位数字量方式串行传送。综合比较方案一,二与方案三,方案三更为适合于本设计系统对于温度传感器的选择。2.2.2 湿度传感器的论证及选取 测量空气湿度的方式很多,其原理是根据某种物质从其周围的空气吸收水分后引起的物理或化学性质的变化,间接地获得该物质的吸水量及周围空气的湿度。电容式、电阻式和湿涨式湿敏原件分别是根据其高分子材料吸湿后的介电常数、电阻率和体积随之发生变化而进行湿度测量的。方案一:采用HOS-201湿敏传感器。HOS-201湿敏传感器为高湿度开关传感器,它的工作电压为交流1V以下,频率为50HZ1KHZ,测量湿度范围为0100%RH,工作温度范围为050,阻抗在75%RH(25)时为1M。这种传感器原是用于开关的传感器,不能在宽频带范围内检测湿度,因此,主要用于判断规定值以上或以下的湿度电平。然而,这种传感器只限于一定范围内使用时具有良好的线性,可有效地利用其线性特性。方案二:采用HS1100/HS1101湿度传感器。HS1100/HS1101电容传感器,在电路构成中等效于一个电容器件,其电容量随着所测空气湿度的增大而增大。不需校准的完全互换性,高可靠性和长期稳定性,快速响应时间,专利设计的固态聚合物结构,由顶端接触(HS1100)和侧面接触(HS1101)两种封装产品,适用于线性电压输出和频率输出两种电路,适宜于制造流水线上的自动插件和自动装配过程等。相对湿度在1%100%RH范围内;电容量由16pF变到200pF,其误差不大于±2%RH;响应时间小于5S;温度系数为0.04 pF/。可见精度是较高的。综合比较方案一与方案二,方案一虽然满足精度及测量湿度范围的要求,但其只限于一定范围内使用时具有良好的线性,可有效地利用其线性特性。而且还不具备在本设计系统中对温度-3050的要求,因此,我们选择方案二来作为本设计的湿度传感器。2.3 总体方案设计及系统方框图该系统主要由以下功能块系统构成:中央控制处理器STC89C52组成的主机系统;环境数据采集系统,输出显示与键盘控制系统等。主要的系统电路有:电源电路、温度传感器与湿度传感器电路、显示电路,报警电路、键盘输入控制电路等。电路分析我们在下一章节中进行分析。该系统的主要特点有:(1)该产品的互换性好,响应速度快,抗干扰能力强,外围电路简单易懂,因此体积小。(2)该系统能用软件的方式控制硬件,所有用软件方式设计的系统向硬件系统的转换是由有关开发软件自动完成的,易操作。(3)可以从以前的组合设计转向真正的自由设计,所以设计的移植性好,效率高。可适合大规模的现场制作。温度传感器DS18B20湿度传感器HS1101多谐振荡器波形产生电路CPU处理器AT89C51键盘输入控制电路系统电源1602液晶显示电路LED指示灯报警电路图 2-1 基于DS18B20和HS1101的温湿度监测系统方框图3仓库温度湿度监测系统的设计原理3.1 DS18B20温度传感器简介3.1.1 DS18B20温度传感器概述Dallas 半导体公司的数字化温度传感器 DS1820是世界上第一片支持 “一线总线”接口的温度传感器。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。同DS1820一样DS18B20也支持“一线总线”接口,测量温度范围为 -55°C+125°C,在-10+85°C 范围内,精度为±0.5°C。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3V5.5V 的电压范围,使系统设计更灵活、方便。而且新一代产品更便宜,体积更小。DS18B20 数字温度计提供 9 位温度读数,指示器件的温度 。信息经过单线接口送入 DS18B20 或从 DS18B20 送出,因此从中央处理器到 DS18b20 仅需连接一条线(和地),读写和完成温度变换所需的电源可以由数据线本身提供 ,而不需要外部电源。 因为每一个 DS1820 有唯一的系列(silicon serial number)因此多个 DS1820 可以存在于同一条单线总线上。这允许在许多不同的地方放置温度灵敏器件。此特性的应用范围包括 HVAC 环境控制,建筑物、设备或机械内的温度检测,以及过程监视和控制中的温度检测. 1. 特性 *独特的单线接口,只需 1 个接口引脚即可通信 *多点(multidrop)能力使分布式温度检测应用得以简化 *不需要外部元件 *可用数据线供电 *不需备份电源 *测量范围从-55至+125,增量值为 0.5 等效的华氏温度范围是-67°F至257°F ,增量值为 0.9°F *以9 位数字值方式读出温度 *在1 秒(典型值)内把温度变换为数字 *用户可定义的,非易失性的温度告警设置 *告警搜索命令识别和寻址温度在编定的极限之外的器件(温度告警情况) *应用范围包括恒温控制,工业系统,消费类产品,温度计或任何热敏系统.2 . 引脚排列图3-1 DS18B20温度传感器引脚图3. 引脚说明 表3-1引 脚8脚SOIC引脚PR35符号说 明51GND地42DQ单线运用的数据输入/输出引脚,漏极开路见。33Vdd寄生电可选Vdd引脚 3.1.2 DS18B20温度传感器详细说明 1. 工作原理图3-2的框图表示 DS18B20 的主要部件 DS18B20 有三个主要的数据部件:1)64 位光刻ROM;2)温度灵敏元件;3)非易失性温度告警触发器TH和TL。器件从单线的通信线取得其电源,在信号线为高电平的时间周期内,把能量贮存在内部的电容器中,在单信号线为低电平的时间期内,断开此电源- 直到信号线变为高电平重新接上寄生(电容)电源为止。作为另一种可供选择的方法,DS18B20也可用外部5V电源供电。 图 3-2 DS18B20温度传感器结构框图 与DS18B20的通信经过一个单线接口。在单线接口情况下,在ROM操作未定建立之前不能使用存贮器和控制操作。主机必须首先提供五种ROM操作命令之一:1) Read ROM(读 ROM) ;2) Match ROM(匹配ROM);3)Search ROM(搜索 ROM);4)Skip ROM(跳过 ROM); 5)Alarm Search(告警搜索)。这些命令对每一器件的 64 位激光 ROM 部分进行操作。如果在单线上有许多器件,那么可以挑选出一个特定的器件,并给总线上的主机指示存在多少器件及其类型。在成功地执行了 ROM 操作序列之后,可使用存贮器和控制操作,然后主机可以提供六种存贮器和控制操作命令之一。 2. 寄生电源(parasite power) 当I/O或Vdd引脚为高电平时,这个电路便取得电源,只要符合指定的定时和电压要求,I/O 将提供足够的功率。寄生电源的优点是双重的:1)利用此引脚,远程温度检测无需本地电源;2)缺少正常电源条件下也可以读 ROM。 为了使DS18B20能完成准确的温度变换,当温度变换发生时I/O线上必须提供足够的功率。因为DS18B20的工作电流高达1mA,5K的上拉电阻将使I/O线没有足够的驱动能力。如果几个DS18B20在同一条I/O线上而且企图同时变换,那么这一问题将变得特别尖锐。 3. DS18B20的运用DS18B20通过使用在板温度测量专利技术来测量温度湿度。DS18B20 通过门开通期间内低温度系数振荡器经历的时钟周期个数技术来测量温度,而门开通期由高温度振荡器决定。计数器予置对应于-55摄氏度的基数,如果在门开通期结束前计数器达到零,那么温度寄存器它也被予置到-55摄氏度的数值将增量,指示温度高于-55摄氏度。同时,计数器用斜率累加器电路所决定的值进行予置。为了对遵循抛物线规律的振荡器温度特性进行补偿,这种电路是必须的,时钟再次使计数器计值至它达到零。如果门开通时间仍未结束,那么此过程再次重复。DS18B20 内部对此计算的结果可提供 0.5的分辨力。温度以 16bit 带符号位扩展的二进制补码形式读出,下表给出了温度值和输出数据的关系。数据通过单线接口以串行方式传输。DS18B20 测温范围-55+125,以 0.5递增。如用于华氏温度,必须要用一个转换因子查找表。表3-2温度数字输出(二进制)数据输出(16进制)+12500000111 1111101007D0h+25.062500000001 100100010191h+1/200000000 000010000008h000000000 000000000000h-1/211111111 11111000FFF8h-25.062511111110 01101111FF6Fh-5511111100 10010000FC90h 注意 DS18b20内温度表示值为 1/2LSB,如下所示9bit 格式:最高有效(符号)位被复制充满存储器中两字节温度寄存器的高 MSB位,由这种“符号位扩展”产生出了示于表 1 的16bit 温度读数。 可用下述方法获得更高的分辨力。首先,读取温度值,将 0.5位(LSB)从读取的值中截去,这个值叫做 TEMP_READ。然后读取计数器中剩余的值,这个值是门周期结束后保留下来的值(COUNT_REMAIN)。最后,我们用到在这个温度下每度的计数值(COUNT_PER_C)。用户可以用下面的公式计算实际温度值:4 . 报警搜索操作 DS18B20完成一次温度转换后,就拿温度值和存储在TH和TL中的值进行比较。因为这些寄存器是8位的,所以0.5位被忽略不计。TH或TL 的最高有效位直接对应16位温度寄存器的符号位。如果测得的温度高于TH或低于TL,器件内部就会置位一个报警标识。每进行一次测温就对这个标识进行一次更新。当报警标识置位时,DS18B20会对报警搜索命令有反应。这样就允许许多DS18B20并联在一起同时测温,如果某个地方的温度超过了限定值,报警的器件就会被立即识别出来并读取,而不用读未报警的器件。 5 . 64位光刻ROM 每只DS18B20都有一个唯一的长达64位的编码。最前面8位是单线系列编码(DS18B20的编码是19h)。下面 48 位是一个唯一的序列号。最后8位是以上56位的CRC码。64位ROM和 ROM 操作控制区允许DS18B20做为单线制器件并按照详述于“单线总线系统”一节的单线协议工作。只有建立了 ROM 操作协议,才能对DS18B20进行控制操作。单线总线控制器必须提供5个ROM操作命令其中之一:1)Read ROM,2)Match ROM,3)Search Rom,4)Skip ROM,5)Alarm Search。成功进行一次 ROM 操作后,就可以对 DS18b20 进行特定的操作,总线控制器可以发出六个存储器和控制操作命令中的任一个。64位光刻ROM8位CRC编码48位序列号8位产品系列编码MSB LSB MSB LSB MSB LSB6. CRC 发生器 DS18B20 中有8 位CRC 存储在 64 位 ROM 的最高有效字节中。总线控制器可以用64位ROM中的前56位计算出一个CRC值,再用这个和存储在DS18b20中的值进行比较,以确定ROM数据是否被总线控制器接收无误。CRC计算等式如下: CRC=X8+X5+X4+1 DS18B20同样用上面的公式产生一个8位CRC值,把这个值提供给总线控制器用来校验传输的数据。在任何使用CRC进行数据传输校验的情况下,总线控制器必须用上面的公式计算出一个CRC值,和存储在DS18B20的64位ROM中的值或 DS18B20内部计算出的8位CRC值进行比较。CRC值的比较以及是否进行下一步操作完全由总线控制器决定。当在 DS18B20中存储的或由其计算的CRC值和总线控制器计算的值不相符时,DS18B20内部并没有一个能阻止命令序列进行的电路。 单线CRC可以用一个由移位寄存器和XOR门构成的多项式发生器来产生。 7. 存储器 DS18B20的存储器结构示于图3.1.3。存储器由一个暂存RAM和一个存储高低温报警触发值TH和TL的非易失性电可擦除(E2)RAM组成。当在单线总线上通讯时,暂存器帮助确保数据的完整性。数据先被写入暂存器,这里的数据可被读回。数据经过校验后,用一个拷贝暂存器命令会把数据传到非易性(E2)RAM 中。这一过程确保更改存储器时数据的完整性。暂存器的结构为8个字节的存储器。头两个字节包含测得的温度信息。第三和第四字节是TH和TL的拷贝,是易失性的,每次上电复位时被刷新。下面两个字节没有使用,但是在读回数据时,它们全部表现为逻辑1。第七和第八字节是计数寄存器,它们可以被用来获得更高的温度分辨力。还有一个第九字节,可以用读暂存器命令读出。这个字节是以上八个字节的 CRC 码。图3-3 DS18b20存储器图8. 单线总线系统 单线总线系统包括一个总线控制器和一个或多个从机。DS18B20是从机。关于这种总线分三个题目讨论:硬件结构、执行序列和单线信号(信号类型和时序)。 单线总线只有一条定义的信号线;重要的是每一个挂在总线上的器件都能在适当的时间驱动它。为此每一个总线上的器件都必须是漏极开路或三态输出。DS18B20 的单总线端口(I/O 引脚)是漏极开路式的,内部等效电路见图3-4。一个多点总线由一个单线总线和多个挂于其上的从机构成。单线总线需要一个约5K的上拉电阻。图3-4 硬件结构单线总线的空闲状态是高电平。无论任何理由需要暂停某一执行过程时,如果还想恢复执行的话,总线必须停留在空闲状态。在恢复期间,如果单线总线处于非活动(高电平)状态,位与位间的恢复时间可以无限长。如果总线停留在低电平超过 480s,总线上的所有器件都将被复位。 通过单线总线端口访问 DS1820 的协议如下: *初始化 *ROM 操作命令 *存储器操作命令 *执行/数据 通过单线总线的所有执行(处理)都从一个初始化序列开始。初始化序列包括一个由总线控制器发出的复位脉冲和跟有其后由从机发出的存在脉冲。存在脉冲让总线控制器知道 DS18B20在总线上且已准备好操作。a. ROM操作命令 一旦总线控制器探测到一个存在脉冲,它就可以发出5个ROM命令中的任一个。所有 ROM 操作命令都8位长度。下面是这些命令(参见流程图): Read ROM 33h 这个命令允许总线控制器读到DS18B20的8位系列编码、唯一的序列号和8位CRC码。只有在总线上存在单只DS18B20的时候才能使用这个命令。Match ROM 55h 匹配ROM命令,后跟64位ROM序列,让总线控制器在多点总线上定位一只特定的DS18B20。只有和64位ROM序列完全匹配的DS18B20才能响应随后的存储器操作命令。所有和64位ROM序列不匹配的从机都将等待复位脉冲。这条命令在总线上有单个或多个器件时都可以使用。 Skip ROM CCh 这条命令允许总线控制器不用提供64位ROM编码就使用存储器操作命令,在单点总线情况下右以节省时间。如果总线上不止一个从机,在Skip ROM命令之后跟着发一条读命令,由于多个从机同时传送信号,总线上就会发生数据冲突(漏极开路下拉效果相当于相与)。 Search ROM F0h 当一个系统初次启动时,总线控制器可能并不知道单线总线上有多少器件或它们的64位ROM编码。搜索ROM命令允许总线控制器用排除法识别总线上的所有从机的64位编码。 Alarm Search ECh 这条命令的流程图和Search ROM相同。然而,只有在最近一次测温后遇到符合报警条件的情况,DS18B20才会响应这条命令。报警条件定义为温度高于TH或低于TL。只要 DS18B20不掉电,报警状态将一直保持,直到再一次测得的温度值达不到报警条件。 b. I/O信号 DS18B20需要严格的协议以确保数据的完整性。协议包括几种单线信号类型:复位脉冲、存在脉冲、写0、写1、读0 和读1。所有这些信号,除存在脉冲外,都是由总线控制器发出的。 和DS18B20间的任何通讯都需要以初始化序列开始,一个复位脉冲跟着一个存在脉冲表明 DS18B20 已经准备好发送和接收数据(适当的ROM命令和存储器操作命令)。 总线主机发送(TX)一复位脉冲(最短为480us的低电平信号)接着总线主机便释放此线并进入接收方式(Rx )。单线总线经过5k的上拉电阻被拉至高电平状态。在检测到 I/O 引脚上的上升沿之后,DS18B20等待15-60us并且接着发送存在脉冲(60-240us的低电平信号)。c . 存储器操作命令 下述命令协议概括于表 3-3 表3-3指 令说 明协议发出协议代码后单总线操作备注温度转换命令温度转换启动温度转换44h读温度“忙”状态1存储器命令读暂存存储器读暂存器和CRC字节BEh读数据直到9字节写暂存存储器写字节到暂存器地此2和3处(TH 和TL温度报警触发器)4Eh写二个字节到地址2,33复制暂存存储器把暂存器数据复制到非易性存储器仅地址2和地址348h读复制状态2重新调入E2把贮存在非易失性存储器内的数值重新调入暂存器(温度报警触发器)B8h读温度“忙”状态读电源发送电源模式到主机B4h读电源 Write Scratchpad 4E 这个命令向 DS1820 的暂存器中写入数据,开始位置在地址 2。接下来写入的两个字节将被存到暂存器中的地址位置 2 和3。可以在任何时刻发出复位命令来中止写入。 Read Scratchpad BEh 这个命令读取暂存器的内容。读取将从字节0开始,一直进行下去,直到第 9(字节 8,CRC)字节读完。如果不想读完所有字节,控制器可以在任何时间发出复位命令来中止读取。 Copy Scratchpad 48h 这条命令把暂存器的内容拷贝到DS18B20的E2存储器里,即把温度报警触发字节存入非易失性存储器里。如果总线控制器在这条命令之后跟着发出读时间隙,而DS18B20又正在忙于把暂存器拷贝到E2存储器,DS18B20就会输出一个“0”,如果拷贝结束的话,DS18B20则输出“1”。如果使用寄生电源,总线控制器必须在这条命令发出后立即起动强上拉并最少保持10ms。 Convert T 44h 这条命令启动一次温度转换而无需其他数据。温度转换命令被执行,而后 DS18B20保持等待状态。如果总线控制器在这条命令之后跟着发出读时间隙,而 DS18B20又忙于做时间转换的话,DS18B20将在总线上输出 “0”,若温度转换完成,则输出“1”。如果使用寄生电源,总线控制器必须在发出这条命令后立即起动强上拉,并保持500ms。 Recall E2 B8h 这条命令把报警触发器里的值拷回暂存器。这种

    注意事项

    本文(仓库温度湿度监测系统的设计.doc)为本站会员(laozhun)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开