Ben déjà, vérifie que tu as la libusb sur ton ordi:
le fichier "/usr/include/usb.h" doit exister.
sinon, il te faut installer le package libusb-devel
(ou libusb-dev selon la distribution)
Ensuite, bah il faut commencer le programme...
Normallement tu dois connaitre le deviceID et le vendorID du periphérique, donc le détecter ca dois ressembler à ca:
int main(void)
{
struct usb_bus *busses;
usb_init();
usb_find_busses();
usb_find_devices();
busses = usb_get_busses();
struct usb_bus *bus;
int c, i, a;
/* boucle sur les bus USB */
for (bus = busses; bus; bus = bus->next) {
struct usb_device *dev;
/* Par bus, boucle sur les devices */
for (dev = bus->devices; dev; dev = dev->next) {
if ((dev->descriptor.idVendor == MYVENDOR) &&
(dev->descriptor.idProduct == MYPRODUCT) ) {
/* boucle sur les configurations, si plus de 1 seule */
{...}
}
}
}
}
Ensuite, ben il faut l'ouvrir, faire un claim, et chercher dans la doc du périphérique USB comment trouver les "paramètres constructeurs" dont tu parles.
Voila !
Regarde aussi si, a tout hasard, ton périphérique n'est pas compatible avec un protocole "standard" USB dont linux a les drivers, style série 'ACM', ou 'HID'.
(Rigole pas ca m'est arrivé....)
A+
# Programme libusb
Posté par C. OB (site web personnel) . En réponse au message Utilisation de LibUsb. Évalué à 4.
le fichier "/usr/include/usb.h" doit exister.
sinon, il te faut installer le package libusb-devel
(ou libusb-dev selon la distribution)
Une fois cela fait, regarde la documentation ici:
http://libusb.sourceforge.net/doc/
En particulier, en bas il y a le chapitre "exemple".
Le fichier usb.h est aussi une bonne référence.
Un autre article: http://www.linuxjournal.com/node/7466/print
Encore un: http://www.cs.indiana.edu/~bpisupat/work/usb.html
Ensuite, bah il faut commencer le programme...
Normallement tu dois connaitre le deviceID et le vendorID du periphérique, donc le détecter ca dois ressembler à ca:
int main(void)
{
struct usb_bus *busses;
usb_init();
usb_find_busses();
usb_find_devices();
busses = usb_get_busses();
struct usb_bus *bus;
int c, i, a;
/* boucle sur les bus USB */
for (bus = busses; bus; bus = bus->next) {
struct usb_device *dev;
/* Par bus, boucle sur les devices */
for (dev = bus->devices; dev; dev = dev->next) {
if ((dev->descriptor.idVendor == MYVENDOR) &&
(dev->descriptor.idProduct == MYPRODUCT) ) {
/* boucle sur les configurations, si plus de 1 seule */
{...}
}
}
}
}
Ensuite, ben il faut l'ouvrir, faire un claim, et chercher dans la doc du périphérique USB comment trouver les "paramètres constructeurs" dont tu parles.
Voila !
Regarde aussi si, a tout hasard, ton périphérique n'est pas compatible avec un protocole "standard" USB dont linux a les drivers, style série 'ACM', ou 'HID'.
(Rigole pas ca m'est arrivé....)
A+