确定多从机1-Wire网络的恢复时间

时间:2007-04-23

设计1-Wire网络时,通常需要考虑的一个问题就是确定适当的恢复时间,以确保为寄生供电的1-Wire从器件提供足够的电能。本文分析了确定对供电有严格要求事件所需的1-Wire协议,并提供了不同1-Wire从机数、不同工作电压以及温度条件下的恢复时间计算方法。

引言
本应用笔记适用于典型的1-Wire网络,该1-Wire网络由带上拉电阻的1-Wire驱动器(主控制器)和1个或多个1-Wire从机器件组成,如图1所示。大多数1-Wire器件都是寄生供电,这就意味着1-Wire总线同时作为电源线和双向数据线。1-Wire协议规定无通信时进入空闲状况,1-Wire从器件恰好能从总线获取电源。限制1-Wire从器件可用电源数目的临界参数是恢复时间tREC。产品数据资料中规定了tREC的大小,并给出了只在单从机1-Wire网络中有效的读/写波形。


图1. 1-Wire网络典型框图

图2. 启动过程的时序图:复位和应答脉冲

影响参数
在分析供电时的恢复时间时,需考虑几个主要参数和次要参数。这些参数如下:

主要参数

我们先从数据资料给出的条件开始分析:一个带2.2k上拉电阻器(上拉至2.8V)的驱动器、坏情况下的温度,总线上有单个1-Wire从机器件,以及可忽略的电缆电容。本文以1-Wire从机器件的个数为主要参数,并提供不同工作电压、速率以及温度下恢复时间的值。如果1-Wire驱动器和从机之间的电缆非常重要,那么在计算中每15米长的电缆就可等效成一个附加的从机器件。

这里得出的结果适合典型的1-Wire从机器件,可以实现ROM功能、通用寄存器读功能以及SRAM写功能。写EEPROM、温度转换以及SHA-1计算有特定的供电要求(如强上拉),具体依器件而定,这不影响该计算方法的有效性。就ROM功能和存储器读操作而言,1-Wire EPROM器件也被视为典型器件;为了实现编程目的,只允许在网络上挂接单个EPROM器件。


结果矩阵
用线性公式:tREC = a * N + b,计算恢复时间的大小。假设所有从机器件并联在1-Wire线路和接地基准之间,则N表示网络中寄生供电的从机器件数。由VCC引脚供电的1-Wire从机器件不会明显给1-Wire总线加载;它们应计为器件的1/10。斜率'a'随温度、工作(上拉)电压以及1-Wire速率变化而变化。本文中让失调量'b'仅随速率变化就足够了。表1所列是含有斜率和失调量的公式。通过手动曲线拟合产生数字值;则结果近似与基于科学模型通过迭代法得到的结果吻合。N = 1时,该结果矩阵不能产生与器件数据资料中一样的数据。这一数值差异是曲线拟合的偏差,不应被视为与规范要求冲突。

低工作电压和低温下的恢复时间长。如果应用要求工作在极低的温度下,则应选用-40°C项。室温环境下,可选用+25°C项,并且温度更高时该项也适合,能保证安全工作。+85°C项则产生一个仅应用在+85°C温度下的结果;应该作为一个基准,不作为其他温度的设计值。

高工作电压下的恢复时间短。上拉电压为4.5V或更高时应选用4.5V项。2.8V项对应的恢复时间也适用于更高的电压,但不会降低数据速率。工作电压Vx在2.8V和4.5V之间时,可通过线性插补获得新斜率值:Slope@Vx = Slope@2.8V - (Vx - 2.8V)/1.7V * (Slope@2.8V - Slope@4.5V)。


实例
假定某应用需要一个带有10个1-Wire器件(N = 10)的网络,标准速率下tW0LMIN = 60μs,高速模式下为6μs。(这些数值来自于器件的数据资料,对于不同的器件类型,采用tW0LMIN的值。)假定该网络工作在0°C至70°C温度下。工作电压未定。适合该温度范围的项为-5°C,因为它是低于工作温度且与之接近的数值。由于更高温度下的斜率比-5°C时的斜率低,因此该结果对于高于-5°C的所有温度是有效的。表2列出该实例的tREC以及具有恢复时间的数据速率。
在标准速率下,数据速率降至单从机网络15.3kbps基准的大约70%。在高速模式下,数据速率低于125kbps基准的40%。如果表2中数据速率都适合应用,则工作电压的选择不重要。然而,如果可提供大约5V的工作电压,则具有较好的噪声抑制性,应将其做为。

表2. 实例计算结果(N = 10)

可采用的改进方法
如果该表中的恢复时间不能达到要求,还可以采用下列几种方法提高数据速率。
减小上拉电阻,例如,由2.2k降至1k。 较低的电阻可使1-Wire网络再充电电流加倍,这样可减小50%的恢复时间。采用这种方法时,在读数据时隙拉低1-Wire总线时,确认每个从机器件是否能处理所增加的电流VPUP/RPUP是非常重要的。
改变网络拓扑。 不采用一个网络,而是采用2个或多个更小的网络,或用DS2409 1-Wire耦合器将一些从机器件从网络的有源部分断开。
考虑采用有源1-Wire驱动器
有源驱动器采用晶体管临时旁路上拉电阻。这样允许1-Wire网络以快的速率进行再充电,从而降低必需的恢复时间。

有源1-Wire驱动器
Dallas Semiconductor产品中包含三个有源1-Wire驱动器:DS2480B、DS2490和 DS2482。
DS2480B和DS2490具有同样的5V 1-Wire驱动器,但是有不同的主机接口。两款器件的恢复时间均终止于1-Wire总线电压超过规定门限的时候。采用DS2480B,只要1-Wire有效(例如,写1字节),主机就能通过UART端接收一个应答字节。采用USB兼容的DS2490,主机需要轮询以检测1-Wire有效性是否结束。

DS2482通过其I2C接口与主机通信。该器件的1-Wire侧可工作在3.3V和5V电压下。采用DS2482,当1-Wire时隙结束时,恢复时间终止。如果有源上拉功能被激活,则在固定持续时间内,可在1-Wire总线的上升沿提供额外的电量。DS2482比一个单纯的阻性上拉强,但是不如DS2480B或DS2490。DS2482的8通道版本有助于将一个较大的应用分离成几个每线具有较少1-Wire器件的更小的网络。采用DS2490时,DS2482的主机需要轮询驱动器芯片以检测1-Wire有效性是否结束。

采用可作为智能1-Wire驱动器的微控制器可以实现更大的灵活性,特别是驱动一个物理的大型1-Wire网络。该电路及其必需软件所应考虑事项的详细描述,请参见Dallas应用笔记244。这种驱动器工作在3.3V或5V电压下,具体取决于微控制器特性。


结束语
计算多从机器件1-Wire应用所需的恢复时间是一个非常简单和直观的过程。对于1-Wire网络,通常采用5V电压是选择。对于更多的应用来说,采用带上拉电阻的1-Wire驱动器就足够了。对于大型的网络,则需要带有源上拉的驱动器。


  
上一篇:基于EP9312的银税类嵌入式系统硬件设计方案
下一篇:ISDN综述(三)

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料