第四组项目终结版.ppt

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
项目组四 ? 成员 李挺、谷利容、李小利、熊恋、吴谋艳、 周杰军、王衡、杜慧娟、杨荣霞 ? 单片机在检测和控制系统中得到了广泛的应用 , 在很多电子产品已经用到温度检测和温度控制 系统。温度则是系统常需要测量、控制和保持 的一个量。 我们从硬件和软件两方面来设计 AT89S51 单片机温度控制系统。 ? DS18B20 数字单总线温度传感器是目前最新 的测温器件 , 它集温度测量、 A/D 转换为一体 , 具有单总线结构 , 数字量输出 , 直接与 CPU 接口 等优点 , 即可用它组成单路温度测量装置 , 也可 用它组成多路温度测量装置 , 用单总线温度传感 器和单片机构成的测温装置具有推广价值。 设计制作一个远程温度采集系统,功能如下: 1. 具有实时温度采集功能,每 2S 采集一次温度。 2. 具有温度显示功能,当温度大于 25 度时声光报警。 3. 具有通信功能,把实时采集的温度传送给电脑, 并通过专用软件显示温度曲线和温度值。 4. 发挥部分:报警温度可以由键盘设定。 相关知识点的介绍: 1-wire Bus( 单总线 ) 数字温度传感器芯 片 DS18B20 是美国 Dallas 半导体公司 (现已并入 MAXIM 公司)于 20 世纪 90 年代新推出的一种串行总线技术。该 技术只需要一根信号线(将计算机的 地址线、数据线、控制线合为一根信 号线)便可完成串行通信。单根信号 线,既传输时钟,又传输数据,而且 数据传输是双向的,在信号线上可挂 上许多测控对象,电源也由这根信号 线供给,所以在单片机的低速(约 100kbps 以下的速率)测控系统中,使 用单根总线技术可以简化线路结构, 减少硬件开销。 ? DS18B20 的性能特点如下: ●独特的单线接口仅需要一个端口引脚进 行通信; ●多个 DS18B20 可以并联在惟一的三线上, 实现多点组网功能; ●无须外部器件; ●可通过数据线供电,电压范围为 3.0~5.5 V; ●零待机功耗; ●温度以9或12位数字; ●用户可定义报警设置; ●报警搜索命令识别并标志超过程序限定 温度(温度报警条件)的器件; DS18B20 的使用方法 由于 DS18B20 采用的是 1 - Wire 总线协议方式,即在一根数据线实现数据的双向传输,而对 AT89S51 单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的 协议时序来完成对 DS18B20 芯片的访问。 由于 DS18B20 是在一根 I/O 线上读写数据,因此,对读写的数据位有着严格的时序要求。 DS18B20 有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时 序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数 据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需 启动读时序完成数据接收。数据和命令的传输都是低位在先。 DS18B20 的复位时序 DS18B20 的读时序 对于 DS18B20 的读时序分为读 0 时序和读 1 时序两个过程。 对于 DS18B20 的读时隙是从主机把单总线拉低之后,在 15 秒之内就得释放单总线,以让 DS18B20 把数据传输到单总线上。 DS18B20 在完成一个读时序过程,至少需要 60us 才能完成。 DS18B20 的写时序 对于 DS18B20 的写时序仍然分为写 0 时序和写 1 时序两个过程。 对于 DS18B20 写 0 时序和写 1 时序的要求不同,当要写 0 时序时,单总线要被拉低至少 60us ,保证 DS18B20 能够在 15us 到 45us 之间能够正确地采样 IO 总线上的 “0” 电平,当要写 1 时序时,单总线被拉 低之后,在 15us 之内就得释放单总线。 温度转换算法及分析 由于 DS18B20 转换后的代码并不是实际的温度值,所以要进行计算转换。温度高字节( MS Byte )高 5 位是用来保存温度的正负(标志为 S 的 bit11 ~ bit15 ),高字节( MS Byte )低 3 位和低字节来保存温 度值( bit0 ~ bit10 )。其中低字节( LS Byte )的低 4 位来保存温度的小数位( bit0 ~ bit 3 )。由于本 程序采用的是 0.0625 的精度,小数部分的值,可以用后四位代表的实际数值乘以 0.0625 ,得到真正 的数值,数值可能带几个小数位,所以采取小数舍入,保留一位小数即可。也就说,本系统的温度精 确到了 0.1 度。 ? DS18B20 的测温功能 当 DSI8B20 接收到温度转换命令后,开始启动转换。转换完成后的 温度值就以 16 位带符号扩展的二进

文档评论(0)

zhaoxiaoj + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档