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