Допустим, к микроконтроллеру подключен разъём TRS (тот что для наушников). И контакты T и R идут к пинам микроконтроллера. Пины подтянуты к питанию. В разъём вставляется штекер TRS, и к T и R подключены обычные кнопки. Жмём кнопки, они подтягивают T или R к земле, микроконтроллер обрабатывает нажатия. Первое. Как определить, что вставлен штекер? Я думаю, можно использовать ещё один пин, подтянутый к питанию, который будет замыкаться третьим (общим) контактом за землю. Разумно? Второе. В разъём может быть вставлен моно штекер TS. Как определить этот момент? Нагуглил, что: При подключении моно-штекера TS в стереоразъём TRS средний контакт разъёма замыкается на землю. Это будет выглядеть как постоянно нажатая вторая кнопка. Можно ли как-то схематически отличить две ситуации: "нажата вторая кнопка" и "просто вставлен моно штекер"?

Комментарии: 12

  1. Andre

    Погуглил, подумал. Понял, что обе задачи невыполнимы в теории. По крайней мере без аналоговых извращений.

    • Sanchez

      Можно наверное и цифровым образом сделать

    • Konstantin

      У вас же микроконтроллер, пусть он и разбирается со всем

      • Andre

        в смысле, пусть думает и гуглит за меня? )

        • Konstantin

          Нет, вы просите схематически решить. А решается все легко алгоритмически

          • Andre

            точно не легко. Предложите решение. Я уверен, что где-то зайдёте в тупик. Но если нет, будет круто.

            • Konstantin

              Есть разъемы с детектом вставленного джека. По второй задаче если в момент втыкания джека была нажата вторая кнопка, значит это моно джек. С поправкой на дребезг, конечно

              • Andre

                эти разъёмы просто имеют физическую кнопку, которую придавливает джек. Это совсем не то же самое, о чём я спрашиваю. По второй задаче. А как определить момент втыкания? И что такое "момент", сколько это в секундах? И как это отличить от "просто зажата вторая кнопка пользователем"? Что если штекер вставлять очень медленно, очень быстро, или вообще оставить его в полупозиции?

                • Konstantin

                  Это не то же самое, но это решение задачи. Момент определять эмпирически, скажем секунда после детекта. Естественно, возможны ложноположиьельные срабатывания. В полупозиции не сработает "кнопка", аналогично при медленном втыкании

                  • Andre

                    тогда решением задачи будет и камера, направленная на кабель, плюс нейросеть для анализа. или использование другой схемотехники, других кабелей, других штекеров. Всё, что можно получить от трёх проводов (один из которых земля) это: 1. закорочен ли первый провод 2. закорочен ли второй провод. Больше информации в них не содержится.

                    • Konstantin

                      Ок, как скажете

    • Yanis

      Спроси вот тут https://t.me/TuringsDemons Если есть возможность включить кнопку через резистор, то можно. От второго пина через 1К резистор подаём высокий уровень, смотрим что на ходе. Высокий замкнута кнопка, низкий моно джек. Резистор 47К постоянная подтяжка входа.

Не нашли ответ?

Вам также может быть интересно