2010-03-26 20 views
1

En fait, j'ai juste une petite question, mais j'ai eu le temps le plus dur de trouver des informations à ce sujet.Comment les informations sur l'axe du joystick sont-elles formatées à partir d'un joystick USB?

Pour l'application pour laquelle je suis programmé, un joystick à trois axes sera connecté via USB à un ordinateur Windows XP, et il est géré par directx. Ces informations seront ensuite envoyées ailleurs à un contrôleur intégré. Je n'ai pas besoin d'en savoir trop sur les subtilités de la façon dont directx le gère, mais je veux savoir, comment sont formatées les données pour les axes? Le plus proche que je puisse dire, la plupart des joysticks ont aujourd'hui 12 bits de résolution, ainsi la sortie de données est-elle un nombre de compliment de 12 bits? Et après cela, est-il représenté comme un entier signé de 16 bits quand il est capturé à partir de directx? Je voudrais savoir comment je vais travailler avec les données du côté de la plate-forme embarquée, comme par exemple comment formater les paquets qui envoient des données vers le côté embarqué, et comment utiliser les informations une fois est sur le côté intégré.

Répondre

2

Le gros problème avec les pilotes est que cela signifie que l'appareil peut vous fournir les données, CEPENDANT il aime. Il n'y a rien qui l'empêche d'envoyer une représentation en chaîne du nombre le long de l'USB, par exemple (bien que j'admette son improbable). Tant que le pilote réinterprète les données dans une fenêtre de formulaire (ou quel que soit le système d'exploitation), il n'y a pas de problème. Il est préférable de sélectionner un sous-ensemble de périphériques et de voir comment les données passent à l'état brut et d'écrire votre propre abstraction entre l'appareil et votre système. Si c'est un appareil inconnu, vous pouvez "deviner" dans quel format les données arrivent et essayer de le faire fonctionner mais je doute que vous allez gérer un système de capture tout comme un bugger quelque part va faire des choses dans un impair (c'est-à-dire dans leur propre manière).