毕业设计论文 单片机 红外抄表系统.doc

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
引 言 随着“信息时代”的到来,作为获取信息的手段传感器技术得到了的进步,其应用领域越来越广泛,对其要求越来越高,需求越来越迫切。传感器技术已成为衡量一个国家科学技术发展水平的重要标志之一。因此,了解并掌握传感器的基本结构、工作原理及特性是非常重要的。本文利用单片机结合技术而开发设计了①具有高的测量精度和分辨率,测量范围大;②抗干扰能力强,稳定性好;③信号易于处理、④便于动态及多路测量,读数直观;⑤安装方便,维护简单,工作可靠性高。单总线温度传感器可以采用DALLAS公司生产的DS18B20系列,这类温度传感器直接输出数字信号,且多路温度传感器可以挂在1条总线上,共同占用单片机的1个I/O口即可实现。在提升单片机I/O口驱动能力的前提下,理论上可以任意扩充检测的温度点数。 比较两个方案后可以发现,方案二更适合于用作本系统的实施方案。尽管方案二不需要A/D,但考虑到系统扩充等因素,单片机可以选用AT98C2051。 2 硬件部分 采用方案二的硬件设计比较简单,系统构成如图1所示。 图 1温度测试系统和手持接收系统组成框图 2.1 DS18B20介绍 DALLAS公司的DS18B20单总线数字传感器工作温度范围是-55~125,在-30~85范围内温度测量精度为±5℃;具有温度报警功能,用户可设置最高和最低报警温度,且设置值掉电不丢失;采用DALLAS公司特有的单总线通信协议,只用一条数据线就可实现与MCU的通信;此外,DS18B20能够直接从数据线获得电源,无需外部电池供电。 ℃到+125℃,增量为0.5℃(最高精度可达0.1℃),转换速度小于1s(典型值)。 而在本遥测系统中采用外部电源供电温度测量工作方式,其中电阻R是上拉电阻,使得单线总线的空闲状态是高电平。它与CPU(AT89C51)的接法如图2。 5 V R 地 图 2 DS18B20与单片机的连接 由于DS18B20只有一根数据线。因此它和主机(单片机)通信是需要串行通信,而AT89C51有两个串行端口,所以可以不用软件来模拟实现。经过单线接口访问DC18B20必须遵循如下协议:初始化、、μs的低电平信号)。接着主机便释放此线并进入接收方式(Rx)。总线经过4.7K的上拉电阻被拉至高电平状态。在检测到I/O引脚上的上升沿之后,DS18B20等待15-60μs,并且接着发送脉冲(60-240μs的低电平信号)。然后以存在复位脉冲表示DS18B20已经准备好发送或接收,然后给出正确的ROM命令和存储操作命令的数据。DS18B20通过使用时间片来读出和写入数据,时间片用于处理数据位和进行何种指定操作的命令。它有写时间片和读时间片两种。 写时间片:当主机把数据线从逻辑高电平拉至逻辑低电平时,产生写时间片。有两种类型的写时间片:写1时间片和写0时间片。所有时间片必须有60微秒的持续期,在各写周期之间必须有最短为1微秒的恢复时间。 读时间片:从DS18B20读数据时,使用读时间片。当主机把数据线从逻辑高电平拉至逻辑低电平时产生读时间片。数据线在逻辑低电平必须保持至少1微秒;来自DS18B20的输出数据在时间下降沿之后的15微秒内有效。为了读出从读时间片开始算起15微秒的状态,主机必须停止把引脚驱动拉至低电平。在时间片结束时,I/O引脚经过外部的上拉电阻拉回高电平,所有读时间片的最短持续期为60微秒,包括两个读周期间至少1μs的恢复时间。 一旦主机检测到DS18B20的存在,它便可以发送一个器件ROM操作命令。所有ROM操作命令均为8位长。 DS18B20的引脚定义和封装形式如图3所示。DQ为数字信号输入/输出端;GND为电源地;VDD为外接电源ROM中64位序列号它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20一根总线上挂接多个DS18B20。所有的串行通讯,读写每一个bit位数据都必须严格遵守器件的时序逻辑来编程,同时还必须遵守总线命令序列,对单总线的DS18B20芯片来说,访问每个器件都要遵守下列命令序列:首先是初始化;其次执行ROM命令;最后就是执行功能命令(ROM命令和功能命令后面以表格形式给出)。??? 如果出现序列混乱,则单总线器件不会响应主机。当然,搜索ROM命令和报警搜索命令,在执行两

文档评论(0)

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

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

1亿VIP精品文档

相关文档