2016-02-01 4 views
0

Linux - есть ли способ найти мгновенное состояние клавиатуры? например - нажата клавиша Enter, нажата клавиша Enter. Я пытаюсь обработать прерывание отключения питания на процессоре iMX6 - получить прерывание (в пространстве пользователя ...), подождать 500 или 1000 мс и проверить, все еще нажата клавиша. У метода input.c нет похожего метода. Спасибо.Мгновенное состояние клавиатуры в Linux

+1

C не поддерживает _methods_ в любом случае. В любом случае: может быть, вы должны реализовать это в самом драйвере? – Olaf

ответ

1

Это может потребовать немного усилий с вашей стороны, но вы можете запросить состояния клавиш и прослушать ключевые события пресс-релиза, используя интерфейс ядра evdev.

Для примера, как это сделать, см. evtest.

Или посмотрите на мой питон переписать: https://github.com/naedanger/pyevtest

Я использовал оба из этих инструментов на платформе iMX28 для прослушивания нажатий клавиш с простой клавиатуры матрицы.

+1

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

Смежные вопросы