Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 09.01.2015, 02:36  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,058
Сказал спасибо: 2,563
Сказали Спасибо 11,890 раз(а) в 5,964 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Сообщение от DropSoft Посмотреть сообщение
Смотря что нужно.
На Attiny13 делал...
Сам не вникал, товарищ этими вопросами занимается. Он сторонник стандартной тяжеловесности, а я его периодически возвращаю на землю. Модбас, конечно, удобен, когда не сильно кастрирован, но тяжел (повторяюсь).
А вообще, я сторонник простых решений, когда это возможно. Чем проще, тем меньше мест для граблей.
Реклама:
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 09.01.2015, 03:17  
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Сообщение от akegor Посмотреть сообщение
А вообще, я сторонник простых решений, когда это возможно. Чем проще, тем меньше мест для граблей.
Передавать прямой и инверсный байты - и вся недолга. Никакого подсчёта CRC, контроль целостности данных на лету. Если все трое подключены по кольцу, то адрес необязателен, каждый съест свои байтики и подменит их ответом, а вот таймаут или сигнал сброса пакета мутить придётся - SPI-тырфейс синхронный.
Можно то же кольцо через USART организовать.
omercury вне форума  
Непрочитано 09.01.2015, 11:44  
shurik_ss
Гражданин KAZUS.RU
 
Регистрация: 15.02.2011
Адрес: Витебск, Беларусь.
Сообщений: 547
Сказал спасибо: 484
Сказали Спасибо 606 раз(а) в 214 сообщении(ях)
shurik_ss на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Понимаю, что не совсем вежливо в чужой теме переводить разговор на свои заморочки, но вопрос уж весьма схож:
Нажмите на изображение для увеличения
Название: pict1.gif
Просмотров: 28
Размер:	13.1 Кб
ID:	74302
Проектируется сеть несложных датчиков (пока 6 штук, возможно будет до 10) на базе Тини2313 с управлялкой на Меге16 (контроллеры уже есть). Разводка сети звездой, уже есть готовая (2 витых пары в кабеле). Длина лучей звезды - от 5 до 20 метров. Скорость обмена достаточна 19 кбод. Обмен двунаправленный. Система для своих нужд, с безопасностью жизнедеятельности не связана, т.е. сертификация и другие формальности не требуются. Здание офисное, т.е. уровень помех незначительный.
Предварительно решили использовать шину I2C с очень низкой тактовой частотой (19200 Гц), простейшим подсчетом контрольной суммы пакета данных (XOR) и повтором передачи при несовпадении суммы (пакет 16 байт). Но прозвучавшая здесь мысль о том, что любая импульсная наводка на линии SCL вызовет сдвиг на один бит, заставила крепко задуматься о возможности реализации данной концепции (сами об этом как-то не подумали). Действительно, несмотря на малую скорость передачи данных, аппаратный модуль USI медленней работать не станет, и будет легко ловить микросекундные помехи. А с учетом большой длительности пакета данных (около 8 мс), появилось опасение, что битых пакетов может оказаться больше, чем целых. Что посоветуете в данной ситуации?
shurik_ss вне форума  
Непрочитано 09.01.2015, 12:06  
ForcePoint
Почётный гражданин KAZUS.RU
 
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 7,021
Сказал спасибо: 3,026
Сказали Спасибо 3,201 раз(а) в 2,172 сообщении(ях)
ForcePoint на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Сообщение от shurik_ss Посмотреть сообщение
Предварительно решили использовать шину I2C
Ну какой "в красную армию" I2C (пусть даже на 5, а не на 20 метров), если у него высокий уровеь подтяжкой формируется? Конечно он Вам словит не только иголку, но и погоду на мысе Горн.
На мой взгляд - если не в одной комнате всё расположено, то только дифференциальная "физика" (например 485).

Последний раз редактировалось ForcePoint; 09.01.2015 в 12:09.
ForcePoint вне форума  
Непрочитано 09.01.2015, 13:35  
shurik_ss
Гражданин KAZUS.RU
 
Регистрация: 15.02.2011
Адрес: Витебск, Беларусь.
Сообщений: 547
Сказал спасибо: 484
Сказали Спасибо 606 раз(а) в 214 сообщении(ях)
shurik_ss на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Сообщение от ForcePoint Посмотреть сообщение
Ну какой "в красную армию" I2C (пусть даже на 5, а не на 20 метров), если у него высокий уровеь подтяжкой формируется?
Ни у кого из разработчиков нашей системы нет совершенно никакого практического опыта разработки сколько-нибудь протяженных сетей. Отсюда и "детские" косяки. I2C выбран потому, что: 1) есть аппаратная поддержка в используемых контроллерах, 2) есть опыт работы (и программные наработки) с внутриприборными (короткими) шинами I2C, 3) хорошо ложится на топологию нашей сети, 4) не требует дополнительных интерфейсных схем. Повышенную емкость сети хотели компенсировать сильно заниженной скоростью передачи. Планировалось, что эта емкость снизит уровень "иголок". К затянутым фронтам теоретически контроллеры претензий иметь не должны. Но если Вы считаете, что это не заработает (полагаю, у Вас есть практический опыт подобных разработок), то мы без проблем откажемся от I2C.

