Как ноутбук определяет, что подключен кабель HDMI?

Как ноутбук определяет, что подключен кабель HDMI?

Я купил дешевый HDMI-переключатель; нажатие кнопки переключает входы 1, 2 и 3 на один и тот же выход. Мне нравится держать домашний ноутбук закрытым на столе, а рабочий ноутбук открытым на нем, а внешний монитор переключаться между ними. Если я использую оба входа HDMI на мониторе, мой домашний ноутбук распознает, что он все еще подключен, даже если я просматриваю свой рабочий ноутбук, и не переходит в спящий режим.

Проблема, однако, в том, что HDMI-переключатель дешевый. Когда я использую переключатель и переключаюсь вдали от своего (закрытого) домашнего ноутбука, переключатель отключает все сигналы на ноутбуке; ноутбук впоследствии распознает, что к нему больше не подключен дисплей, и поскольку он закрыт, он просто переходит в спящий режим. Теперь у меня проблема курицы и яйца: я не могу разбудить компьютер через USB-клавиатуру, потому что к нему не подключен дисплей, а HDMI-переключатель не переключается на этот ноутбук, потому что он спит и не выводит сигнал.

Мой вопрос:как ноутбук определяет, что HDMI подключен?Если это так просто, как увидеть +5 вольт на правильном контакте, я могу просто соединить все три контакта +5 вольт вместе, так что мой ноутбук будет думать, что он подключен, и, следовательно, не перейдет в спящий режим. Если это более сложный способ (например, какая-то передача данных между ноутбуком и монитором), то мне может не повезти.

решение1

Большинство контактов в HDMI представляют собой витые пары с экранированием. Однако некоторые из них являются одинарными контактами. CEC используется только некоторыми устройствами и позволяет нескольким устройствам HDMI общаться друг с другом и отправлять команды. Контакт горячего подключения используется всегда и обнаруживает событие отключения подключения для повторной инициализации драйвера HDMI.

Помимо веселья, Raspberry Pi нужно перезапустить, чтобы переинициализировать драйвер. Если вы подключитесь после запуска, вы не получите передачу.

Затем есть несколько пинов для питания и шифрования. DDC — это информация об устройстве и шифрование HDCP.

Отвечая на ваш вопрос, это горячая замена, но вы не можете просто привязать его к высокому уровню, потому что тогда ваши драйверы будут только повторно инициализироваться при перезапуске. Это плохо, если где-то зависает. Обычно, если он остается высоким или низким, это означает, что что-то на линии его удерживает. Может быть другое конфликтующее устройство, неправильная изоляция или плохой подтягивающий, подтягивающий. Я бы лучше попробовал пройти через концентратор HDMI и посмотреть, исправит ли это проблему. Он, вероятно, лучше справится с подтягиванием линии.

решение2

То, что вы, возможно, ищете, — это EDID, расширенные данные идентификации дисплея. EDID — это протокол, разработанный для запроса монитора дисплея и возврата информации оборудованию, которое управляет дисплеем. Информация включает в себя поддерживаемые дисплеем тайминги, размер дисплея и т. д.

Обычно EDID запускается в горячем режиме с помощью +5 В от кабеля HDMI, хотя не все производители имеют надежное оборудование (в какой-то момент горячее подключение кабеля HDMI не приведет к пробуждению монитора).

Связанный контент