Bonjour à tous,
voila quand je fais open("/dev/input/mice", O_RDWR)
je récupere bien les infos avec un read mais de quoi est composé le buffer que je récupere. Ou je peux trouver cette information pour la souris, le clavier, la webcam, rtc0 … j'ai regardé dans /usr/include/linux/input.h mais il n'y a rien. Je cherche en gros la structure associé au périphérique de la souris, puis la structure associé au clavier … est ce que c'est regroupé dans un fichier header ???
merci d'avance pour votre aide
# oui et non
Posté par NeoX . Évalué à 3.
je penses que chaque clavier peut avoir de structure différente (un pilote)
il y a des bases communes ISO xxx, 85 touches, 105touches, + les touches spéciales
c'est ensuite des programmes qui ouvrent et lisent/interpretent les messages qui arrivent sur /dev/input/xxxx pour traduire quoi en faire.
exemple Xorg/Wayland va lire ce qui se passe sur /dev/input/mice pour interpreter le déplacement, et dessiner le nouvel emplacement du curseur.
# Documentation du noyau
Posté par pma . Évalué à 4.
Bonjour,
Le format pour chaque fichier de périphérique dépend du type de celui-ci. Tu trouvera des informations dans la documentation du noyau Linux pour t'aiguiller vers les bonnes en-têtes. Pour les périphériques d'entrée, La documentation pour les périphériques d'entrée te donnera une bonne introduction sur quels fichiers lire (certains sont obsolètes).
Souvent, et c'est une bonne idée de les utiliser pour t'abstraire de l'OS et d'un périphérique précis, tu trouvera aussi une librairies de plus haut niveau, par exemple, libinput dans ton cas.
Pour la webcam, ce sera video4linux.
Enfin, pour certains périphériques, il ne faut pas seulement faire des read() et des write(), mais on peut aussi contrôler le périphérique avec l'appel système ioctl() (voir page de man). Tu devrais trouver des articles d'introduction un peu partout, toujours en fonction du type de périphérique lu.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.