Comment utiliser libusb de manière optimale pour parler aux périphériques USB connectés?
Comment puis-je utiliser correctement libusb de parler à des périphériques USB connectés?
Plus précisément, comment puis-je transférer des données vers des périphériques USB, recevoir des informations à partir des périphériques, trouver le nom de l'appareil connecté, si ils ont de stockage, etc.
Plus précisément, je vais être en cours d'exécution sur un Mac OS X de la machine, donc je sais que je ne peut pas utiliser Windows fichiers d'en-tête.
Si il y a une bonne explication sur la libusb et les périphériques USB, ça serait aussi utile.
source d'informationauteur user473973
Vous devez vous connecter pour publier un commentaire.
J'ai trouvé ici un texte howto sur l'utilisation de libusb-1.0: http://www.dreamincode.net/forums/topic/148707-introduction-to-using-libusb-10/
Ici est un post sur une question similaire qui pourrait être utile pour vous. J'ai inclure beaucoup de liens.
Mais peut-être que vous préférez le voir ici. Donc, dans ce cas, ici, il va!
Libusb vous permet d'énumérer les périphériques et sélectionnez celui que vous voulez sur la base d'un id Fournisseur/Produit (V/P Id). Si vous ne le connaissez pas et ne peut pas le trouver en ligne avec la description des produits, alors vous pouvez facilement le trouver.
Si elle n'est pas en ligne, vous aurez besoin d'utiliser une application similaire à la commande lsusb sur Linux. (Je ne crois pas qu'il est sur Mac.) Lorsque vous exécutez la commande lsusb il répertorie les périphériques connectés et leur V/P Id. Vous pouvez facilement rechercher votre appareil en le débranchant, l'exécution de la commande lsusb, et de rebrancher le périphérique et la comparaison. C'est un morceau de gâteau. N'importe quel port usb de la liste app sur Mac sera, nous l'espérons afficher le V/P ID comme lsusb ne.
Puis une fois que vous avez cette V/P ID vous allez utiliser libusb (si vous utilisez 0.1) pour énumérer tous les appareils et trouver l'appareil qui correspond à cet id. (J'ai en charge l'utilisation de libusbx qui arrive à avoir un seul à trouver la fonction dispositif basé sur V/P id - en fait, libusbx est un ensemble beaucoup plus concis tout autour.)
Après la sélection de votre appareil vous permettra d'envoyer un paquet à l'aide de deux fonctions ou de Rapports de Sortie. C'est la partie la plus compliquée parce que le paquet que vous envoyez dépend de chaque appareil, je crois. Il est de 8 octets de données et un seul de ce qui est un caractère unique que vous souhaitez envoyer vers le périphérique usb. (Si vous voulez envoyer plus de 8 caractères, vous devez parcourir un tableau de caractères et de nous faire part d'une ou de sortie pour chaque caractère).
Comme un exemple hésitez pas à faire référence à un assez spécifique terminal exemple que j'ai écrit pour le contrôle de deux LEDS. Si c'est utile, c'est parfait! Il contient un libusbx et libusb-0.1 exemple.
J'espère que cela aide!
Le processus que vous pouvez suivre est la suivante:
lsusb