Страница 1 из 3
Развязка SPI оптопарами
Добавлено: Пн окт 29, 2012 18:23:09
igor_ts
Подскажите пожалуйста, как подключить оптопару для развязки шины SPI, т.е. к микроконтроллеру по SPI подключено несколько регистров сдвига 595, как их развязать от контроллера?
Re: Развязка SPI оптопарами
Добавлено: Пн окт 29, 2012 20:15:40
radiokot__
Есть один сайтик называется NXP там этого добра как грязи.
Даже сэмплы просто так высылают.
Re: Развязка SPI оптопарами
Добавлено: Пн окт 29, 2012 20:28:09
igor_ts
а что, обычным транзисторным оптроном нельзя сделать?
Re: Развязка SPI оптопарами
Добавлено: Пн окт 29, 2012 21:13:04
zero648
6N134 или 6N137 тогда ставить с логическим выходом
Re: Развязка SPI оптопарами
Добавлено: Пн окт 29, 2012 22:42:55
igor_ts
zero648 писал(а):6N134 или 6N137 тогда ставить с логическим выходом
а инвертировать их выхода не придется?
Re: Развязка SPI оптопарами
Добавлено: Пн окт 29, 2012 23:01:18
zero648
Чтобы получить прямой сигнал с выхода 6N134, нужно будет тогда управлять катодом светодиода, а анод на Vcc через резистор и наоборот, если управлять анодом светодиода, то получим инвертированный сигнал на выходе.
Re: Развязка SPI оптопарами
Добавлено: Пн окт 29, 2012 23:13:00
ILYAUL
igor_ts писал(а):Подскажите пожалуйста, как подключить оптопару для развязки шины SPI, ....
Есть у ATMEL такое решение поищите в Appnote
Re: Развязка SPI оптопарами
Добавлено: Пн окт 29, 2012 23:15:42
SmarTrunk
Да, это быстродействующие оптроны с логическим выходом. Есть их сдвоенные варианты, можно в даташите посмотреть. Еще удобно использовать специализированные микросхемы-изоляторы, например серия ADuM1400 ADuM1401 ADuM1402. Там сразу четыре канала, это может быть удобно именно для SPI
Re: Развязка SPI оптопарами
Добавлено: Вт окт 30, 2012 08:36:00
Kavka
igor_ts, если скорость небольшая (до мегагерца, например) или требуется передача данных только в одну сторону, то подойдёт практически любой вариант - и оптопары и цифровые изоляторы (упоминавшееся выше микрухи серии ADUM от Analog devices, или смотрите у Texas instruments, серия ISO, если не ошибаюсь). Надо только по скорости подобрать.
Если же скорость единицы мегагерц или выше, или же надо двухсторонний обмен, то надо уже учитывать задержки вызванные прохождением сигнала через развязку, со всеми вытекающими последствиями.
Re: Развязка SPI оптопарами
Добавлено: Вт окт 30, 2012 12:36:00
igor_ts
ILYAUL писал(а):
Есть у ATMEL такое решение поищите в Appnote
Не совсем понял где искать.
SmarTrunk писал(а):.... , например серия ADuM1400 ADuM1401 ADuM1402....
Заказал ADuM1400, когда привезут, буду пробовать.
Kavka писал(а):... , то подойдёт практически любой вариант - и оптопары и ...
я начинал подключение с оптотранзисторами, всяко пробовал, не работает. Контроллер работает на частоте 4MHz, а на всех трех выходах импульсы идут с частотой 10Hz, обмен не двухсторонний. Может я что-то не так делаю

Re: Развязка SPI оптопарами
Добавлено: Вт окт 30, 2012 13:21:04
ILYAUL
Не совсем понял где искать.
www.atmel.com
Re: Развязка SPI оптопарами
Добавлено: Вт окт 30, 2012 16:29:11
Kavka
igor_ts писал(а):
SmarTrunk писал(а):.... , например серия ADuM1400 ADuM1401 ADuM1402....
Заказал ADuM1400, когда привезут, буду пробовать.
Спецификацию не читали. Да? 1400 это 4 канала в одну сторону. Для SPI нужен 1401 - 4 канала, три в одну сторону, один в обратную.
Если CS не нужен, то можно посмотреть в сторону 1301.
Учтите, что там ещё 2 или 3 градации по скорости.
Re: Развязка SPI оптопарами
Добавлено: Ср окт 31, 2012 20:12:48
igor_ts
Kavka писал(а):Спецификацию не читали. Да? 1400 это 4 канала в одну сторону. Для SPI нужен 1401 - 4 канала, три в одну сторону, один в обратную.
Если CS не нужен, то можно посмотреть в сторону 1301.
Учтите, что там ещё 2 или 3 градации по скорости.
Читал pdf на них и видел, что они разные, но не подумал про направление которое мне нужно. Решил, что все в одну сторону не подумав. Но оно так и есть. У меня используются SCK, RCK и SER. А вот про CS не понял, что за вход или выход.
Re: Развязка SPI оптопарами
Добавлено: Чт ноя 01, 2012 09:47:30
Kavka
igor_ts писал(а):Читал pdf на них и видел, что они разные, но не подумал про направление которое мне нужно. Решил, что все в одну сторону не подумав. Но оно так и есть. У меня используются SCK, RCK и SER. А вот про CS не понял, что за вход или выход.
Что такое RCK и SER я могу только догадываться.

