Переключатель порта HDMI 5, обнаруживающий светодиод с помощью Arduino

Привет всем, я хочу сделать проект для этого 5-портового коммутатора HDMI, который у меня есть. Я хочу иметь возможность с помощью Arduino определять, какой из 5 портов используется (в любой момент времени можно использовать только 1).

Не покупая 5 таких устройств для определения тока (что будет стоить около 30 долларов):введите описание изображения здесь

Могу ли я просто купить один из них и подключить резисторы с разными значениями к каждому из 5 светодиодов и использовать аналоговый вход Arduino для определения напряжения, чтобы определить, какой светодиод порта был включен?

Я думаю, что стандартное напряжение красного светодиода составляет около 2,0 В? Аналоговый вход Android - 5v. Если это возможно, то какой тип значений для резисторов для каждого из 5 светодиодов лучше всего использовать, чтобы считать разницу достаточной для каждого с аналоговым входом Arduino?

Пример:

(com Gnd)-------------|
(led1)---/\/\/----\   |   |----------------|
(led2)---/\/\/-----\  |---|[-]         [vcc]-->to Arduino 5v Pin
(led3)---/\/\/------|-----|[+]         [out]-->to Arduino Analog Pin
(led4)---/\/\/-----/      |            [gnd]-->to Arduino Gnd Pin
(led5)---/\/\/----/       |----------------|

Или это было бы возможно даже без использования текущего сенсорного модуля?

ОБНОВЛЯТЬ

Хорошо, а если бы я использовал чип 4N25?

введите описание изображения здесь

Один из светодиодов подключается к контакту 1 (+) и контакту 2 (-). Контакт 5 будет содержать напряжение ~ 3 В постоянного тока от источника питания. Контакт 4 будет подключен к аналоговому контакту 0 Arduino.

Таким образом, когда светодиод на 5-портовом коммутаторе включен, это приводит к тому, что мощность ~ 3 В постоянного тока от источника питания поступает на Arduino, где она считывается как значение напряжения.

Это кажется правильным?

Вам, вероятно, лучше найти переключатель HDMI с машинным интерфейсом, таким как RS-232 (например, этот: warcom.com.au/… ).
Использование оптопары для взаимодействия с Arduino: да, конечно, это может работать, но вам нужно добавить резистор. Входы Arduino (в данном случае A0) имеют очень высокий импеданс, поэтому, если светодиод в 4n25 выключен, A0 не будет равен нулю, он будет плавающим (ПЛОХО!). Вы можете решить эту проблему, добавив резистор 10 кОм между A0 и землей Arduino.

Ответы (2)

Проблема с измерением тока заключается в том, что вам нужно «отклонить» ток через ваш датчик тока. Должна быть возможность работать, но я думаю, что есть гораздо более простое решение! Если 5-портовый переключатель HDMI похож на тот, что у меня есть, а именно на этот , то в нем будет 5 светодиодов, подключенных как (пожалуйста, извините меня за то, что я нарисовал только 3 светодиода, вы можете представить себе остальные 2 ;-) :

схематический

смоделируйте эту схему - схема, созданная с помощью CircuitLab

Если вы подключите заземление переключателя HDMI, а также источник питания 5 В (есть разъем для этого источника питания!), то вы можете обнаружить включение и выключение светодиодов, контролируя напряжение на D1, D2 и D3. Такая линия будет подтянута к земле (0 В), когда светодиод должен быть включен.

Возможно, что схема реализована «вверх ногами», так что светодиоды имеют общую шину заземления вместо питания. Но также тогда вы можете просто определить выходные напряжения таким же образом.

Я пытался упростить схему, и поэтому я хотел посмотреть, могу ли я просто использовать резисторы разного номинала на каждой линии светодиодов, чтобы определить, какой светодиод горит, в зависимости от напряжения, которое возвращается от светодиодов переключателя.
Пожалуйста, проверьте мой OP для обновленного вопроса.

Еще одна вещь, которая может сработать для вас, - это подключить шину CEC к свободному порту HDMI где-нибудь. Переключение активного источника объявляется по шине, и всегда можно спросить у других устройств, какой из них активен.

Пожалуйста, проверьте мой OP для обновленного вопроса.
@StealthRT, я все еще думаю, что вежливо спросить на шине CEC, безусловно, самый простой подход, поскольку для этого не потребуется менять существующий переключатель, для этого требуется только один контакт на Arduino, его можно подключить к любому устройству HDMI и может обрабатывать несколько переключателей последовательно (телевизоры обычно также включают небольшой переключатель). Дополнил свой ответ ссылкой.