为嵌入式应用选择合适的 1-Wire 主机

随着物联网网络和安全功能继续快速发展,用于连接、电力和安全的技术也在飞速发展。在这篇来自 Analog Devices 的文章中,您将了解如何为必须最大限度减少互连的供电应用选择恰当的 1-wire 主机总线。

引言

1-Wire 总线是一个简单的信号传输电路,可通过一根共用的数据线实现主控制器与一个或一个以上从器件之间的半双工双向通信。电源和数据通信通过单根数据线传输,使得 1-Wire 器件具有无与伦比的强大功能,可最大限度减少系统间的互联。1-Wire 器件通过单触点串行接口提供存储器、混合信号和安全认证功能。1-Wire 器件的典型应用如下:打印墨盒或医疗消耗品的识别;机架卡的校准和控制;印刷电路板、配件及外设的识别和认证;知识产权保护、防克隆、安全功能控制。

采用 1-Wire 技术时,需要通过 1-Wire 主机发送信号来识别总线上的器件并与它们通信。构建一个 1-Wire 主机有很多方法。本应用笔记讨论了各种 1-Wire 主机的实施,帮助设计人员为其嵌入式应用选择恰当的解决方案。主要关注 1-Wire 电路的主机端。

本应用笔记中展示的 1-Wire 主机的工作电压各不相同,从 1.8V 到 5V 不等。如果 1-Wire 主机的工作电压与目标从器件的工作电压不一致(即 3.3V 主机与 1.8V 从器件通信),建议使用电压电平转换器。

1-Wire 术语

首先解释几个 1-Wire 文档中常见的术语。

工作电压

通常情况下,1-Wire 器件的工作电压范围为:

  •  1.71V(最小)至 1.89V(最大)
  •  2.97V(最小)至 3.63V(最大)
  •  2.8V(最小)至 5.25V(最大)

多数 1-Wire 器件没有电源引脚。因此,这种器件以寄生供电的方式从 1-Wire 通信线路获取电源。工作电压和 1-Wire 上拉电压实际上是同义词。工作(上拉)电压越高,1-Wire 器件所得到的功率就越大。

强上拉

强上拉是指一种在时隙之间向 1-Wire 网络提供额外电源的方法。需要额外电源的部件如下:电可擦只读存储器 (EEPROM) 器件(当把数据从缓冲区复制到 EEPROM 单元时);安全存储器(当加密引擎运行时);1-Wire 温度传感器(在温度转换期间)。当这些 1-Wire 器件用于 1.8V 或 3V 电压供电时,强上拉是必需的;同样的 1-Wire 从器件处于 5V 环境中时,强上拉则是可选的。

1-Wire 时序

这是 1-Wire 时隙和复位/应答检测时序波形的一般形式,以及产生这些波形的方法。可以采用特殊的硬件(如自带定时发生器的芯片)或通过软件直接产生波形。对于软件开发人员来说,硬件方式比较容易,但需要另加芯片软件方式节省了硬件成本,但可能会增加软件开发和测试成本。

支持高速模式

多数 1-Wire 从器件可以两种速度通信:标准速度和高速模式。高速模式下的速度比标准速度约快 8 倍。

有源上拉

1-Wire 总线或网络是一个开漏环境,0V(逻辑 0)为有效状态。空闲时,总线通过一个电阻拉高到上拉电压(电阻上拉)。因此,下降沿是陡峭的;上升沿由于电阻和寄生电源的作用相当平缓。有源上拉是指一种测试上升沿的方法,如果已经超过规定门限,通过低阻通道在有限的时间内旁路上拉电阻。小型网络或只有一个从器件的网络一般不需要有源上拉。如果带有源上拉,1-Wire 总线再充电的速度比电阻上拉快得多,因此,网络中支持多个 1-Wire 从器件时,无需延长时隙之间的恢复时间。各种 1-Wire 主机的旁路上拉强度(阻抗)和控制有源上拉时间的方法有所不同。

1-Wire 主机电路

本节详细讨论不同的主机电路。电路分为两类:

  •  微处理器端口-引脚
  •  Maxim 的硬件 1-Wire 主机

每个类别介绍了一个或多个电路。给出了电路原理图,列出了前提条件,衡量了优缺点,给出了注意事项、建议阅读的参考文档和支持软件网址。

