毕业论文:基于单总线的实时温度监控系统.doc

毕业论文:基于单总线的实时温度监控系统.doc

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于单总线的实时温度监控系统 2硬件电路设计 在硬件电路设计时,应着重考虑电子器件的供电方式,以及对器件的限压和限流保护。因为本次设计要求利用单总线技术,所以可以考虑使用寄生供电方式。设计的电路图如下。 图2 基于单总线的温度实时监控系统硬件电路总图 2.3软件设计 2.3.1设计窗体 本次设计要求软件的可视化窗体中包含实时温度显示、数据记录、存储管理和ROM数据,并且能将测得的数据保存到指定的数据库中。窗体界面如下。 图3 窗体界面 实时温度显示中可以看到当前室温,并且可以显示摄氏温度和华氏温度。数据记录包含温度曲线和温度日志,可以显示一天内的温度变化曲线。存储管理和ROM数据用来对数据库中已经保存的温度数据进行管理,如删除、转移等操作。 2.3.2软件编程 本系统软件部分采用Delphi来实现初始化、数据采集处理、温度报表管理,其主程序的流程图见图4。 图4 主程序流程图 本系统软件部分共分为3个部分,分别是: 1)初始化程序。 a.设置串行通信波特率; b.串行通讯方式的初始化; c.对TO,T1两个计数器的初始化; d.中断控制程序的初始化。此外,还负责从E2PROM 中调出以前的采样参数,使器件能够以它采样温度数据。 2) 当监控到ONTIME1和NTIME2标记时作相应温度的存储、转换、发送处理。ONTIME1和NTIME2的标记主要有定时电路决定,当到达采样间隔时,做出相应的处理。 3)采用动态显示方式即时显示温度,以节省电路规模,使得整个系统的体积变小。 3元器件的选择 3.1主要元器件知识 3.1.1 DS18B20 DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO-92小体积封装形式;温度测量范围为-55℃~+125℃,可编程为9位~12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可在远端引入,也可采用寄生电源方式产生;多个DS18B20可以并联到3根或2根线上,只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。以上特点使DS18B20非常适用于远距离多点温度检测系统。 1) DS18B20的内部结构 DS18B20内部结构如图5所示,主要由4部分组成:64位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的管脚排列如图7-1-2所示,DQ为数字信号输入/输出端;GND为电源地;VDD为外接供电电源输入端,在寄生电源接线方式时接地,见图6。 图5 DS18B20的内部结构 图6 DS18B20的管脚排列 ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码,每个DS18B20的64位序列号均不相同。64位ROM的排的循环冗余校验码(CRC=X8+X5+X4+1)。ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。 DS18B20中的温度传感器完成对温度的测量,用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。例如+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H。 高低温报警触发器TH和TL、配置寄存器均由一个字节的EEPROM组成,使用一个存储器功能命令可对TH、TL或配置寄存器写入。其中配置寄存器的格式如下: 0 R1 R0 1 1 1 1 1 MSBLSB R1、R0决定温度转换的精度位数:R1R0=“00”,9位精度,最大转换时间为93.75ms;R1R0=“01”,10位精度,最大转换时间为187.5ms;R1R0=“10”,11位精度,最大转换时间为375ms;R1R0=“11”,12位精度,最大转换时间为750ms;未编程时默认为12位精度。   高速暂存器是一个9字节的存储器。开始两个字节包含被测温度的数字量信息;第3、4、5字节分别是TH、TL、配置寄存器的临时拷贝,每一次上电复位时被刷新;第6、7、8字节未用,表现为全逻辑1;第9字节读出的是前面所有8个字节的CRC码,可用来保证通信正确。 2) DS18B20的工作时序 DS18B20的一线工作协议流程是:初始化→ROM操作指令→存储器操作指令→数据传输。其工作时序包括初始化时序、写时序和读时序,如图7(a)(b)(c)所示。 (a)初始化时序 (b)写时序 (c)读时序 图7 DS18B20的工作时序图 3) DS18B20与微处理器的连接 DS18B20与微处理器的连接如下图8所示。 (a)寄生电源工

文档评论(0)

花开半季 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档