: s) g& f. P [' }! d . U7 [" G$ Y1 k c+ |, j7 H: @为了在不增加网络总长度和网络半径(指从主机到最远的从机器件之间的距离)的前提下提高网络的复杂性,已经采纳的方法是将其分成几段,并通过开关控制使它们每次只有一段接入网络中。利用1-Wire开关器件如DS2409,网络可能从物理连接上看是一种结构,而从电特性上看则是另外一种拓扑。换句话说,在每个分支节点处都装有DS2409开关的星形网,当只有一条支路接入网络中、而其它支路都断开的时候,它实际上类似于线性拓扑。7 a4 G; d. U0 D4 m2 C/ ^) k
* M5 z1 o) h( m8 [3 e* h
8 Y4 P, H( q Q0 y5 M1 v
1-Wire网络的限制( c7 G0 L% m) j- y/ n) S
. j' Q" d: `1 p1 X+ _; \
: ]3 i8 r, Q8 ` p5 W: \有几个因素决定了网络半径和总线长的最大值。这些因素有的能够控制,而有的却无法控制。主机端的接口对于所允许的1-Wire网络尺寸有很大影响。接口必须能够提供足够的驱动电流以克服电缆和器件的等效长度。它必须能够产生技术规范内的1-Wire时隙波形,同时针对网络的充电时间和放电时间最优。另外,它必须为网络提供合适的阻抗匹配,使信号不会因为反射而干扰其它网络器件。 1 r! m7 R( n9 q1 a' e+ _+ E" ~3 [, B8 L% @7 A7 O
网络规模小的时候,非常简单的主机端接口就能取得令人满意的结果,电容量小,反射的能量速度较快而不至于引起什么问题,电缆的损耗也达到最小值。只需采用简单的有源(场效应管FET)下拉和无源(电阻器)上拉就足够了。但是,当总线长度增加、挂接的器件越来越多时,要求主机端接口必须能够克服这两个因素产生的影响。 ' \; w9 y9 G9 ~. U( A/ Y, @! z* _$ h) p3 ~0 f5 A* Q( w& W
网络半径受限于反射波的时间、电缆的时延、以及电缆阻抗和信号电平的衰落。在大约750m处的电缆远端的从机器件向主机发回应答信号的时间超出了协议规定的时延极限。 b8 d" p: y, z8 Y& d( ?6 l4 g
% x* s$ G% G6 N+ m; a. M: {网络的总长度受限于电缆的性能,电缆必须能够很快地充电和放电以满足1-Wire协议的要求。采用简单的上拉电阻使网络总长度限止在大约200m。而利用有源上拉在逻辑控制下提供更强的电流、支持更远的通信距离,使其扩展到500m以上,但所有这一切是以提供一个更加复杂的主机端接口为代价的。尽管如此,对于能够驱动400m电缆、并可同时与100个iButton器件进行通信的网络来说,这种额外的开支还是很值得的。! K& A5 I1 ~( G! D, B n
. q* a; Y% @% ]) @; \7 L6 g 8 K/ m- a, ]5 B. @2 K, l寄生电源 : t1 X2 G% k3 Y; i h; H1 u . N! X$ u# Z8 l: i; x2 R ; Z$ S' m5 h7 c2 |1-Wire波形不仅要满足通信的要求,而且要为从机器件提供工作电压。当总线上的电压高于它内部储能电容的电压时,每个从机器件都从总线上"攫取"能量。网络总长度过远时,主控制器所提供的电流可能不足以维持从机器件的工作电压。寄生供电方式最糟糕的情况发生在主机发出很长一串0码的时候,这时总线大部分时间都处于低电平状态,从机器件很少有机会进行再充电。如果总线能够在两位之间的恢复期内达到足够的电压值,而且恢复时间也足够长,将不存在任何问题。如果从机器件内的工作电压降低,那么它驱动总线变为0电平的能力也就降低,从机器件的时隙将发生变化。最后,当寄生电压降低到门限电压时,从机器件进入复位状态,停止对信号做出应答。此后,当从机器件再次获得足够的工作电压时,它将发出在线应答脉冲,而此时可能会中断其它总线动作。当网络不具有充足的能量维持从机器件的工作电压时,系统失效将取决于传输数据和间歇时间。 # I p( a; j9 D3 r5 a; K7 v6 ]; B0 ~9 z" a% b( z
6 K d+ j9 C4 o
主机端接口器件0 @) k1 m3 U1 W! x3 D5 e* d
# w: _9 {3 G3 C2 h4 e. }2 W. ?! L+ r, Y& z3 y& f: O9 S7 u
这些年来,已经生产了大量适用于个人计算机的主机端接口,利用各种方法把1-Wire网络和微控制器连接起来,但在其设计中很少有连贯性。每个主机都设计有一项专门的用途,用于其它场合时通常工作不可靠。主机端的硬件结构是决定1-Wire网络设计极限的一个关键因素。近距离应用或相邻iButton探测器所采用的简单硬件接口用于较大的网络或复杂的布线结构时,可能工作不稳定。而一些供远距离通信使用的复杂驱动电路在用于小型网络或中型网络时可能工作性能也不好。 ; f2 F9 G& i/ m1 C8 b) d, @2 {1 B: t c, T
目前最常用的主机端硬件接口如下:+ @# u* a/ ^( J8 E8 B1 O
2 F7 C2 \$ n. `7 K
(1)DS9097 PC串口适配器(不适用于新的设计) ) \0 M4 b1 U# f. I- x$ x" L6 k' Y(2)DS9097U PC串口适配器(基于DS2480B) % O _* F8 }$ V: ]5 x3 c(3)DS1410E PC并口适配器2 Q" |: D1 e9 }) f
(4)DS9097U-E25 带有EPROM编程的PC串口适配器 ' c: p% y7 f6 u9 V(5)微控制器端口加2k 上拉电阻8 d. L, S/ O" A* _" P
(6)带有摆率限止的FET和1k 电阻的微控制器 5 M# g/ _( B8 c/ [(7)带有高级总线接口的微控制器 / t8 B- A- \; v# f, ~(8)带有DS2480B总线接口的微控制器# `& u3 y+ M1 ]# f+ X
8 y) x! Y% T2 q% ^6 p% i' A0 H
这些常用的主机端接口器件各不相同。每种接口电路在其所连接的计算机端口都有不同的可利用资源,而且每种接口都设计有不同的操作。实际上,并不是任何器件都能胜任用户的复杂网络。虽然更新、更好的主机端硬件正处于设计和测试阶段,用户还是需要了解1-Wire网络的局限性。对于1-Wire总线的测试得出了有关极限条件的数据,当采用上述标准接口器件时应当注意这些数据。以下列出了用上述主机接口设计1-Wire网络时应当注意的限度: 7 s5 B$ o: [& h6 z7 Q" d- ?# r+ q9 Q0 }5 J* L, f4 A9 G
1.简单微控制器引脚接口不足以提供支持大型网络甚至是中型网络所需要的驱动电流。上拉电阻阻值通常受端口引脚下拉能力的制约,被限制在2,200 左右,无法满足重载网络(总长度值很大的网络)。端口接口电路应限制在桌面半径和最大总长度在3m左右的网络。 , c, @7 {5 ^. C! G3 A7 o% r7 z$ ?2 l3 m
2.带有摆率控制的FET驱动器和1,000 上拉电阻的微控制器接口能支持中型网络。使用这种接口能可靠支持的网络半径和总长度均可达到200m。' _7 x- H) y, k) t
0 y5 a1 [+ E$ h1 I" M
3.DS1410E并行端口接口和DS9097串行端口接口专为短距离iButton探测器设计。这两种器件并不推荐用于中型或大型1-Wire网络。半径限制在3m左右,总长度应在40m以下。 6 b, f. {8 n7 X) E* [0 N/ x 6 Y. ?& A0 G0 B5 ~/ N4.主机端集成电路DS2480B串口至1-Wire转换器被用于DS9097U串行适配器和其它一些现有的1-Wire总线产品。DS2480B适用于远距离通信网络、也可用于一些高可靠性的小型网络和中型网络,如果在DS2480B和网络之间采用简单、廉价的R-C电路就能大大改善近距离到中等距离通信网络转化的性能和可靠性。 : f2 v1 r% ~! K) V/ S8 K8 h; y0 t . ]: ]$ W' b: D# Y& w+ o9 Q2 A上面提到的"带有高级总线接口的微控制器"是一种正在研发的新型电路,它将所有驱动器的优点合为一体,并提供更高的可靠性。 $ F4 x6 ~6 Z4 U6 {' f6 c# B) y作者: lingling555 时间: 2020-5-11 12:08
本文的目的是阐明多种拓扑和接口方式,并提供保证网络可靠工作的参数。