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

C++/CLI Discussion :

Evénement DataReceived jamais déclenché


Sujet :

C++/CLI

  1. #1
    Nouveau membre du Club

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 2
    Points : 28
    Points
    28
    Par défaut Evénement DataReceived jamais déclenché
    Bonjour,

    J'ai cherché sur le forum et n'ait pas trouvé de réponses.
    J'ai une aplli C++/CLI avec un composant SerialPort.

    Je n'arrive aps à recevoir les données sur le port COM.
    L'évènement DataReceived du composant n'est jamais déclenché.
    L'appareil relié au port COM émet en continue.

    J'ai testé avec l'hyperterminal et avec un programme en DELPHI. Les données arrivent bien sur le port COM.

    Avez vous des idées, svp ?

    Merci

  2. #2
    Inactif  

    Homme Profil pro
    Ingénieur test de performance
    Inscrit en
    Décembre 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur test de performance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 986
    Points : 2 605
    Points
    2 605
    Par défaut
    Bonjour.

    Si tu nous montres le code d'initialisation du port série, on pourra peut-être voir si quelque chose ne va pas.

    Mais comme ça, il n'y a aucune raison que cela ne fonctionne pas.

  3. #3
    Nouveau membre du Club

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 2
    Points : 28
    Points
    28
    Par défaut
    Bonjour,

    Finalement j'ai résolu mon problème.
    Je vous le décris plus en détails avant de vous donner la solution.

    C'est une simple forme avec un bouton Init pour initialiser le port série et un autre bouton pour envoyer une commande.
    J'ai mis un message sur l'évènement DataReceived.
    Voici le code très simple :

    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
     
    private: System::Void buttonInit_Click(System::Object^  sender, System::EventArgs^  e) {
       serialPort1->PortName = "COM3";
       serialPort1->BaudRate = 38400;
       serialPort1->Parity = Parity::None;
       serialPort1->StopBits = StopBits::One;
       serialPort1->DataBits = 8;
       serialPort1->Handshake = Handshake::None;
       serialPort1->Open();
    }
     
    private: System::Void buttonSend_Click(System::Object^  sender, System::EventArgs^  e) {
      serialPort1->Write(textBox1->Text+"\r");
    }
     
    private: System::Void serialPort1_DataReceived_1(System::Object^  sender, System::IO::Ports::SerialDataReceivedEventArgs^  e) {
      SerialPort^ sp = (SerialPort^)sender;
      String^ indata = sp->ReadExisting();
      MessageBox::Show("Data received :"+indata);
    }
    Quand j'ouvre le port, je ne reçois jamais de donnée.
    Je peux programmer l'appareil pour qu'il envoie en continue des données sur le port série. Même dans ce cas là, je ne reçois rien.

    La solution a été de rajouter ces deux lignes dans mon initialisation de port COM :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
      serialPort1->DtrEnable = false; // valeur par défaut
      serialPort1->RtsEnable = true; // ce qui permet le déclenchement de l'évènement Datareceived dans mon cas pour mon appareil.
    J'espère que ça pourra être utile à quelqu'un.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Evènement ne se déclenche pas
    Par gnusti dans le forum VB.NET
    Réponses: 10
    Dernier message: 22/08/2012, 14h20
  2. FormKeyDown jamais déclenché ?
    Par [ZiP] dans le forum Débuter
    Réponses: 4
    Dernier message: 22/08/2011, 17h52
  3. Réponses: 2
    Dernier message: 13/06/2010, 13h54
  4. Evénement Sur erreur ne se déclenche pas
    Par Domi2 dans le forum VBA Access
    Réponses: 6
    Dernier message: 16/07/2008, 13h00
  5. Evènement qui ne se déclenche pas
    Par max.lille dans le forum Langage
    Réponses: 8
    Dernier message: 09/05/2006, 15h46

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