Я читал этот вопрос, в котором говорится, что USB-клавиатуры используют опрос, чтобы увидеть, нажимаются ли клавиши, в то время как клавиатуры PS/2 используют прерывания.
Мне было интересно, какой метод встроен в клавиатуру на ноутбуке?
Большинство классических ноутбуков (со встроенными несъемными клавиатурами) используют специальный контроллер клавиатуры (прямое сканирование матрицы клавиш), который выходит из моста LPC (иногда называемый «Super-I/O»). Мост LPC (Low Pin Count) также управляет всеми устаревшими устройствами, микросхемой BIOS, таймерами, RTC и т.д. Мост LPC выходит из выделенного модуля PCI, а шина LPC поддерживает все необходимые прерывания.
Если вы проверите диспетчер устройств ПК "по соединению" и развернете "ПК на базе ACPI xxx", вы в конечном итоге увидите все устройства PCI. Клавиатура будет отображаться как PS/2, но это только логично, фактического последовательного интерфейса нет. Таким образом, вы можете сказать, что клавиатура ноутбука использует прерывания.
Различные устройства без клавиатуры, такие как планшеты, используют интерфейс USB для связи с клавиатурой. Съемные клавиатуры также используют USB. Электроника сканирования клавиш является локальной по отношению к клавиатуре и обрабатывает все события нажатия клавиш и отпускания клавиш локально. Шина использует USB Периодические транзакции, называемые "Interrupt Pipe", для получения данных клавиатуры, что формально является формой опроса.
Встроенные клавиатуры используют метод, соответствующий интерфейсу, который они используют, и этот интерфейс обычно либо PS/2, либо USB.
В Windows 7 это можно проверить, открыв Диспетчер устройств и заглянув в раздел «Клавиатуры». В моей выборке размером один у меня есть HID Keyboard Device
и Standard PS/2 Keyboard
. Первая - это внешняя клавиатура USB (она исчезает, когда я отключаю ее от сети), поэтому последняя должна быть моей встроенной клавиатурой.