Поэтому опишу типивую ситуацию.
Подчинённое (slave) SPI устройство, которое имеет:
- вход тактирования (SCK)
- вход данных (MOSI - master out, slave in)
- выход данных (MISO - slave out, master in)
- сигнал выбора устройства (CS - chip select), если к SPI подключено несколько устройств, то этот сигнал устанавливается активным для того устройства с которым происходит обмен. Для остальных устанавливается не активным. Хотя, можно посылать одно и тоже нескольким устройствам одновременно.
Соответственно от
главного на SPI (микроконтроллера), к подчинённому устройству направлены - SCK, MOSI и CS. В обатную сторону - MISO.
Если от подчинённого устройства нет обратной связи, то MISO не подключаем. (остаётся три сигнала в одну сторону)
Если на SPI одно единственное устройство, то CS не нужен - включается в активное состояние на стороне устройства. (остаётся три сигнала в одну сторону).
А если без CS и MISO, то остаётся два сигнала в одну сторону.
Вроде так.
Re: Развязка SPI оптопарами
Добавлено: Чт ноя 01, 2012 10:44:24
Jack_A
Kavka писал(а):
Если на SPI одно единственное устройство, то CS не нужен - включается в активное состояние на стороне устройства. к.
Вот это категорически не советую. Сам напоролся. Дело в том, что CS не только выбирает приемник, но и обеспечивает исходное его состояние, в т.ч. очистку приемного буфера. Если случайная помеха на SCK, то в приемный буфер запишется паразитный битик и будет циркулировать там во всех принятых байтах, всех их искажая. И ничем не исправишь, кроме ресета. Если такое произойдет при передаче с активным CS, то можем диагностировать ошибку и, передернув CS, еще раз повторить пакет.
Вы скажете : надо иметь хорошие беспомеховые линии связи. Не спорю, но за свою долгую жизнь такие встречал только в теории. И всякие контроли четности, CRC и пр. люди придумали не от балды, а жизнь заставила.
Re: Развязка SPI оптопарами
Добавлено: Чт ноя 01, 2012 11:19:51
Kavka
Jack_A, то что вы описали - это очень хороший практический аспект.
Который, впрочем, можно почерпнуть из спецификаций некоторых микросхем (протокол работы).
Спорить нет смысла. С точки зрения надёжности - вы правы.
Re: Развязка SPI оптопарами
Добавлено: Чт ноя 01, 2012 11:45:31
igor_ts
Kavka писал(а):... Что такое RCK и SER я могу только догадываться.

...
взял из pdf на 74hc595, а с контроллера конечно-же (SCK),(MOSI) и стробирующий импульс (три выхода). По SPI подключено 36 регистров.
Re: Развязка SPI оптопарами
Добавлено: Чт ноя 01, 2012 19:14:35
Jack_A
Kavka писал(а): это очень хороший практический аспект.
А мне теоретизировать было некогда : за спиной - призводство, впереди - заказчик

Re: Развязка SPI оптопарами
Добавлено: Пт ноя 02, 2012 13:16:35
clawham
Ребятки ну вы и разошлись!!!!
Человеку надо лампочками или релюшками моргать через простейший сдвиговик...а вы его....эээх...не стыдно?
там простейшие 2 оптопары можно было взять и поиграться с частотой....обычная т25 до 500 килогерц держит.....а если это релюшки дык там и макс делитель можно врубить - задержки не заметите
Re: Развязка SPI оптопарами
Добавлено: Пт ноя 02, 2012 13:47:09
Kavka
Как бы мы не "расходились" - всё равно, автор темы решает что из предложенного применить, а что нет