类别 1. 使用微处理器端口-引脚创建主机

图 1 为最基本的 1-Wire 主机。

Body Image 1-Choosing-the-Right-1-Wire-Master-for-Embedded-Applications

图 1. 带可选强上拉电路(虚线部分)的双向端口引脚。

电路的唯一先决条件是需要一个备用双向端口及一定的程序存储器空间。这一电路的优点是硬件成本低。另一方面,1-Wire 时序是通过软件产生的,增加了前期软件开发的时间和成本。

根据应用中 1-Wire 从器件数目和 1-Wire 上拉电压,需要其它端口引脚来实现强上拉。1-Wire 总线上的最大工作电压由双向端口的特性决定。1-Wire 总线上有不止一个从器件时,RPUP 值应取低一些。此时,应检查 VOLMAX 是否与 1-Wire 从器件和微处理器端口的输入特性兼容。

高速通信模式要求微处理器具备较高的时钟频率和/或较低的每指令周期时钟数。

图 2 给出与图 1 类似的另一种基本电路。

Body Image 2-Choosing-the-Right-1-Wire-Master-for-Embedded-Applications

图 2. 带可选强上拉电路(虚线部分)的单向端口引脚。

该电路的先决条件是需要两个备用单向端口、下拉晶体管及一定的程序存储器空间。电路的优点是不需要双向端口。另一方面,1-Wire 时序是通过软件产生的,增加了前期软件开发的时间和成本。

根据应用中 1-Wire 从器件数目和 1-Wire 上拉电压,需要其它端口引脚来实现强上拉。1-Wire 总线上的最大工作电压由输入端口的特性决定。1-Wire 总线上有不止一个从器件时,RPUP 值应取低一些。此时,应检查 VOLMAX 是否与 1-Wire 从器件和微处理器端口的输入特性兼容。

高速通信模式要求微处理器具备较高的时钟频率和/或较低的每指令周期时钟数。

类别 2. Maxim 的硬件 1-Wire 主机

Maxim 生产各种 1-Wire 主机硬件产品,这些产品也可用于可靠地驱动 1-Wire 从器件网络。这种主机通常被称为“1-Wire 桥接”器件,顾名思义,用于“桥接”系统主处理器(如微控制器、FPGA、PC 等)和 1-Wire 从器件之间的接口。具体来说,通过在主机处理器和 1-Wire 从器件之间集成桥接器件,主机处理器不再直接与 1-Wire 从器件接口来对其进行操作。相反,主机处理器通过特定的通信协议(如 I2C)与桥接器件接口,并命令它将 1-Wire 数据中继到 1-Wire 从器件。这样做的好处是,1-Wire 通信从主机处理器卸载到 1-Wire 桥接器件上,从而使主机处理器不必产生时间关键的 1-Wire 波形。结果,整个软件应用程序可以用高级语言开发,并且初始软件开发时间和成本显著降低。

除了生成基本的 1-Wire 协议之外,1-Wire 桥接器件还包括一些附加功能,有助于更高效地驱动 1-Wire 线路。例如,每个 1-Wire 桥器件都包括一个内部无源上拉电阻(即 RPUP),有助于减少所需的外部硬件元件数量。以下介绍的产品是 Maxim 的一些最佳 1-Wire 桥接器件及其出色的特性,有助于设计人员根据其应用选择合适的器件。针对每个器件的典型应用电路提供了如何设置的参考。

DS2480B

DS2480B 1-Wire 主机可简化 1-Wire 接口的低成本通用 RS-232 COM 端口的设计。此器件包括:

  •  内部有源上拉 (APU),在 1-Wire 线路的上升沿超过门限后自动使用,轻松驱动 1-Wire 总线上的多个器件。
  •  内部强上拉 (SPU),可根据 1-Wire 从器件的电源要求选择启用。
  •  内置 4 位搜索加速器,使 1-Wire 只读存储器 (ROM) 搜索时序更容易在软件中实现。
  •  使用外部 12V 电源对 1-Wire 可擦除可编程只读存储器 (EPROM) 设备进行编程的能力。
  •  可编程 1-Wire 时序和驱动器特性,以标准速度适应各种从器件配置。
  •  工作电压范围超过 5V +-10%。

