|
|
  |
Какой интерфейс выбрать: SPI, TWI, UART?, Для соединения трех устройств |
|
|
|
Dec 5 2010, 08:20
|
Местный
  
Группа: Участник
Сообщений: 245
Регистрация: 15-08-07
Пользователь №: 29 795

|
Цитата RS485 не годится? И модбас на нем и тогда, если в будущем, понадобиться, то можно без переделок... Цитата Изолированный 485 со своим... +1 Поверьте, люди Вам дело говорят. Реализовать протокол, например, MODBUS, хотя бы в самом урезаном варианте, не сложно, во всяком случае, не сложнее TWI. И привыкайте, пока на грабли не наступили, что шнурок, который соединен с ногами камня и выходит наружу устройства - это не просто сборщик мусора вместо данных, а и источник зависаний всего устройства (если конечно это хозяйство не лежит на рабочем столе у вас дома). Это - во-первых, а во-вторых, развязать гальванически двунаправленный TWI сложнее, чем UART. Кстати, уверен на 90 процентов, что реализованый сегодня MODBUS, в будущем пригодится Вам неоднократно.
|
|
|
|
|
Dec 5 2010, 18:49
|
Участник

Группа: Участник
Сообщений: 37
Регистрация: 13-11-10
Пользователь №: 60 871

|
Спасибо всем за ответы! Действительно, посмотрю в сторону 485...
|
|
|
|
|
Dec 6 2010, 13:53
|
Знающий
   
Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317

|
Цитата SPI избыточно? Вы хотите сказать что SPI сложнее чем I2C? Да это самый простой из всех этих интерфейсов, нужно не морочить никому голову, а делать на нем. нет не сложнее, а избыточнее в данном случае. Скорость нужна низкая I2C хватает, но I2C всего 3 провода, а у SPI сколько будет ?
|
|
|
|
|
Dec 7 2010, 10:19
|
Частый гость
 
Группа: Участник
Сообщений: 108
Регистрация: 6-02-09
Из: Новочеркасск
Пользователь №: 44 469

|
Цитата(Dx! @ Dec 4 2010, 14:37)  Прошу прощения, ошибся. http://www.analog.com/en/interface/rs-485/...ts/product.html <- этот со своим интегрированным питанием. Если вопрос бюджета не стоит остро - очень удобное решение.
|
|
|
|
|
Dec 7 2010, 13:50
|
Знающий
   
Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317

|
Цитата(777777 @ Dec 7 2010, 14:13)  А ты не ел устриц не знаешь SPI? А что ж тогда заявляешь что I2C однозначно лучше? У SPI 2 провода, плюс по одному проводу для выбора ведомого. То есть адресация ведомых существенно проще, а в обработке состояний I2C свихнуться можно. Дядя идите учить мат часть SPI interfaceЦитата Ситуация такая.
Есть три устройства, расположены на расстоянии 3-х метров друг от друга, одно master, два slave. теперь считаем 1) GND 2) MISO 3) MOSI 4) SCK 5) CS for Slave 1 6) CS for Slave 2 Итого 6 проводов, против: 1) GND 2) SCL 3) SDA Цитата То есть адресация ведомых существенно проще Мне что I2C, что SPI, что UART не вызывает ни каких трудностей, все это примитивщина.
|
|
|
|
|
Dec 7 2010, 14:13
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Цитата(MALLOY2 @ Dec 7 2010, 18:50)  теперь считаем Если выход может переключаться в Z-состояние, то MOSI и MISO допустимо объединять. Тут немного другое стоит учитывать. Самое важное в интерфейсах передачи данных это достоверность передаваемых данных. I2C и SPI на аппаратном уровне не дают информации о достоверности передаваемых данных. В UART с помощью передачи бита Parity можно обнаруживать искажение единичных бит. При использовании же программного протокола, который "ложится" поверх аппаратного интерфейса, достоверность передачи данных значительно увеличивается.
|
|
|
|
|
Dec 7 2010, 16:46
|

Профессионал
    
Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357

|
Цитата(MALLOY2 @ Dec 7 2010, 16:50)  Дядя идите учить мат часть SPI interfaceДа, про клок забыл... Цитата(MALLOY2 @ Dec 7 2010, 16:50)  теперь считаем Количество проводов - не самое страшное в жизни. Управлять I2C на порядок сложнее, а если еще делать полную обработку ошибок (а не надеяться что их не будет), то можно свихнуться.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|