Например TDA7294

Форум РадиоКот • Просмотр темы - SPI длинная линия
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вс июн 29, 2025 02:32:09

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: SPI длинная линия
СообщениеДобавлено: Пн июн 03, 2013 06:52:53 
Родился

Зарегистрирован: Пн окт 10, 2011 14:42:42
Сообщений: 4
Рейтинг сообщения: 0
Доброго времени суток!
Хотелось бы узнать как правильно согласовать линию передачи данных между мегой и несколькими датчиками по SPI-интерфейсу (длина веревки около 5-8м)? Датчики соединены стандартно: MOSI,MISO,CLK в общей шине, CS для каждого свой.


Последний раз редактировалось xmavr Пн июн 03, 2013 15:48:38, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: SPI длинная линия
СообщениеДобавлено: Пн июн 03, 2013 07:11:47 
Друг Кота

Карма: 27
Рейтинг сообщений: 206
Зарегистрирован: Чт ноя 26, 2009 11:16:50
Сообщений: 6015
Откуда: Москва
Рейтинг сообщения: 0
Несколько метров для SPI многовато.

Самое простое - на приемном конце, непосредственно перед микросхемой, поставить резисторы около 300 Ом в разрыв каждой линии интерфейса. Это предотвратит (ну или уменьшит) выбросы на фронтах ("звон" из-за несогласованной линии передач). Учесть, что для линий MISO и MOSI приемные концы с противоположных сторон. Может, для такой длинной линии поставить резисторы с обоих сторон линии...

Если не поможет, то можно ставить на передающем конце микросхемы - шинные формирователи, а на приемном - соответственно шинные приемники. Я бы так стал делать.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: SPI длинная линия
СообщениеДобавлено: Пн июн 03, 2013 07:21:24 
Поставщик валерьянки для Кота

Карма: 16
Рейтинг сообщений: 329
Зарегистрирован: Вт ноя 27, 2007 11:32:06
Сообщений: 2222
Откуда: Tashkent
Рейтинг сообщения: 0
Или дифференциальные трансмиттеры если уровень помех высокий.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: SPI длинная линия
СообщениеДобавлено: Пн июн 03, 2013 09:06:36 
Вымогатель припоя

Карма: -3
Рейтинг сообщений: 77
Зарегистрирован: Сб мар 19, 2011 15:19:47
Сообщений: 546
Откуда: Владивосток
Рейтинг сообщения: 0
Для начала узнать о скорости передачи данных, потом советы.


Вернуться наверх
 
Выбираем индустриальные и медицинские источники питания MEAN WELL в открытом исполнении

Использование модульных источников питания открытого типа широко распространено в современных устройствах. Присущие им компактность, гибкость в интеграции и высокая эффективность делают их отличным решением для систем промышленной автоматизации, телекоммуникационного оборудования, медицинской техники, устройств «умного дома» и прочих приложений. Рассмотрим подробнее характеристики и особенности трех самых популярных вариантов AC/DC-преобразователей MW открытого типа, подходящих для применения в промышленных устройствах - серий EPS, EPP и RPS представленных на Meanwell.market.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: SPI длинная линия
СообщениеДобавлено: Пн июн 03, 2013 11:55:30 
Друг Кота

Карма: 27
Рейтинг сообщений: 206
Зарегистрирован: Чт ноя 26, 2009 11:16:50
Сообщений: 6015
Откуда: Москва
Рейтинг сообщения: 0
Это полезно, но не так важно, т.к. SPI - изначально быстрый интерфейс, и даже если его "замедлить", уменьшив частоту CLK, останутся проблемы искажения фронтов из-за длинных несогласованных линий и т.д.

Хотя при меньших скоростях можно советовать переходить на UART, тоже с установкой каких-то доп.микросхем.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: SPI длинная линия
СообщениеДобавлено: Пн июн 03, 2013 12:24:14 
Мудрый кот
Аватар пользователя

Карма: 24
Рейтинг сообщений: 286
Зарегистрирован: Чт июн 10, 2010 08:55:35
Сообщений: 1810
Откуда: Сибирские Афины
Рейтинг сообщения: 0
SmarTrunk писал(а):
Самое простое - на приемном конце, непосредственно перед микросхемой, поставить резисторы около 300 Ом в разрыв каждой линии интерфейса. Это предотвратит (ну или уменьшит) выбросы на фронтах ("звон" из-за несогласованной линии передач). Учесть, что для линий MISO и MOSI приемные концы с противоположных сторон. Может, для такой длинной линии поставить резисторы с обоих сторон линии...
Про резистор на стороне приёмника, это да. Но лучше его ставить на передающей стороне. А лучше RC-цепочку (параметры посчитать исходя из скорости). Т.к. любой провод это антенна и, например, фронт в несколько нано секунд с выхода микрухи будет такой звон создавать на длинном проводнике без цепочки уменьшающей скорость нарастания сигнала.