Сообщение от ForcePoint Посмотреть сообщение
На мой взгляд - если не в одной комнате всё расположено, то только дифференциальная "физика" (например 485).
С дифференциальной физикой полностью согласен. Но конкретно по 485 есть вопросы. RS-485 строится по топологии шины, с терминаторами на концах. У нас уже есть звезда. С учетом наличия двух пар в луче, из звезды можно сделать шину, но она будет очень длинной. Или лучше оставить звезду, но тогда как ее правильно согласовать?
Кстати, на RS-485 тоже смотрели (его большой плюс в том, что используется весьма неплохой аппаратный модуль USART контроллеров), но сразу отвернулись по смешной причине: ближайший магазин, продающий по адекватной цене приемопередатчики к 485, нашли в Китае (покупаем за свои деньги, это идет как рацпредложение, и премия за него никак не учитывает наших затрат). Не захотели ждать два месяца, пока придет. Если до вечера ничего другого не посоветуют, сегодня же закажу у китайцев десяток. Мне работа с дифсигналом в данном случае нравится гораздо больше, чем с шиной I2C, и я легко могу отказаться от I2C, несмотря на то, что это будет сопровождаться некоторыми временными трудностями.
shurik_ss вне форума  
Непрочитано 09.01.2015, 14:01  
Boba_spb
Почётный гражданин KAZUS.RU
 
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
Boba_spb на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Сообщение от shurik_ss Посмотреть сообщение
У нас уже есть звезда. С учетом наличия двух пар в луче, из звезды можно сделать шину, но она будет очень длинной. Или лучше оставить звезду, но тогда как ее правильно согласовать?
Из звезды сделать шину пару пустяков.
Boba_spb вне форума  
Непрочитано 09.01.2015, 14:16  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,058
Сказал спасибо: 2,563
Сказали Спасибо 11,890 раз(а) в 5,964 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Сообщение от shurik_ss Посмотреть сообщение
RS-485 строится по топологии шины, с терминаторами на концах. У нас уже есть звезда. С учетом наличия двух пар в луче, из звезды можно сделать шину, но она будет очень длинной. Или лучше оставить звезду, но тогда как ее правильно согласовать?
Возникал такой вопрос. Решили очень просто. Поскольку скорость нам достаточна небольшая, 19200, соединили звездой и без терминаторов. Все работает нормально. Да, расстояния до ста метров.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 09.01.2015, 14:49  
Wiza_
Почётный гражданин KAZUS.RU
 
Регистрация: 29.12.2012
Адрес: Питер
Сообщений: 982
Сказал спасибо: 131
Сказали Спасибо 230 раз(а) в 157 сообщении(ях)
Wiza_ на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Сообщение от akegor Посмотреть сообщение
соединили звездой и без терминаторов. Все работает нормально
Жаль. Очень жаль. Вот так у нас интерфейсы и тестируют: если работает у нас в офисе, то будет работать и рядом с ядерным реактором.

Рекомендации по шинам и протоколам описаны вполне лаконично. Надо читать а не отсебятину пороть. Ладно на одном объекте, но когда изделие становится массовым: либо хренова туча пипла из саппорта, либо саппорта вовсе нет. RS-485 хорош, в промышленном применении если, знать о нем. Без вариантов. Стандарты подробно читать надо, а не бегло. Даже 485 можно запросто засохатить на 1 метре шины со скорость 800 бод.
Wiza_ вне форума  
Непрочитано 09.01.2015, 14:52  
Boba_spb
Почётный гражданин KAZUS.RU
 
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
Boba_spb на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Сообщение от akegor Посмотреть сообщение
соединили звездой и без терминаторов.
Ну уж признайтесь - в центре звезды стоят 120 Ом где нить
Да хорошо работает обычно 485.В моей практике было метров 700 по заводу протянуто и метров 350 с пробегом по мосту, по которому электрички бегают. Да много где применяли.
Boba_spb вне форума  
Непрочитано 09.01.2015, 14:53  
Wiza_
Почётный гражданин KAZUS.RU
 
Регистрация: 29.12.2012
Адрес: Питер
Сообщений: 982
Сказал спасибо: 131
Сказали Спасибо 230 раз(а) в 157 сообщении(ях)
Wiza_ на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

По теме. Последней. RS-485. Только нужные функции. CRC16 можно заменить на сумму или на xor. Лучше организовать байт флагов. Мастер опрашивает только его. Если один из флагов установлен - мастер делает запрос на чтение регистров для данного устройства.

Сообщение от akegor Посмотреть сообщение
Он сторонник стандартной тяжеловесности
Modbus рекомендованный протокол. Так что хз где у него стандарт

Тема "Обрежьте жирок с RS-485" рекомендована к прочтению всеми, кто имеет с этим интерфейсом дело и кто её не читал.
Wiza_ вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Апгрейд и комплектующие для ноутбуков mikesmith Барахолка электронных компонентов 28 17.05.2023 23:25
из DVD в DVD-player реально? Altalimir Микроконтроллеры, АЦП, память и т.д 14 17.09.2007 21:21
[Решено] Сборник перлов любителей кабельщины mikesmith Отвлекитесь, эмбеддеры! 135 14.08.2007 15:49


Часовой пояс GMT +4, время: 01:53.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot