LINUXのHIDイベントに対するNON-BLOCKINGreed ()コマンドの手順を知っている人はいますか
現在使用しています
read(fd, ev, sizeof(struct hiddev_event) * EV_NUM);
しかし、HIDポインティングデバイスがセンサーバーの方を向いていない場合は、BLOCKINGステージに移行します。
敬具、
マドニ
この質問に答えるには、より多くの情報が必要だと思います。私が調べた USB HID API のほとんどは、Open() メソッドに非同期フラグを設定しています。一般に、非同期読み取りを 1 回実行してから同期読み取りを実行することは望ましくありません。すべての read() 呼び出しで同じ手法を使用する必要があります。
デバイスを開くときに O_NONBLOCK フラグを使用していますか?
ありがとうございました
問題を解決しました
非ブロッキング モードで HID デバイスを開きます
char *dev1="/dev/usb/hiddev0";
if ((fd = open(dev1, O_NONBLOCK)) < 0) {
perror("evdev open");
exit(1);
}
よろしく、