okr*_*ram 0 python linux raspbian uinput
我对树莓派和Linux很陌生。我正在尝试使用以下代码在Raspbian(r Pi 3 B)上运行python库uinput的基本示例:
import uinput
device = uinput.Device([
uinput.BTN_LEFT,
uinput.BTN_RIGHT,
uinput.REL_X,
uinput.REL_Y,
])
for i in range(20):
device.emit(uinput.REL_X, 5)
device.emit(uinput.REL_Y, 5)
Run Code Online (Sandbox Code Playgroud)
我得到错误:
追溯(最近一次通话):
文件“/home/pi/Desktop/t1.py”,7号线,在uinput.REL_Y,文件“/home/pi/.local/lib/python3.5/site-packages/uinput/ 初始化的.py”,行178,初始化 自己。uinput_fd = fd或fdopen()文件“ /home/pi/.local/lib/python3.5/site-packages/uinput/__init .py”,第84行,在fdopen中返回_libsuinput.suinput_open()文件“ / home / pi / .local / lib / python3.5 / site-packages / uinput / init .py“,第70行,在_open_error_handler中引发OSError(code,msg)
OSError:[Errno 19]无法打开uinput设备:否这样的设备怎么了?我需要更改什么,在哪里更改?
uinput驱动程序模块是否已加载?
尝试:
$ lsmod | grep uinput
Run Code Online (Sandbox Code Playgroud)
可能什么都不显示,这意味着未加载驱动程序。尝试加载它:
$ modprobe uinput
Run Code Online (Sandbox Code Playgroud)
然后尝试您的Python代码。如果您不是以root权限运行代码,则可能会PermissionError由于/dev/uinput设备文件的访问权限而收到一个。