c++ - Arch Linux C++读取USB鼠标定位数据

标签 c++ linux usb mouse archlinux

我在 Raspberry 上运行 Arch Linux,需要从 C++ 应用程序获取 4 个 USB 鼠标的定位数据,对于每个单独的鼠标,我需要知道它每次移动时移动了多少像素。我的系统上没有 x 服务器,除非有必要,否则我宁愿保留这种方式,因为这是一个不需要 GUI 的嵌入式项目,我不希望在 x 服务器上浪费空间或开销。

我发现的最有用的东西是这个链接https://www.kernel.org/doc/Documentation/input/input.txt但我真的不知道如何让它达到我的目的。显然我在 Linux 开发方面没有经验,请不要对我太苛刻。

最佳答案

您打开例如/dev/input/mouse0 用于读取(使用 open ),然后 read您链接的文档中定义的结构(位于文档底部),它还说明要包含哪个头文件。

我猜您会收到一个类型为 EV_REL 的鼠标移动事件,代码为 REL_XREL_Y 表示移动方向,值是鼠标移动的单位数。将时间戳与前一个事件的时间戳进行比较,看看它移动的速度有多快。

关于c++ - Arch Linux C++读取USB鼠标定位数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21385815/

相关文章:

linux - 使用 bash 部署 postgresql - 语法错误

c++ - 如何通过 USB 访问 iPhone 文件系统(从 Windows)

delphi - 使用Delphi + Jedi,设备发送USB数据时丢失 "too fast"

c++ - 无法使用 std::map 推断 lambda 的返回类型

c++ - 从指针 vector 中安全删除

linux - Bash 脚本在远程 Linux 计算机上启动进程并使其与启动服务器分离

c++ - 我们可以在 Linux 中使用 C++ 使用原始 ASCII 值生成击键吗?

c++ - 删除 vector 中携带的对象?

c++ - 顺序容器 || C++ Primer 第五版习题 9.22

c - "Segmentation fault"在多线程中优先级为 linux 中的 c