Я модифицирую контроллер монитора для прототипа. Было бы удобно отправлять команды прототипу с использованием DDC/CI. В Windows я не могу найти очевидный способ отправить команду DDC/CI на «зависимое от дисплея устройство».Как получить доступ к зависимому устройству DDC/CI Display из приложения Windows?
Monitor Configuration API может отправлять команды виртуальной панели управления, но не дает доступа к устройствам, зависящим от отображения (которые имеют адрес I2C, отличный от 0x6e).
Продукт Nicomsoft WinI2C/DDC, похоже, дает доступ к устройству, зависящему от дисплея, но это конец жизни. Я бы предпочел не создавать зависимость от продукта с истекшим сроком службы.
У NVIDIA NVAPI есть API I2C, но я хотел бы получить решение, которое также будет работать с графическими адаптерами Intel и AMD.
Вот список функций, которые должны быть зарегистрированы вашим драйвером фильтра https://msdn.microsoft.com/en-us/library/windows/hardware/ff566464(v=vs.85).aspx. Вы должны имитировать драйвер мини-порта видео, передавая все между ними. –
Благодарим вас за то, что сообщила мне, что драйвер фильтра видеопортера XDDM решит проблему. – joshuanapoli
Я думаю, что решение также существует и проще с WDDM, но есть небольшая оговорка. Вы не получаете такой низкий уровень доступа к линиям данных и тактовых линий, вместо этого вы просто отправляете буфер. Однако в соответствии с msdn dispaly miniport драйверам разрешено отклонять запросы к адресам i2c, отличным от адреса edid. Поэтому, хотя драйвер кросс-платформы может быть возможен, для Windows такая поддержка не предусмотрена, а скорее оставлена до oem. –