В чем разница между I2C и TWI?


26

В чем разница между интерфейсами I2C и TWI? Википедия говорит, что TWI - это вариант I2C. В некоторых других источниках говорится, что отличается только имя ...

i2c 

13
AFAIK TWI - это то, что производители (раньше) называли своим интерфейсом I2C, чтобы избежать юридических проблем с Philips.
Воутер ван Ойджен

33
Одна версия идет с юристами!
Коннор Вольф

1
Wouter van Ooijen: Если так, достаточно ли просто поменять имя? IANAL.

Ответы:


25

Я согласен со всем, что сказал @Wouter ... А именно, производители TWI (например, Atmel) используют TWI для обозначения своего интерфейса I2C, чтобы избежать юридических проблем с Philips, поскольку I2C является зарегистрированным товарным знаком. Некоторые производители (например, Atmel) реализовали проприетарные функции поверх I2C, так что их TWI является надмножеством I2C.

Чтобы ответить на ваш дополнительный вопрос, да. Достаточно просто изменить имя. Торговая марка защищает только название. Если бы он был запатентован, ситуация была бы другой.

Тем не менее, сложно защитить патент на схему модуляции / кодирования, поскольку это в основном математика. Зачастую для этого используется авторское право, но обычно его довольно легко обойти, поскольку авторское право защищает только точную конкретную реализацию (реализацию) протокола, а не сам протокол в большинстве случаев.


1
Я думаю, что некоторые аспекты рукопожатия I2C были бы достаточно новыми, чтобы заслужить патентную защиту, хотя такие вещи, как EEPROM, которые не используют рукопожатие, могут не использовать какие-либо патентоспособные функции. Что касается расширений I2C, то я бы хотел, чтобы подчиненные устройства могли участвовать в арбитраже так же, как это делают мастера (подчиненное устройство, которое пытается вывести «1», в то время как другое подчиненное устройство выдает «0»). должен сигнализировать о проигранном арбитраже и пропадать до конца этого байта) [протокол высокого уровня будет решать, в какой момент ведомое устройство может присоединиться].
суперкат

1
Учитывая такую ​​особенность, было бы легко для произвольного числа устройств с, например, 64-битными номерами идентификаторов считывать их идентификаторы (проще, чем с 1wire). Иметь адрес устройства «начать чтение идентификаторов», а затем вывести каждое устройство 8-байтовым идентификатором (отбрасывается, если проиграет арбитраж), и заставить каждое устройство, которое не выдало свой идентификатор успешно, воссоединяться каждые 8 ​​байтов. Таким образом, мастер будет считывать ID каждого устройства в числовом порядке, заканчивая всеми FF, как только все устройства будут готовы.
суперкат

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.

Примечательно, что растяжение часов обычно не поддерживается.


Например, если память мне не
изменяет
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.