I2C和TWI有什么区别?


26

I2C和TWI接口之间有什么区别?维基百科说,TWI是I2C的变体。其他一些消息来源说,只有名字不同...

i2c 

13
AFAIK TWI是制造商(过去用来称呼他们的I2C接口)的名称,以避免飞利浦的法律麻烦。
Wouter van Ooijen

33
一个版本附带律师!
康纳·沃尔夫

1
Wouter van Ooijen:如果是这样,仅更改名称就足够了吗?IANAL。

Answers:


25

我同意@Wouter所说的一切……也就是说,制造商(如Atmel)使用TWI来指代其I2C接口,以避免I2C是飞利浦的法律麻烦,因为I2C是注册商标。一些制造商(如Atmel)已经在I2C之上实现了专有功能,因此他们的TWI是I2C超级集。

要回答您的后续问题,可以。仅更改名称就足够了。商标仅保护名称。如果获得专利,情况将有所不同。

但是,由于调制/编码方案的专利大多只是数学上的问题,因此很难为其辩护。通常,为此使用版权,但是通常很容易规避,因为版权仅保护协议的确切特定实例化(实现),而不保护协议本身(在大多数情况下)。


1
我认为I2C握手的某些方面会很新颖,值得专利保护,尽管不使用握手的EEPROM之类的东西可能不会使用任何具有专利价值的功能。对于I2C扩展,我希望的是从设备能够以与主设备相同的方式进行仲裁的功能(一个从设备尝试输出“ 1”,而另一个从设备输出“ 0”)应该会发出丢失仲裁的信号,并在该字节的其余部分中退出)(高级协议将决定从站可以在什么时候重新加入)。
supercat

1
有了这样的功能,任意数量的具有例如64位ID号的设备将很容易读出其身份(比1wire更容易)。拥有一个“开始读取ID”的设备地址,然后使每个设备输出一个8字节的ID(如果丢失仲裁,则将其丢弃),并使每个未成功输出其ID的设备每8个字节重新加入一次。因此,主设备将按数字顺序读出每个设备的ID,一旦完成所有设备,便以所有FF结尾。
supercat

1
@supercat如果已获得专利,它将阻止其他制造商将其用于低成本产品。对于用户而言,这将是另一个噩梦。
JB。

@JB .:我怀疑I2C禁止从属仲裁,因为这可能使总线收发器无法可靠地确定发生了什么事情,但是对于不使用此类收发器的总线,这种仲裁肯定可以使事情变得更好。
超级猫

9

来自i2c-bus.org

TWI代表“双线接口”,该总线与I²C相同。TWI名称是Atmel和其他公司引入的,目的是避免与I²C相关的商标问题发生冲突。TWI接口功能的描述可以在相应设备的数据手册中找到。期望TWI设备与I²C设备兼容,除了一些特殊特性,例如通用广播或10位寻址。

另外,目前还没有TWI高速模式。

如果您有I²C分析仪,它也可以与TWI设置一起使用,而无需进行任何修改。


2

TWI设备通常不完全符合I2C规范。

值得注意的是,通常不支持时钟延长。


例如,如果我的记忆正确地为我服务,那么由Broadcomm SoC提供的Raspberry
PiI²C
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.