DS2480B 直接与通用异步收发器 (UART) 和 5V RS232 系统接口,通信速度最高可达 115.2kbps。图 3 中的电路显示了如何将 DS2480B 集成到兼容系统中。

Body Image 3-Choosing-the-Right-1-Wire-Master-for-Embedded-Applications

图 3. DS2480B 连接到主机微控制器的 UART 端口。

DS2484

DS2484 是一款入门级 1-Wire 主机的 I2C,包括:

  •  内置电压电平转换器,允许 DS2484 在 1-Wire 端以 1.8V -5% 至 5V +5% 的各种电压电平工作,与 I2C 工作电压无关。
  •  内部有源上拉 (APU) 和可选无源上拉 (RPUP) 值,用于 1-Wire 器件的高效长距离运行。
  •  内部强上拉 (SPU),可根据 1-Wire 从器件的电源要求选择启用。
  •  内置 1-Wire 三元组命令,使 1-Wire ROM 搜索时序更容易在软件中实现。
  •  通过软件对 1-Wire 端口进行电源控制,以关断总线上的器件。
  •  DS2484 不使用时,低功耗模式引脚 (SLPZ) 用于节省功耗。
  •  可调 1-Wire 时序参数,支持各种 1-Wire 从器件。

DS2484 直接与 I2C 主机接口,通信速度最高可达 400kHz。图 4 中的电路显示了如何将 DS2484 集成到兼容系统中。

Body Image 4-Choosing-the-Right-1-Wire-Master-for-Embedded-Applications

图 4. DS2484 连接到主机微控制器 I2C 端口。

DS2485

DS2485 是一款综合性 1-Wire 主机,针对更高的吞吐量进行了优化,并提供对其广泛功能集的完全控制。此器件包括:

  •  用于执行 1-Wire 原语命令的自定义的脚本功能。
  •  内置 1-Wire 搜索算法,可根据命令轻松发现和获取 1-Wire 总线上的器件 ROM ID。
  •  具有 126 字节大小的大型 1-Wire 数据块缓存区,可实现高数据吞吐量。
  •  标准和高速的可调 1-Wire 时序参数,支持各种 1-Wire 从器件。
  •  三个 32 字节的 EEPROM 页面用于存储用户数据。
  •  内部可选有源上拉 (APU) 和可选无源上拉 (RPUP) 值,用于 1-Wire 器件的高效长距离运行。
  •  内部强上拉 (SPU),可根据 1-Wire 从器件的电源要求选择启用。
  •  通过软件对 1-Wire 端口进行电源控制,以关断总线上的器件。
  •  用于特定应用控制功能的 GPIO 引脚。
  •  工作电压范围超过 3.3V±10%。

DS2485 直接与 I2C 主机接口,通信速度最高可达 1MHz。图 5 中的电路显示了如何将 DS2485 恰当集成到兼容系统中。

Body Image 5-Choosing-the-Right-1-Wire-Master-for-Embedded-Applications

图 5. DS2485 连接到主机微控制器 I2C 端口。

DS2465

DS2465 是一款 1-Wire 主处理器和 SHA-256 协处理器,旨在与 1-Wire SHA-256 安全认证器配合使用。此器件包括:

  •  一组核心加密工具,包括:
  •  内置 SHA-256 引擎,用于 1-Wire SHA-256 从器件的加密认证。
  •  两个 32 字节的 EEPROM 页面用于存储用户数据。
  •  内部有源上拉 (APU) 和可选无源上拉 (RPUP) 值,用于 1-Wire 器件的高效长距离运行。
  •  内部强上拉 (SPU),可根据 1-Wire 从器件的电源要求选择启用。
  •  DS2465 不使用时,低功耗模式引脚 (SLPZ) 用于节省功耗。
  •  内置 1-Wire 三元组命令,使 1-Wire ROM 搜索时序更容易在软件中实现。
  •  通过软件对 1-Wire 端口进行电源控制,以关断总线上的器件。
  •  标准和高速的可调 1-Wire 时序参数,支持各种 1-Wire 从器件。
  •  工作电压范围超过 3.3V±10%。

DS2465 直接与 I2C 主机接口,通信速度最高可达 400kHz。图 6 中的电路显示了如何将 DS2465 恰当集成到兼容系统中。

Body Image 6-Choosing-the-Right-1-Wire-Master-for-Embedded-Applications