_________________
Когда уже ничего не помогает - прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)


Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
Не в сети
 Заголовок сообщения: Re: SPI длинная линия
СообщениеДобавлено: Пн июн 03, 2013 15:23:45 
Мудрый кот
Аватар пользователя

Карма: 29
Рейтинг сообщений: 616
Зарегистрирован: Вт янв 22, 2008 14:45:18
Сообщений: 1751
Откуда: Санкт-Петербург
Рейтинг сообщения: 0
uk8amk писал(а):
Или дифференциальные трансмиттеры

Для подключения датчика по SPI на нескольких метрах я использовал передатчики и приемники стандарта RS485. А также разъёмы на ПП 8P8C и покупные кабели (патч корды) :).


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: SPI длинная линия
СообщениеДобавлено: Пн июн 03, 2013 16:30:27 
Родился

Зарегистрирован: Пн окт 10, 2011 14:42:42
Сообщений: 4
Рейтинг сообщения: 0
Спасибо всем :)
Получается для длинных линий необходимо использовать либо LVDS, либо RS422/485 приёмопередатчик и согласовывать линии резисторами равными волновому сопротивлению кабеля?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: SPI длинная линия
СообщениеДобавлено: Пн июн 03, 2013 16:34:01 
Друг Кота

Карма: 27
Рейтинг сообщений: 206
Зарегистрирован: Чт ноя 26, 2009 11:16:50
Сообщений: 6015
Откуда: Москва
Рейтинг сообщения: 0
Я считаю, что можно руководствоваться примерами и рекомендациями из даташитов упомянутых микросхем


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: SPI длинная линия
СообщениеДобавлено: Пн июн 03, 2013 16:43:49 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2916
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23842
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
xmavr писал(а):
Спасибо всем :)
Получается для длинных линий необходимо использовать либо LVDS, либо RS422/485 приёмопередатчик и согласовывать линии резисторами равными волновому сопротивлению кабеля?

Совершенно неважно какой сигнал передается в линии, важно лишь, чтобы отраженный от нагрузки сигнал был достаточно мал и не создавал звона.
Таким образом можно передавать хоть 10 МГц SPI...
Я, например, передаю похожий сигнал через приемопередатчик ADM4857 с частотой до 9 МГц на расстояния около 10...12 метров.
Главное - согласовать линию У НАГРУЗКИ и чтобы драйвер тянул это волновое сопротивление.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: SPI длинная линия
СообщениеДобавлено: Вт июл 09, 2013 10:30:57 
Родился

Зарегистрирован: Ср ноя 21, 2012 18:20:27
Сообщений: 9
Рейтинг сообщения: 0
Дополнительно ко всем "терминаторам" придётся и второй канал "SPI" использовать для приёма от датчиков данных, так как опережение сигнала "SCK" в комплексе с отставанием данных будет нарушать синхронизацию. Необходимо чтобы данные шли вместе с синхронизацией, то есть, "SCK" ушёл, а потом вернулся с данными от датчика!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: SPI длинная линия
СообщениеДобавлено: Вт июл 09, 2013 10:42:30 
Мудрый кот
Аватар пользователя

Карма: 24
Рейтинг сообщений: 286
Зарегистрирован: Чт июн 10, 2010 08:55:35
Сообщений: 1810
Откуда: Сибирские Афины
Рейтинг сообщения: 0
Ну, да. Если уж пошла речь о таких длинах, то вот
http://www.ti.com/lit/an/slyt441/slyt441.pdf

_________________
Когда уже ничего не помогает - прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: SPI длинная линия
СообщениеДобавлено: Вт июл 09, 2013 20:52:12 
Родился

Зарегистрирован: Ср ноя 21, 2012 18:20:27
Сообщений: 9
Рейтинг сообщения: 0
Отличный материал! Более 100 метров - верится легко, да и кабель очень удобно какой нибудь UTP в 4 витые пары применить.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: SPI длинная линия
СообщениеДобавлено: Ср июл 10, 2013 01:36:05 
Друг Кота

Карма: 27
Рейтинг сообщений: 206
Зарегистрирован: Чт ноя 26, 2009 11:16:50
Сообщений: 6015
Откуда: Москва
Рейтинг сообщения: 0
Интересный документ, очень детальный.

Только не раскрыта тема сигнала SS (или CS, или CE, в общем как его там...). Часто "слейвы" требуют такого сигнала в обязательном порядке, от мастера. При двухсторонней коммуникации по принципу, описанному в документе, может еще и потребоваться такой сигнал назад, от "слейва" ко второму SPI мастера, который тоже будет "слейв" (согласно Figure 2 документа)... Хотя при односторонней передаче данных, например, в случае вывода информации на устройство отображения, будет проще. Так что, считаю, в статье полезный пример, но не окончательный рецепт на все случаи жизни.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 14 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y