Добрый день!
Любительским образом разрабатываю устройство ввода-вывода для строительства "картонных кабин" для авиасимуляторщиков.
Непосредственно устройства ввода (кнопки, тумблеры, энкодеры) и вывода (светодиоды, 7-сегментные индикаторы) подключаются к сдвиговым регистрам ('165 и '595), регистры каскадированы и подключены к контроллеру, к SPI-порту через преобразователь уровней 3.3<->5 ADG3304 и инвертор '04 (нужен для инвертирования CS для '165.
Частота SPI выбрана равной 12 МГц из соображений производительности контроллера, периода опроса энкодеров и т.д.
Имеется разведенная плата, на ней - ветка из 8 '165 и 8 '595. Дальше шина оканчивается разъемом RJ-45, где имеется 4 сигнала и 4 "земли". Предполагается подключать дальше цепочкой следующие платы с регистрами(модули), делая таким образом длинную цепочку из сдвиговых регистров.
Последовательных резисторов на сигнальных линиях , впрочем как и подтяжек не стоит.... При подключении оконечных устройств непосредственно к плате никаких проблем нет, все работает как и задумано.
Опыты показали, что если подключить к этому RJ-45 произвольной длины (от 5 сантиметоров до 2 метров) кабель, то вся работа шины останавливается. Осцилографом еще не смотрел, но предполагаю завалы фронтов и, возможно, звон. Я так предполагаю, что если уж кабель вызывает отказ работы шины, то никакими ухищирениями со стороны модуля ситуацию исправить не получится, и нужно переделывать схему и переразводить плату.
Как решение предполагаю установку подтягивающих к +5 резисторов, буфера типа '125 и проходных резисторов 20-50 ом. Аналогичную схему планирую также ставить на всех последующих модулях. Соединяться все это хозяйство будет неэкранированной витой парой CAT5, земля и сигналы будут перевиты.
Поскольку ни образования, ни опыта в высокочастотной электронике у меня нету, прощу помощь уважаемых знатоков - поможет ли затея с буфером и резисторами?
Заранее спасибо!