图 6. DS2465 1-Wire 主机连接到多个 1-Wire SHA-256 器件。

DS2477

DS2477 是一款 1-Wire 主处理器和 SHA-3 协处理器,旨在与 1-Wire SHA3-256 安全认证器配合使用。此器件包括:

  •  一组核心加密工具,包括:
  •  内置 SHA-3 引擎,用于1-Wire SHA-3 从器件的加密认证。
  •  ChipDNA™ 物理不可克隆功能 (PUF) 技术,用于保护设备数据免受安全攻击。
  •  2Kb EEPROM 用于用户数据和密钥存储。
  •  符合联邦信息处理标准 (FIPS)/国家标准与技术研究所 (NIST)的真随机发生器 (TRNG)。
  •  唯一且不可更改的工厂编程 64 位标识号 (ROM ID)。
  •  内部有源上拉 (APU) 和可选无源上拉 (RPUP) 值,用于 1-Wire 器件的高效长距离运行。
  •  内部强上拉 (SPU),可根据 1-Wire 从器件的电源要求选择启用。
  •  通过软件对 1-Wire 端口进行电源控制,以关断总线上的器件。
  •  可调 1-Wire 时序参数,支持各种 1-Wire 从器件。
  •  具有 126 字节大小的大型 1-Wire 数据块缓存区,可实现高数据吞吐量。
  •  用于特定应用控制功能的 GPIO 引脚。
  •  工作电压范围超过 3.3V±10%。

在实验室测试中,DS2477 能够使用 333Ω 上拉电阻设置成功驱动 50 个 DS1990 1-Wire 从器件超过 1000 英尺。DS2477 直接与 I2C 主机接口,通信速度最高可达 1MHz。图 7 中的电路显示了 DS2477 驱动多个 1-Wire SHA-3 从器件的应用示例,如 DS28E50。

Body Image 7-Choosing-the-Right-1-Wire-Master-for-Embedded-Applications

图 7. DS2477 通过 DS28E50 从器件连接到主机微控制器 I2C 端口。

基于 PC 的适配器和评估套件

由于不需要用户进行任何软件开发,用作 1-Wire 主机的 PC 适配器和器件专用评估套件(EV 套件)对于评估 1-Wire 器件和原型制作非常方便。

对于基于 PC 的解决方案,除了适配器、待检测 1-Wire 器件和现成的电缆,用户需要的就是评估软件,如基于 Java 的可免费下载的 OneWireViewer。

EV 套件比使用独立适配器更方便,因为它们包含进行原型制作和探索所需的一切。评估套件还包括 USB 至 I2C 或 USB 至 I2C/1-Wire 适配器。

除了 EV 套件中包含的免费评估软件之外,Maxim 还提供基于 C 的免费演示代码示例。表 1 显示了一些可用评估平台的详细信息。

Body Image 8-Choosing-the-Right-1-Wire-Master-for-Embedded-Applications

表 1. 基于 PC 的适配器和 EV 套件

结论

适合嵌入式应用的 1-Wire 主机应该在附加成本尽可能低的前提下符合 1-Wire 器件电气要求(即工作电压,若有必要还应带强上拉)。最终选择取决于应用中空闲的(未用)资源,包括端口引脚、UART 和 I2C 总线,以及程序存储器空间。目前,Maxim(类别 2)提供的硬件 1-Wire 主机是市场上最通用的选项,价格非常合理。它们功能丰富,可编程,支持任何和所有 1-Wire 系统,包括具有高安全性要求的系统。



最新消息

Sorry, your filter selection returned no results.

请仔细阅读我们近期更改的隐私政策。当按下确认键时,您已了解并同意艾睿电子的隐私政策和用户协议。

本网站需使用cookies以改善用户您的体验并进一步改进我们的网站。此处阅读了解关于网站cookies的使用以及如何禁用cookies。网页cookies和追踪功能或許用于市场分析。当您按下同意按钮,您已经了解并同意在您的设备上接受cookies,并给予网站追踪权限。更多关于如何取消网站cookies及追踪的信息,请点击下方“阅读更多”。尽管同意启用cookies追踪与否取决用户意愿,取消网页cookies及追踪可能导致网站运作或显示异常,亦或导致相关推荐广告减少。

我们尊重您的隐私。请在此阅读我们的隐私政策。