Aleksandr_des
Jun 17 2008, 05:13
Доброго времени суток. У меня такая ситуация, есть АРМ который получает данные с датчика по SPI интерфейсу. Проблема в том что длина кабеля SPI ограниченна.
Были мысли потавить какуюнибудь дешевую АВРку и передавать его уже по ттл. Либо поставить ADM3485 с обоих сторон, но это дорого.
Посоветуйте как выйти из ситуации как можно дешевле, нужен кабель примерно метровой длины. Заранее спасибо.
Terrabyte
Jun 17 2008, 05:50
что за датчик, он с spi интерфейсом? ,на плате стоит?
если есть куда поставить и тока будет хватать, можно попробовать подстаканить 74HC244(245) логику, как в некоторых программаторах..
посмотреть схемы программаторов isp для AVR например
STK200/300 pinout||
SI-Prog pinoutна транзисторах ещё где-то схема была..
rezident
Jun 17 2008, 06:47
У датчиков с синхронным интерфейсом обычно применяют драйверы для симметричной (дифференциальной) линии, такие же как, например, для RS422. Драйверы RS422 широкодоступны, в чем же проблема-то?
Конечно же следует прикинуть/сравнить частоту тактирования синхронного интерфейса и задержки распространения сигнала+крутизну фронтов в линии.
Как-то пытался через SPI прикрутить датчик температуры. Мне надо было метров десять. Как ни уменьшал скорость на таком длинном проводе никак не получилось, все время перли ошибки. Поставил датчик DS18B20 (так вроде называется) с 1-wire интерфейсом. На 10 метрах работает без проблем. Что за датчик у вас все-таки? Вы не ответили.
Terrabyte
Jun 17 2008, 09:00
вот именно DSину лучшеб поставили!
я на 50м делал 3 датчика на 1 линии, всё норм., до сих пор работают, только питание не от самой mLAN линии, а отдельным проводом 5V, и резик кОма на 3, но провод у меня был экранированный 3 жильный.
Вообще, тема не совсем ARMовская..
lebiga
Jun 17 2008, 09:20
Цитата(Aleksandr_des @ Jun 17 2008, 09:13)

Доброго времени суток. У меня такая ситуация, есть АРМ который получает данные с датчика по SPI интерфейсу. Проблема в том что длина кабеля SPI ограниченна.
Были мысли потавить какуюнибудь дешевую АВРку и передавать его уже по ттл. Либо поставить ADM3485 с обоих сторон, но это дорого.
Посоветуйте как выйти из ситуации как можно дешевле, нужен кабель примерно метровой длины. Заранее спасибо.
Поставить что-то типа SN65LVDS32 и кабель экранированный (или шлейф скази). Если скорость низкая - однозначно ST485 (MAX, AD или др фирмы), на каждый сигнал по одному передатчику - приемнику - и витая пара.
Terrabyte
Jun 17 2008, 11:08
тема эта
тут обсуждалась.
..ага с датчика LVDS31, а на другой стороне LVDS32
судя по графику NOTE A: TRANSMISSION DISTANCE (datasheet на sn55lvds32), такая схема может шарашить метров на 40 при 10Mbps и 5% флуктуаций, только эти микросхемы по 70р и выше.
RST дал ссылку хорошую, про LVDS - в конце см.
http://electronix.ru/forum/index.php?showtopic=25884
Aleksandr_des
Jun 17 2008, 14:58
Цитата(uriy @ Jun 17 2008, 12:33)

Что за датчик у вас все-таки? Вы не ответили.
Сканер отпечатка пальца AT77C104 (Fast Mode at 16 Mbps Max)
Ого! Может быть все таки попытаться поставить контроллер поближе или использовать LVDS например. У меня щас есть микросхема для Ethernet (Wiznet 5100) подцеплена к DSP через SPI. Длина линий не более 10 см, в линиях стоят терминаторы по 27 Ом. При частоте CLK 10 МГц еще работает нормально при 12 МГц уже нет. А вы судя по всему хотите выжать 16 МБит/сек
researcher
Jun 17 2008, 16:14
Aleksandr_des
Jun 18 2008, 04:54
Цитата(uriy @ Jun 17 2008, 19:28)

Ого! Может быть все таки попытаться поставить контроллер поближе или использовать LVDS например. У меня щас есть микросхема для Ethernet (Wiznet 5100) подцеплена к DSP через SPI. Длина линий не более 10 см, в линиях стоят терминаторы по 27 Ом. При частоте CLK 10 МГц еще работает нормально при 12 МГц уже нет. А вы судя по всему хотите выжать 16 МБит/сек
Да пока остановился на LVDS, скорость для меня фактор очень важный. Массив передается с высокой скоростью. Также рассматриваю вариант установки Tiny AVR с буферами помощнее и передавать в ттл.
Цитата(Aleksandr_des @ Jun 18 2008, 08:54)

Да пока остановился на LVDS, скорость для меня фактор очень важный.
Это правильно
Цитата
Массив передается с высокой скоростью. Также рассматриваю вариант установки Tiny AVR с буферами помощнее и передавать в ттл.
Во первых - успеет ли Tiny AVR принять и обработать данные на 16 Mbps? Во вторых, не факт, что ттл сработает на таком расстоянии и скоростях. В любом случае LVDS будет на порядок надежнее.
Aleksandr_des
Jun 18 2008, 08:20
Почитал инфу по LVDS? спасибо researcher за полезную ссылку. Есть ли у кого реальный опыт проектирования с приминение LVDS? почитал статью, указанные требования к проектированию топологии платы конечно не совсем для меня посильны. Например использование многослойной платы и отсутвием переходов на другую сторону, также отсутствием поворотов на 90 град в дорожках . К тому же плата будет сделана утюжным методом(сразу делать фотошаблон дороговато и долго для меня).
С другой стороны все эти требования необходимы для получения заявленных скоростей, в моем случае 16 мбит для LVDS это практически ничего.
Может попробовать витую пару кинуть...
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.