0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

单总线1-Wire原理及特点

strongerHuang 来源:strongerHuang 作者:strongerHuang 2022-03-09 17:38 次阅读

嵌入式底层通信中,像485总线、I2C总线等都是比较常见的通信总线。

今天给大家分享一种相对 485、I2C没有那么流行,但也是一种常用的总线:1-Wire单总线。

单总线1-Wire介绍

1-Wire,即大家说的单总线。

单总线是美国DALLAS公司推出的外围串行扩展总线技术。与SPI、I²C串行数据通信方式不同.它采用单根信号线,既传输时钟又传输数据,而且数据传输是双向的,具有节省I/O口线、资源结构简单、成本低廉、便于总线扩展和维护等诸多优点。

75e23948-9642-11ec-952b-dac502259ad0.png

1-Wire器件按照串行协议进行供电和数据通信,能够以无与伦比的优势为系统增添特定功能,大大简化系统的互联电路。

1-Wire 产品特点 :

通过单线接口提供器件控制及操作

每个器件具有唯一的工厂光刻ID

通过单总线供电(“寄生电源”)

可挂接多点:单一总线可挂接多个器件

提供额外的ESD保护

1-Wire原理

顾名思义,单总线即只有一根数据线,系统中的数据交换、控制都由这根线完成。

设备(主机或从机)通过一个漏极开路或三态端口连至该数据线,以允许设备在不发送数据时能够释放总线,而让其它设备使用总线,其内部等效电路如图所示:

75fbf176-9642-11ec-952b-dac502259ad0.png

单总线通常要求外接一个约为4.7kΩ的上拉电阻,这样,当总线闲置时,其状态为高电平。

主机和从机之间的通信主要通过3个步骤完成,分别为:初始化1-wire器件、识别1-wire器件和交换数据。

由于它们是主从结构,只有主机呼叫从机时,从机才能应答,因此主机访问1-wire器件都必须严格遵循单总线命令序列,即初始化、ROM、命令功能命令。如果出现序列混乱,1-wire器件将不响应主机(搜索ROM命令,报警搜索命令除外)。

1-Wire时序描述

所有的单总线器件都要遵循严格的通信协议,以保证数据的完整性。

1-wire协议定义了复位脉冲、应答脉冲、写0、读0和读1时序等几种信号类型。

所有的单总线命令序列(初始化,ROM命令,功能命令)都是由这些基本的信号类型组成的。在这些信号中,除了应答脉冲外,其它均由主机发出同步信号,并且发送的所有命令和数据都是字节的低位在前。

760e9d76-9642-11ec-952b-dac502259ad0.png

其中,(a)是初始化时序,初始化时序包括主机发出的复位脉冲和从机发出的应答脉冲。主机通过拉低单总线至少480μs产生Tx复位脉冲;然后由主机释放总线,并进入Rx接收模式。主机释放总线时,会产生一由低电平跳变为高电平的上升沿,单总线器件检测到该上升沿后,延时15~60μs,接着单总线器件通过拉低总线60~240μsμ来产生应答脉冲。主机接收到从机的以应答脉冲后,说明有单总线器件在线,然后主机就可以开始对从机进行ROM命令和功能命令操作。

图中的(b)、(c)、(d)分别是写1、写0和读时序。在每一个时序中,总线只能传输一位数据。所有的读、写时序至少需要60μs,且每两个独立的时序之间至少需要1μs的恢复时间。

图中,读、写时序均始于主机拉低总线。在写时序中,主机将在拉低总线15μs之内释放总线,并向单总线器件写1;若主机拉低总线后能保持至少60μs的低电平,则向单总线器件写0。单总线器件仅在主机发出读时序时才向主机传输数据,所以,当主机向单总线器件发出读数据命令后,必须马上产生读时序,以便单总线器件能传输数据。

在主机发出读时序之后,单总线器件才开始在总线上发送0或1。若单总线器件发送1,则总线保持高电平,若发送0,则拉低总线。

由于单总线器件发送数据后可保持15μs有效时间,因此,主机在读时序期间必须释放总线,且须在15μs的采样总线状态,以便接收从机发送的数据。

1-Wire应用

单总线应用在很多领域,比如:单总线IC器件、存储器、温湿度传感器、逻辑器件、时钟芯片等。

学习过单片机的同学,应该大多数都用过DS18B20这个经典的温度传感器,单片机与它的连接(通信)就是通过单总线(1-Wire)实现的。

DS18B20电路图:

7620ac82-9642-11ec-952b-dac502259ad0.jpg

DS18B20单总线应用:

7631ea42-9642-11ec-952b-dac502259ad0.png

此外,很多器件(模组)为了适应不同需求,会兼容很多通信接口,比如I²C、 SPI、 1-wire同时支持。

除了这个经典的DS18B20之外,其实我们接触的很多器件,也是支持单总线通信的。

原文标题:通信教程 | 1-Wire单总线原理及应用

文章出处:【微信公众号:strongerHuang】欢迎添加关注!文章转载请注明出处。

