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

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

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

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

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

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


 
Опции темы

Протокол для интерфейса Spi (да и I2c)

Непрочитано 09.01.2015, 00:52  
alex6002
Прописка
 
Регистрация: 07.08.2006
Адрес: Оренбург
Сообщений: 176
Сказал спасибо: 39
Сказали Спасибо 83 раз(а) в 32 сообщении(ях)
alex6002 на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Сообщение от akegor Посмотреть сообщение
Кто мешает повесить туда СОМ порт на прием и принимать нормальной терминалкой?
пакет, конечно.. но проверить физику на передачу- хватает и цифры...без сомнений - все ли ты там правильно законнектил.... а простой терминал с модбасом бедновато - ну, адрес устройства, ну, функцию прочитаешь... данные устанешь вычитывать... а еще надо бы реакцию устройства отследить... и срс ....
Я обычно рисую болванку в VB (у амеров есть такой контрол - Smrn, шароварный - готовый модбас одной иконкой, стабильней любого терминала) - вешаю на форму кнопочки и окошки - полчаса делов - и все - считай, готовый интерфейс....удобно.
Все это конечно касаемо модбаса по сом....
Реклама:

Последний раз редактировалось alex6002; 09.01.2015 в 01:01.
alex6002 вне форума  
Непрочитано 09.01.2015, 01:03  
AndrFV
Вид на жительство
 
Регистрация: 20.12.2013
Сообщений: 310
Сказал спасибо: 5
Сказали Спасибо 94 раз(а) в 59 сообщении(ях)
AndrFV на пути к лучшему
По умолчанию Re: протокол для интерфейса Spi (да и I2c)

Сообщение от Wiza_ Посмотреть сообщение
А вообще, меня раздражают люди, которые не читая доку на I2C пихают его в разработки, которыми мне приходится пользоваться. По стандарту автора, Philips, длинна интерфейса не может быть больше 40 см. А вот разработчикам из Speclab это видимо не ведомо :\
Вообще-то просто не надо задирать скорость интерфейса. Тогда и все протоколы будут работать на расстояния более 40 см...
AndrFV вне форума  
Непрочитано 09.01.2015, 01:06  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,313
Сказал спасибо: 2,633
Сказали Спасибо 12,076 раз(а) в 6,082 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Модбас слишком тяжел - много памяти отъедает. Для мелких чипов неподъемен. Да и нужен он не всегда. Применяем его только для связи со сторонними вещами.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 09.01.2015, 01:15  
p4all
Частый гость
 
Регистрация: 17.03.2005
Сообщений: 24
Сказал спасибо: 1
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
p4all на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Сообщение от alex6002 Посмотреть сообщение
С праздниками всех !!!
Собственно, вопрос в заголовке...
Или на воду дую ?
Я в свое время то же решал этот вопрос.
Так же, как большинство в дискусии пришел к выводу: RS-485, или UART (TTL уровни, если линия короткая). Хотя здесь все равно желательно согласование (120 Ом для плоского кабеля) и/или оптронная развязка.
Посмотрел я на Profibus, Modbus - громоздко все это. Взял за основу Modbus (QRC) и упростил телеграмму до 4-х байт. Сеть - full duplex. Первый байт мастера - адрес, 1 в 9-м бите. Остальные байты - 0 в 9-м бите. И так, 1 - адрес, 2 - код функции, 3 - байт данных, 4 - контрольная сумма LRC (гораздо проще, чем CRC, для короткой телеграммы хватает). Ответ и обработка ошибок - как в Modbus, но то же 4 байта.
Работает, как часики: 57600 бод на 40м по кабелю SFTP-4-AWG23, РС - мастер и 7 слайвов.
У меня то же не было лишнего таймера для отчета времени между посылками, потому для идентификации начала использовал 9-ый бит. Правда, микроконтроллеры MCS-51, а не PIC.
p4all вне форума  
Непрочитано 09.01.2015, 01:21  
AndrFV
Вид на жительство
 
Регистрация: 20.12.2013
Сообщений: 310
Сказал спасибо: 5
Сказали Спасибо 94 раз(а) в 59 сообщении(ях)
AndrFV на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Сообщение от p4all Посмотреть сообщение
Так же, как большинство в дискусии пришел к выводу: RS-485, или UART (TTL уровни, если линия короткая). Хотя здесь все равно желательно согласование (120 Ом для плоского кабеля) и/или оптронная развязка.
485/482 - неплохие интерфейсы. Кстати, UART в них переделывается всего одной микросхемкой с несколькими конденсаторами. В ней же реализована и оптронная развязка.
AndrFV вне форума  
Непрочитано 09.01.2015, 02:19  
DropSoft
Частый гость
 
Аватар для DropSoft
 
Регистрация: 01.06.2007
Сообщений: 35
Сказал спасибо: 8
Сказали Спасибо 18 раз(а) в 12 сообщении(ях)
DropSoft на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

Сообщение от akegor Посмотреть сообщение
Модбас слишком тяжел - много памяти отъедает. Для мелких чипов неподъемен. Да и нужен он не всегда. Применяем его только для связи со сторонними вещами.
Смотря что нужно.
На Attiny13 делал датчики протечки и датчики тока, общающиеся по урезанному модбас-рту через RS-485. Поддержка только функций 3, 4 и 6. И в одной посылке (для функций 3 и 4) от 1 до максимум 5 двухбайтных регистров. Причем и уарт программный, и работа от встроенного RC, т.е. частота подстраивается по принимаемой посылке. Вполне надежно работают.
DropSoft вне форума  
Непрочитано 09.01.2015, 02:36  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,313
Сказал спасибо: 2,633
Сказали Спасибо 12,076 раз(а) в 6,082 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

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

Сообщение от akegor Посмотреть сообщение
А вообще, я сторонник простых решений, когда это возможно. Чем проще, тем меньше мест для граблей.
Передавать прямой и инверсный байты - и вся недолга. Никакого подсчёта CRC, контроль целостности данных на лету. Если все трое подключены по кольцу, то адрес необязателен, каждый съест свои байтики и подменит их ответом, а вот таймаут или сигнал сброса пакета мутить придётся - SPI-тырфейс синхронный.
Можно то же кольцо через USART организовать.
omercury вне форума  
Непрочитано 09.01.2015, 11:44  
shurik_ss
Гражданин KAZUS.RUN
 
Регистрация: 15.02.2011
Адрес: Витебск, Беларусь.
Сообщений: 544
Сказал спасибо: 484
Сказали Спасибо 603 раз(а) в 212 сообщении(ях)
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.RUN
 
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 7,458
Сказал спасибо: 3,227
Сказали Спасибо 3,512 раз(а) в 2,393 сообщении(ях)
ForcePoint на пути к лучшему
По умолчанию Re: Протокол для интерфейса Spi (да и I2c)

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

Последний раз редактировалось ForcePoint; 09.01.2015 в 12:09.
ForcePoint вне форума  
 
Опции темы

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

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, время: 05:24.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.