HID read()命令

时间:2009-07-08 12:42:43

标签: linux hid

是否有人知道LINUX中HID事件的非阻塞 reed()命令的过程

目前我正在使用

            read(fd, ev, sizeof(struct hiddev_event) * EV_NUM); 

但是当我的HID指针设备没有朝向传感器栏时,它会进入 BLOCKING 阶段

亲切的问候,

Madni

2 个答案:

答案 0 :(得分:1)

我认为需要更多信息来回答这个问题。我看过的大多数USB HID API都在Open()方法中放置了一个异步标志。一般情况下,您不打算一次进行异步读取,然后使用同步读取进行异步读取。所有read()调用都应使用相同的技术。

打开设备时是否使用O_NONBLOCK标志?

答案 1 :(得分:0)

谢谢

它解决了问题

以非阻止模式打开HID设备

char *dev1="/dev/usb/hiddev0";

if ((fd = open(dev1, O_NONBLOCK)) < 0) {

  perror("evdev open");

  exit(1);

}

此致