第8章51单片机的常用外扩模块1DS18B20和IIC探究.ppt

第8章51单片机的常用外扩模块1DS18B20和IIC探究.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 单总线、I2C总线与1602液晶 8.1 单总线 8.1.1 单总线介绍 单总线(1-Wire)是Maxim全资子公司Dallas的一项专有技术,与目前多数标准串行数据通信方式,如SPI,I2C等不同,它采用单根信号线,既传输时钟,又传输数据,而且数据传输是双向的,它具有节省I/ O口线资源、结构简单、成本低廉、便于总线扩展和维护等诸多优点。 单总线采用简单的信令协议,通过一条公共数据线实现主机/主控制器与一个或多个从机之间的半双工、双向通信,如图所示。 ; 在单总线主机/从机配置中,所有设备共享一条公共数据线,从机芯片借助这条单总线实现数据传输与供电。 典型的单总线主机包括一个漏极开路I/O口,通过电阻上拉到3V至5V电源。也可以选用更完善的主控制器,这种控制器具有专用的线驱动器。 单总线系统的另一个重要特性是:每个从机有一个唯一的、不能更改(ROM)的64位光刻序列号(ID)。除了为终端产品提供唯一的电子ID外,64位ID还允许主机从挂接在同一条总线上的许多从机芯片中选择一个,由此实现主、从机通信。 单总线通信由主机启动、控制所有的数据传输。 单总线通信波形与脉宽调制类似,数据位传输按照宽脉冲(逻辑1)或窄脉冲(逻辑0)发送数据。总线主机(MS)首先发出“复位”脉冲启动通信过程,并通过该脉冲同步整个总线系统。 大多数单总线器件都支持两种数据速率:15kbps的标准速率和111kbps的高速速率。通信协议为自同步,并可接收数据位之间的较长延迟。 ; 在没有专用总线主机的情况下,单片机可以产生单总线时序信号。对单片机系统要求如下: (1)单片机的通信端口必须是双向的,其输出为漏极开路,且具有弱上拉。这也是所有单总线的基本要求。 (2)单片机必须能产生标准速度单总线通信所需的精确1μs延时和高速通信所需要的0.25μs延时。 (3)通信过程不能被中断。 ;8.1.2 DS18B20工作原理 ? 1. DS18B20的特点 单线数字温度传感器DS18B20器件的特点如下: 1)独特的单线接口方式:DS18B20与微处理器连接时仅需要一条信号线即可实现单片机与DS18B20的双向通讯。 2)在使用中不需要任何外围元件。 3)可用数据线供电,电压范围: 3.0~ 5.5 V。 4)测温范围:-55 ~125 ℃。测温分辨率为0.5℃。 5)通过编程可实现9~12位的数字读数方式 6)用户可自设定非易失性的报警上下限值。 7)支持多点组网功能,多个DS18B20可以并联在三条线上,实现多点测温。 8)负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 ;;DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的管脚排列如图8-3所示,其中DQ为数字信号输入/输出端;GND为电源地;VDD为外接供电电源输入端(在寄生电源接线方式时接地)。 (1)64 b闪速ROM的结构如下:;第5字节是配置寄存器,其内容用于确定温度值的数字转换分辨率,DS18B20工作时按此寄存器中的分辨率将温度转换为相应精度的数值。该字节各位的定义如下: ;3. 温度值格式 当DS18B20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在内部存储器的第1,2字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式以0.0625℃/LSB形式表示。温度值格式如下: ;4. DS18B20与单片机的典型接口设计 DS18B20与51单片机的接线如图所示。 ;8.1.3 软件设计? 1. 复位与读、写时序 由于DS18B20是在一根I/O线上读写数据,对读写有着严格的时序要求,因此有通信协议来保证各位数据传输的正确性和完整性。 (1)DS18B20的复位时序 ;(2)DS18B20的读时序 对于DS18B20的读时序分为读0时序和读1时序两个过程。 读时序是从单片机把单总线拉低之后,在15μs之内就得释放单总线,以让DS18B20 把数据传输到单总线上。DS18B20在完成一个读时序过程,至少需要60us才能完成。 ;(3)DS18B20的写时序 对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。 对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。 ;2.操作命令介绍 (1)ROM命

文档评论(0)

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

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

1亿VIP精品文档

相关文档