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

Java Discussion :

Rxtx port série bloqué sous linux


Sujet :

Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2010
    Messages : 14
    Points : 14
    Points
    14
    Par défaut Rxtx port série bloqué sous linux
    Bonjour,

    Ne sachant pas dans quel section classé cet question, je l'ai mise ici

    Je développe actuellement un automate sous puppy-linux. Le programme est écrit en java et doit accéder au port Série de l'automate pour récupérer des données. Pour cela, j'utilise les librairie RXTX.

    L'application accédé et récupère parfaitement les données d'un boitier qui retourne en permanence des données provenant de sondes. Il arrive cependant après une coupure de courant ou un arrêt manuel (le boitier sauf en cas de coupure de courant est en permance alimenté), qu'au redémarrage l'automate n'arrive pas à accéder au port et bloque l'application.

    L'erreur provient de cet partie de code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CommPortIdentifier portIdentifier = CommPortIdentifier.getPortIdentifier("/dev/ttyS2");
    Cela permet au programme d'identifier les ports et de vérifier si ils sont libre.

    L’exception me retourne NULL comme information...

    J'ai déjà essayer d'attendre plusieurs secondes entre le lancement de l'application et le démarrage,de forcer la reconnexion au port si celui-ci échoue en mettant le code dans une boucle. Mais rien n'y fait.

    Pour résoudre ce problème, je dois me connecter à l'automate et relancer l'application manuellement. Ce qui n'est pas une solution dans le cadre d'une production.

    Si quelqu'un connait une solution, cela m'aiderai beaucoup.

    Merci d'avance.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2010
    Messages : 394
    Points : 1 212
    Points
    1 212
    Par défaut
    Bonjour,

    Une idée comme ça : il est possible que le port ne soit pas libéré la première fois (avant la coupure de courant par exemple), et que donc, lorsqu'il essaye de reconnecter dessus, cela ne fonctionne pas car le port est déjà utilisé. Il faudrait s'assurer que le port est libre au départ (et si ce n'est pas le cas, forcer sa libération).

    Mako.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2010
    Messages : 14
    Points : 14
    Points
    14
    Par défaut
    Salut Mako,

    Aurais-tu une idée d'une librairie que je peux utiliser pour faire ça ?? Aussi bien en java qu'en C, j'utilise JNI également.

    Merci

Discussions similaires

  1. RXTX, port série et PortInUseException
    Par Sylvain__A_ dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 08/02/2010, 16h39
  2. Création de ports ttyS virtuel sous linux
    Par L1M8E9 dans le forum Matériel
    Réponses: 0
    Dernier message: 13/05/2009, 11h05
  3. thread qui se bloque sous linux
    Par killer Am dans le forum Linux
    Réponses: 1
    Dernier message: 25/08/2008, 22h36
  4. [D6] Port com bloqué sous XP
    Par dridri86 dans le forum API, COM et SDKs
    Réponses: 1
    Dernier message: 23/11/2007, 09h52
  5. [Kylix] port // et kylix sous linux
    Par raggadoll dans le forum EDI
    Réponses: 8
    Dernier message: 19/01/2004, 10h49

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