审核编辑:彭菁
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据线
    +关注

    关注

    8

    文章

    280

    浏览量

    37641
  • 时钟芯片
    +关注

    关注

    2

    文章

    242

    浏览量

    39806
  • 单总线
    +关注

    关注

    1

    文章

    36

    浏览量

    12383
  • 1-Wire
    +关注

    关注

    0

    文章

    49

    浏览量

    21280

原文标题:通信教程 | 1-Wire单总线原理及应用

文章出处:【微信号:strongerHuang,微信公众号:strongerHuang】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于C++模板技术的1-wire总线编程

    这是一个比较简单的 1-wire 总线 C++ 模板库。这个库由 4 个部分组成:11-wire 协议链路层接口类:ow_t定义了 1-wire
    发表于 11-22 23:40

    Maxim 1-Wire 读写器

    本公司自主研发并生产的1-Wire 单总线器件读写器,可兼容DS9097,采用USB接口,USB供电。提供DS2502/DS2502 ALL IN ONE 编程器,无需外部电源,连接USB接口就可以编程,和外部输入12V电源说Byebye淘宝网输入DS9097/DS949
    发表于 07-10 14:35

    如何访问1-Wire API

    任何组件在创建者来实现这一点。有人知道如何访问1-Wire API吗?谢谢 以上来自于百度翻译 以下为原文I have been looking for a 1-wire component
    发表于 07-29 15:25

    如何设计嵌入式单总线控制器?

    DS1820是美国DALLAS公司生产的一种单总线(1-wire)数字温度传感器,采用1-wire总线通信协议。具有独特的单总线通信方式以及
    发表于 08-12 06:03

    1-wire单总线的基本原理

    1-wire单总线的基本原理:1-wire 单总线是Maxim 全资子公司,Dallas 的一项专有技术与目前多数标准串行数据通信方式,如SPI/I2C/MICROWIRE 不同它采用
    发表于 09-26 16:57 55次下载

    1-wire单总线的基本原理

    1-wire单总线的基本原理 1-wire 单总线是Maxim 全资子公司Dallas 的一项专有技术与目前多数标准串行数据通信方式如SPI/I2C/MICROWIRE
    发表于 02-05 17:58 79次下载

    利用单总线控制器通讯

    利用单总线控制器通讯 本示例的程序采用C 语言编写,主程序为:“Get Temperature”(获取温度),它完成1-Wire 控制器的初始化,搜索1-Wire 总线上的所有器件,
    发表于 03-18 10:05 27次下载

    DS1820单总线(1-wire)数字温度传感器

      DS1820是美国DALLAS公司生产的一种单总线(1-wire)数字温度传感器,采用1-wire总线通信协议。具有独特的单总线通信方式
    发表于 12-09 11:35 3771次阅读
    DS1820<b class='flag-5'>单总线</b>(<b class='flag-5'>1-wire</b>)数字温度传感器

    1-Wire总线主机

    Abstract: Communication with 1-Wire slave devices requires a 1-Wire master. There are numerous ways
    发表于 10-19 17:02 53次下载

    1-wire_单总线的基本原理

    1-wire_单总线的基本原理
    发表于 02-28 15:06 15次下载

    关于1-Wire单总线的介绍与原理及应用

    单总线是美国DALLAS公司推出的外围串行扩展总线技术。与SPI、I²C串行数据通信方式不同.它采用单根信号线,既传输时钟又传输数据,而且数据传输是双向的,具有节省I/O口线、资源结构简单、成本低廉、便于总线扩展和维护等诸多优点
    的头像 发表于 03-21 09:27 7803次阅读
    关于<b class='flag-5'>1-Wire</b><b class='flag-5'>单总线</b>的介绍与原理及应用

    通过调节上拉电阻来提高1-wire总线器件的驱动能力

    Dallas公司生产的集成电路中,广泛应用了1-wire总线。主机只需1根连线就可以把一个或数个1-wire总线器件连接起来,实现有效可靠的
    的头像 发表于 05-05 09:53 3942次阅读
    通过调节上拉电阻来提高<b class='flag-5'>1-wire</b><b class='flag-5'>总线</b>器件的驱动能力

    实现隔离式1-Wire总线

    1-Wire总线在需要电气隔离的医疗设备中传感器和耗材的认证和校准中越来越受欢迎。本文以应用笔记4206“为嵌入式应用选择合适的1-Wire主机”为基础,介绍如何修改现有的1-Wire
    的头像 发表于 01-17 10:39 2974次阅读
    实现隔离式<b class='flag-5'>1-Wire</b><b class='flag-5'>总线</b>

    可靠的长线1-Wire网络指南

    讨论了1-Wire网络的各个方面,并提供了可靠运行的设计指南。几个附录介绍了1-Wire总线接口的微调,并说明了各种条件下的1-Wire通信波形。
    的头像 发表于 03-01 14:21 1706次阅读
    可靠的长线<b class='flag-5'>1-Wire</b>网络指南

    使用UART实现1-Wire总线主控

    本应用笔记解释了如何使用微处理器的UART实现1-Wire总线主机。它包括对所需电气接口、UART配置以及UART和1-Wire信号之间的时序关系的说明。此外,它还参考了UART 1-Wire
    的头像 发表于 03-29 11:28 3557次阅读
    使用UART实现<b class='flag-5'>1-Wire</b><b class='flag-5'>总线</b>主控