나는 프로그램이 있습니다 (미리 엄마)는 Raspian(Raspberry Pi)에서 실행되며 대부분의 프로그램과 마찬가지로 키보드에서 입력을 받습니다. uinput
GPIO 핀의 높음/낮음 판독값을 키 누르기로 변환하는 프로그램을 사용하고 있습니다 (선택됨). pikeyd
키 5에 매핑된 GPIO 핀이 있는 터미널에서 백그라운드로 이것을 실행하고 있습니다 . 해당 GPIO를 HI로 설정하면 터미널에 "5"가 인쇄됩니다.
그런데 실행을 해보니 advancemame
인식이 되지 않습니다 uinput
. 키보드를 뽑고 재부팅하면 모든 것이 advancemame
잘 작동합니다 uinput
. 표면적으로는 프로그램이 첫 번째 입력 장치 input0
(키보드)를 읽습니다. 그것을 만드는 방법이 있나요 uinput
input0
? 즉, 입력 장치의 순서를 설정하는 것입니다.
$ ls /sys/class/input/
event0 event1 event2 input0 input1 input2 mice mouse0 mouse1
$ ls /sys/devices/virtual/input/input2/
capabilities event2 id modalias mouse1 name phys power properties subsystem event uniq
advancemame
모든 입력 장치를 볼 수 있는 설정이 있는지 잘 모르겠습니다 . 처음부터 3개의 이미지를 만들었고 3개의 이미지 중 1개에서 advancemame
모든 입력 장치를 볼 수 있습니다. uinput
때로는 키보드를 사용할 수도 있습니다. 이미지 간의 구성 설정을 비교했지만 하나는 작동하고 다른 하나는 작동하지 않는 이유를 찾을 수 없는 것 같습니다. 이것이 보안 허가가 될 수 있는지 궁금합니다.
또한 event0과 event1을 비활성화하는 방법이 있습니까? 나는 그것을 사용하지 않으므로 X11
옵션 xinput
이 아닙니다.
편집하다
이것은 내 입력 장치입니다.
pi@raspberrypi ~ $ cat /proc/bus/input/devices
I: Bus=0003 Vendor=0d62 Product=0500 Version=0100
N: Name="2.4G Wireless Keyboard with Touchpad"
P: Phys=usb-bcm2708_usb-1.2/input0
S: Sysfs=/devices/platform/bcm2708_usb/usb1/1-1/1-1.2/1-1.2:1.0/input/input0
U: Uniq=
H: Handlers=sysrq kbd event0
B: PROP=0
B: EV=120013
B: KEY=10000 7 ff9f207a c14057ff febeffdf ffefffff ffffffff fffffffe
B: MSC=10
B: LED=7
I: Bus=0003 Vendor=0d62 Product=0500 Version=0100
N: Name="2.4G Wireless Keyboard with Touchpad"
P: Phys=usb-bcm2708_usb-1.2/input1
S: Sysfs=/devices/platform/bcm2708_usb/usb1/1-1/1-1.2/1-1.2:1.1/input/input1
U: Uniq=
H: Handlers=kbd mouse0 event1
B: PROP=0
B: EV=1f
B: KEY=4837fff 72ff32d bf544446 0 0 1f0001 20f90 8b17c000 677bfa d9415fed 9ed680 4400 0 10000002
B: REL=143
B: ABS=7f01 0
B: MSC=10
I: Bus=0003 Vendor=0001 Product=0001 Version=0001
N: Name="uinput-sample"
P: Phys=
S: Sysfs=/devices/virtual/input/input2
U: Uniq=
H: Handlers=sysrq kbd mouse1 rfkill event2
B: PROP=0
B: EV=100007
B: KEY=10000 ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe
B: REL=3
도움을 주시면 감사하겠습니다.
답변1
advancemame
문제는 일반 사용자 가 sudo
아닌 일반 사용자 로 실행되고 있는 것으로 나타났으며 pi
그 이유를 조사하지 않았습니다.