IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API standards et tierces Java Discussion :

Enumération des différents ports d'un PC en Java avec rxtx sous Ubuntu 14.04


Sujet :

API standards et tierces Java

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Enumération des différents ports d'un PC en Java avec rxtx sous Ubuntu 14.04
    Salut à toute la communauté,
    Je travaille sur un projet consistant à faire communiquer le port série/parallèle d'un PC (RS 232) avec un terminal mobile. Mais bon, je suis encore loin d'en être au résultat.
    Après avoir installé rxtx sur mon OS. J'ai compilé un exemple pour l'énumération des ports séries dans mon IDE Netbeans 8.0.
    Voici le résultat de ma console:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    =========================================
    Native lib Version = RXTX-2.1-7
    Java lib Version   = RXTX-2.1-7
    false
    Experimental:  JNI_OnLoad called.
    BUILD SUCCESSFUL (total time: 1 second)

    Mais le code inclut des instructions d'affichage des ports trouvés sur mon PC. et logiquement je m'attends à ce que ça le fasse, mais non.
    Voici un code exemple que j'ai copié sur un pdf et dont le résultat d'exécution est celui que vous voyez ci-dessus.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    import gnu.io.CommPortIdentifier;
    import gnu.io.NoSuchPortException;
    import java.util.Enumeration;
     
    /*
     * To change this license header, choose License Headers in Project Properties.
     * To change this template file, choose Tools | Templates
     * and open the template in the editor.
     */
     
    public class PortsEnumerator {
        public static void main(String[] args) throws NoSuchPortException
    {
     
        Enumeration ports = CommPortIdentifier.getPortIdentifiers();
      //  CommPortIdentifier portId =
     // CommPortIdentifier.getPortIdentifier("/dev/ttyUSB0");
      //   System.out.println(portId.getName());
        System.out.println(ports.hasMoreElements());
     
         int i = 1;
        while (ports.hasMoreElements())
        {
            CommPortIdentifier port = (CommPortIdentifier) ports.nextElement();
            System.out.println("Port n°"+i++);
            System.out.println("\tNom\t:\t"+port.getName());
            String type = null;
            if (port.getPortType() == CommPortIdentifier.PORT_SERIAL) type = "Serie";
            else type = "Parallèle";
            System.out.println("\tType\t:\t"+type);
            String etat = null;
            if (port.isCurrentlyOwned()) etat = "Possédé par "+port.getCurrentOwner();
            else etat = "Libre";
            System.out.println("\tEtat\t:\t"+etat+"\n");
        }
    }
    }
    Quel est le problème???Merci d'avance pour vos contributions

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 552
    Points : 19 386
    Points
    19 386
    Par défaut
    Bonjour,

    Citation Envoyé par jae17
    Quel est le problème???
    justement, quel est le problème ?
    que devrait-il être affiché ?

    tu parles d'un pdf, peut-on avoir son adresse, ça explicitera peut-être certains aspects ?
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2
    Points : 3
    Points
    3
    Par défaut explication du problème
    En principe le code est censé m'afficher les différents ports présents sur ma machine.

    L'instruction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Enumeration ports = CommPortIdentifier.getPortIdentifiers();
    devrait me retourner les identifiants des différents ports présents sur ma machine. Mais il n'en est rien car l'instruction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     System.out.println(ports.hasMoreElements());
    devrait afficher "true" si l'enumération "ports" contient quelque chose.
    Mais il n'en est rien(d'où le false affiché en console). Du coup la boucle while logiquement n'est pas exploitée.
    J'aimerais savoir si je fais mal quelque chose en fait.
    merci encore pour vos réactions

  4. #4
    Membre à l'essai
    Homme Profil pro
    Analyste fonctionnel
    Inscrit en
    Avril 2004
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste fonctionnel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 11
    Points : 10
    Points
    10
    Par défaut
    Salut jae17,

    J'ai actuellement le même soucis que toi. Je devrais avoir ma liste de port mais rien n'est trouvé.
    Or j'ai une appli qui utilise un port série pour un lecteur de carte magnétique et celui-ci fonctionne très bien.

    Est-ce que tu as pu trouver une solution au problème ?

    Merci.
    Suivant la forme de la question, on a comme resultat soit une reponse (pour faignants), soit une explication (pour les curieux), soit les deux (pour les intelligents) ou rien (pour les idiots)...

Discussions similaires

  1. Réponses: 2
    Dernier message: 16/07/2014, 11h09
  2. Utilisation des ports COM en Java avec RXTX
    Par philippe57460 dans le forum Général Java
    Réponses: 13
    Dernier message: 02/02/2010, 12h18
  3. Réponses: 3
    Dernier message: 14/04/2009, 10h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo