9
votes

Obtenir des informations en direct de / dev / entrées

Je ne sais pas si c'est le bon endroit pour cette question. Je tente d'obtenir les valeurs de position de l'axe à partir d'un joystick / dev / entrée / js0 sur mon système. Si j'exécute jstest / dev / entrée / js0 Cela me donnera des commentaires en direct sur tous les boutons et les positions de l'axe.

J'essaie de nourrir ces informations dans mon programme C pour contrôler Servos. Y a-t-il une fonction pour faire cela? Je n'ai pas beaucoup travaillé avec les périphériques d'entrée dans la programmation, donc c'est tout nouveau pour moi.


0 commentaires

3 Réponses :


3
votes

Cette page: http: //scaryresoner.wordpress. COM / 2008/02/22 / Programmation-Joysticks-with-linux / a une belle écriture sur la manière de lire les informations de / dev / entrées / js0

Le format des événements que vous avez lus depuis le fichier sont documentés ici: https://www.kernel.org/doc/documentation/input /Input.txt . C'est une structure simple contenant un horodatage, le type d'événement et l'identifiant et la valeur: xxx


0 commentaires

4
votes

Vous pouvez exécuter ce Code Python pour lire des événements.
Vous pouvez également utiliser un module de haut niveau python-evdev .

(73324490, 8454144, 55242, 1118, 25231360)
(73324490, 42008576, 55242, 1118, 58785792)
(73324490, 75563008, 55242, 1118, 92340224)
(73324490, 109117440, 55242, 1118, 125894656)
(73324490, 142671872, 55242, 1118, 159449088)
(73324490, 176226304, 55242, 1118, 193003520)
(73324490, 209780736, 55242, 1118, 226557952)
(73324490, 243335168, 55242, 1118, 8519680)
(73324490, 25296896, 55242, 1118, 42074112)
(73324490, 58884097, 55242, 1118, 75661313)
(73324490, 92405760, 55242, 1118, 109215745)
(73324490, 125992961, 55242, 1118, 142737408)
(73324490, 159514624, 55242, 1118, 176324609)
(73327790, 84041474, 58542, 1118, 84049919)
(73328030, 84044852, 58782, 1118, 84017152)
(73331790, 33749013, 62542, 1118, 33742256)
(73331790, 33736851, 62562, 1118, 33731108)
(73331830, 33723339, 62602, 1118, 33718273)
(73332090, 33723339, 62862, 1118, 33685504)


0 commentaires

3
votes

bâtiment sur le poteau de kev

du fichier Linux / joystick.h: p> xxx pré>

donc le Le format Python doit être:" LHBB " p> xxx pré>

échantillon de sortie de xbox Un S Contrôleur: P>

// type=button, number=button number
//msec, value, type, number
(2114530, 1, 1, 0) // A pressed
(2114670, 0, 1, 0) // A released
(2116490, 1, 1, 1) // B pressed
(2116620, 0, 1, 1) // B released
(2117370, 1, 1, 2) // X pressed
(2117520, 0, 1, 2) // X released
(2118220, 1, 1, 3) // Y pressed
(2118360, 0, 1, 3) // Y released


0 commentaires