У меня есть старая, нестандартная пара разъемов, используемая большим количеством систем. Разъемы «мама / папа» и симметричны, так как у них нет механической направляющей, чтобы пользователь мог подключить ее в «правильном» положении.
Я не могу изменить устройство отца и разъем в любом случае.
4 вывода: VCC GND Rx Tx. У меня высокое напряжение на выводе питания, а логика Rx / Tx на 5В. Часы Rx / Tx предварительно установлены на определенное значение.
Следовательно, родительский разъем может быть подключен четырьмя возможными способами.
Мать снабжает отца VCC до 1000 В и до 100 А, если и когда контакты "выровнены". До этого устройства могут обмениваться данными через Rx и Tx @ 5V (на оконечном устройстве родительского разъема есть небольшая перезаряжаемая батарея).
Корпуса и разъемы не являются проводящими.
Мне нужно уметь определять ориентацию / как вставлен родительский разъем, чтобы я мог правильно передавать ток и сигналы, чтобы устройства подключались и разговаривали независимо от того, как подключены разъемы.
Каков наилучший способ сделать это? Под «лучшим способом» я подразумеваю наименьшее количество компонентов / полевых транзисторов / реле / диодов. Я могу использовать любой тип MCU на моем конце, смотрел на L0-класс от STM.
Примечание: электромеханическое устройство за материнским разъемом, в форме диска, вращаемое двигателем с шагом 90 'по часовой стрелке (в основном, до 4 "попыток", пока сигналы не будут правильно выровнены) было предложено через Другой канал, я не ищу такого решения, нужно что-то твердотельное, без движущихся частей.
Ответы:
Поскольку то, что вы подключаете, это подавление напряжения относительно заземляющего контакта на линии Tx (и, возможно, подтягивания на Rx), вы должны иметь возможность использовать схему, подобную приведенной ниже, в качестве начала.
смоделировать эту схему - схема, созданная с использованием CircuitLab
Потяните каждый штифт на землю по одному и проверьте, какие другие штыри движутся назад. Таким образом, вы должны быть в состоянии выяснить, какой вывод является фактическим выводом заземления. Как только вы это узнаете, включите сигналы TX / RX на правильные контакты (не показаны) и проверьте связь, прежде чем включать соответствующий P-MOSFET.
Как только вы узнаете, какой из них заземлен, и включите его, обнаружение того, что вилка вытянута, должно быть просто вопросом мониторинга транзистора в линии Vcc.
источник
Вы можете использовать схему, аналогичную двухступенчатому стволу, чтобы вращать сигналы на 0, 90, 180 или 270 градусов:
смоделировать эту схему - схема, созданная с использованием CircuitLab
Вы можете использовать твердотельные или механические реле для выключателей. Существует только два управляющих сигнала, позволяющих 4 возможных настройки, соответствующих 4 возможным ориентациям.
Чтобы найти правильную ориентацию, просто переключайтесь между настройками, пока не получите действительный сигнал RX / TX. Поскольку высоковольтное питание не включается до того, как вы найдете правильную ориентацию, логика должна обрабатывать только + - 5 В на сигналах rx / tx. Достаточно простого последовательного резистора и диодного зажима.
(Конечно, было бы разумно иметь какую-то защитную защиту на случай, если высокое напряжение попадет на неправильные контакты, но этого достаточно для другого вопроса.)
источник