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

Windows Forms Discussion :

Utilisation du port série.


Sujet :

Windows Forms

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2018
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Utilisation du port série.
    Bonjour.
    Je dois actuellement réaliser un projet où plusieurs fenêtres doivent communiquer en même temps avec un moniteur en utilisant seulement un seul port série. Chaque fenêtre envoie une requête et attend ensuite une réponse de façon périodique. Le problème et qu'une fenêtre ne doit pas pouvoir utiliser le port série si une autre l'utilise déjà et que je ne vois pas comment faire cela.
    Auriez vous une solution à me proposer ?
    Merci d'avance pour votre temps.

  2. #2
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2011
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 79
    Points : 118
    Points
    118
    Par défaut
    Bjr,
    Est-ce que chaque fenêtre envoi une requête et attend la réponse, le tout se façon périodique ou chaque fenêtre envoie 1 seule requête et les réponses arrivent de façon périodique ?
    @+

  3. #3
    Membre confirmé Avatar de thierry007
    Homme Profil pro
    Autodidacte
    Inscrit en
    Août 2006
    Messages
    876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2006
    Messages : 876
    Points : 457
    Points
    457
    Par défaut
    Bonsoir torce

    Sur un port série, de toute façon se sera 1 a la fois, il faut alors si tu envoies une requête sur le port série, attendre la réponse.
    La réponse ne peut venir que si le port est ouvert en écoute. Ce qui théoriquement est assez rapide. Tu peux donc fermer le port lorsque la réponse est arrivée. En suite tu teste si le port est ouvert ou pas avec la fenêtre suivant.

    Cela me semble logique , mais peut être y a t'il d'autre réponse qui t'aiderons

  4. #4
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2011
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 79
    Points : 118
    Points
    118
    Par défaut
    Bonjour,

    Je vois là une application des mutex !

    L'idée de départ : coder une classe de communication qui s'occupe du port série (ouverture, boucle de message, fermeture...)
    avec une méthode public pour la requête (prévoir l'utilisation d'un thread pour l'aspect demande/réception, ou gérer les events; j'ai un trou de mémoire là !)

    Lors d'une requête, verrouiller un mutex, envoyer la demande, attendre la réponse (prévoir une condition de sortie !) et surtout, libérer le mutex pour les suivants !
    De cette façon, si une fenêtre tente une requête pendant une communication, le mutex l'en empêchera. Il y a moyen de mettre un délai au test de l'état du mutex.

    https://msdn.microsoft.com/fr-fr/lib...v=vs.110).aspx

    La première fenêtre crée une instance de la classe, lance le thread de communication.
    Il suffit de passer l'instance de cette classe aux autres fenêtres pour avoir accès à la méthode public.

    C'est assez grossier comme description mais c'est pour un point de départ.

    Phil

Discussions similaires

  1. Comment utiliser le port série RS232
    Par Minos2 dans le forum Apple
    Réponses: 7
    Dernier message: 28/01/2010, 09h57
  2. Comment utiliser le port série avec WxWidget
    Par LOMA.fr dans le forum wxWidgets
    Réponses: 1
    Dernier message: 28/10/2007, 16h45
  3. Utiliser les ports série avec Wine sous linux
    Par JP.NUAGE dans le forum Matériel
    Réponses: 1
    Dernier message: 21/10/2007, 13h12
  4. [Lazarus] Utiliser le port série
    Par katmai dans le forum Lazarus
    Réponses: 1
    Dernier message: 11/08/2007, 12h00
  5. [C] Utilisation du Port série sous Mac OS X
    Par guyzmot dans le forum Apple
    Réponses: 3
    Dernier message: 14/04/2007, 11h20

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