• # Et ?

    Posté par . En réponse au message le port usb?. Évalué à 3.

    Si tu veux que l'on t'aide, ce serait sympa de :

    - Faire attention à l'orthographe;
    - Nous indiquer quel est ton problème en particulier.

    Tu veux communiquer avec quoi sur le bus USB ? Le hub ? Un des périphériques connectés ? Sniffer le réseau ?

    A mon avis c'est surtout cela qu'il faut éclaircir.

    char port[]={"/dev/ttyUSB0"};


    C'est bien le nom de ton port série, mais il n'y aucune raison pour qu'il fonctionne autrement qu'un ttyS0 normal parce qu'il est sur le bus USB, c'est au noyau de gérer cela. A ton niveau, c'est censé être totalement transparent (en dessous, par contre, cela se complique, évidement).

    Par contre, vire les accolades, sinon tu vas définir un tableau de chaînes et pas une chaîne. Ton pointeur risque d'être invalide.

    i=ioperm(port,1,1);


    Non ! Tu mélanges tout. Cette primitive sert à donner le droit à un processus de manipuler directement les adresses de contrôle des périphériques ! Ne pas toucher. D'accord, il s'agit bien de donner l'accès à des « ports » d'entrée/sortie sur trouvant sur un bus particulier (au contraire de certains microprocesseurs qui utilisent le bus d'adresse), mais cela n'a strictement rien à voir avec un périphérique de port série branché sur le bus USB. D'ailleurs, si tu avais lu la page de manuel, tu aurais vu que cet appel attend un entier en premiere argument, et pas un pointeur sur une chaîne.

    Poubelle.