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++Builder Discussion :

lecture port serie tcomport


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 10
    Par défaut lecture port serie tcomport
    Salut amis développeurs,
    Je voudrais vous poser une question a propos du composant tcomport.
    J'arrive a envoyer des trames en hexa mais je n'arrive pas a recevoir de donnees.
    J'ai suivis le tuteuriel sur le site avec la fonction onrxchar mais l evenement ne se declenche pas.
    Est ce qu il faut configurer un parametre du compsant?
    Qu est ce qu il faut mettre dans le parametre eventchar?
    Merci d'avance.

  2. #2
    Membre éprouvé Avatar de cfdev
    Homme Profil pro
    Passionné
    Inscrit en
    Octobre 2004
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Passionné

    Informations forums :
    Inscription : Octobre 2004
    Messages : 220
    Par défaut
    lut,

    verifier si l'event dans les propriétés du Tcomport "evRxChar" est à true

    sinon rien d'autre de particulié

    ++

  3. #3
    Membre émérite
    Avatar de bandit boy
    Profil pro
    Inscrit en
    Février 2006
    Messages
    916
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 916
    Par défaut
    Es tu sûr qu'il n'y a rien sur le Rx du port COM?
    C'est bizarre que tu arrives à écrire mais pas à lire.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 10
    Par défaut pb tcomport
    En faites c'est surtout que je n'arrive pas a savoir ou est ce qu il met la trame que le variateur ou le pc me renvoie.
    J'ai éssayé avec hyperterminal mais ca ne marche que dans un sens je peux envoyé et pas recevoir.
    Est ce que tu as au cas ou bout de programme permettant de recuperer les donnes car je suis pas sur que je les récupère bien.
    Voila ce que j ai mis dans la fonction onrxchar:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    void __fastcall TForm1::ComPort1RxChar(TObject *Sender, int Count)
    {
     
    AnsiString Str;
    ComPort1->ReadStr(Str, Count);
    Memo1->Text = Memo1->Text + Str;
    }

  5. #5
    Membre éprouvé Avatar de cfdev
    Homme Profil pro
    Passionné
    Inscrit en
    Octobre 2004
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Passionné

    Informations forums :
    Inscription : Octobre 2004
    Messages : 220
    Par défaut
    Re,
    deja si ca ne marche pas avec l'hyperTerminal c'est qu'il y a un soucis!!!

    es-tu sur que l'appareil connecté fonctionne correctement??

    ++

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 10
    Par défaut
    oui il fonctionne correctement.
    J'ai éssayé de communiquer avec hyper terminal entre 2 PC l'un avec hyperterminal et l'autre avec mon programme. J'arrivais bien a envoyer quelque chose au pc a partir mais programme mais pas l'inverse.

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 11
    Par défaut Tcomport 3.1 en C++ builder
    Bonjour la communauté Je suis nouveau sur ce forum, je bidouille pas mal en informatique et juste pour apprendre en m'amusant je teste le C++ Builder, j'ai de bonnes connaissances en Delphi 6 et j'ai voulu faire un test en c++ pour comparer les 2 environnements or autant en delphi ça marche en C++ la fonction m'en read n'a pas l'air de fonctionner
    en Delphi mon programme est (dans un timer 100ms)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var bit:byte;
    bit:=strtoint('209');
    comport1.Write(bit,1);
    Pour la réception c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer);
    var temp,press: byte;
    Buff : byte;
    ligne:integer;
    begin
    comport1.Read(buff,1); // valeur reçue du port série
    if Buff >= 254 then exit;
    Temp:=buff; // mesure de la Température dans le buffer
    Statusbar1.Panels[0].text:='T° = '+inttostr(Temp);
    end;
    comment faire en C++
    si quelqu'un peut m'aider à comprendre
    car en c++ malgré beaucoup d'essai ça ne marche pas
    merci d'avance

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 30
    Par défaut erreur Composant TComPort
    Bonjour à tous
    je me bat en se moment avec mon projet en cours
    je dois récuperer les trames envoyés par un PABX sur le Port Série d'un PC pour avoir les infos nécessaires pour concerver une trace de l'appel et le facturer.
    j'utilise donc le port série en configuration 7bits de données, 1 bits de stop, impaire, et sans contrôle de flux.

    j'essai d'implenter le composant de cette manière:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    void __fastcall TForm1::ComPort1RxChar(TObject *Sender, int Count)
    {
    AnsiString Str;
    ComPort1->ReadStr(Str, Count);
    Memo1->Text=Memo1->Text + Str;
    }
    cependant j'ai une erreur quelque part car lors de la compilation, borland C++ 6 me dis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    [C++ Error] Unit1.cpp(20): E2316 '_fastcall TForm1::ComPort1RxChar(TObject *,int)' is not a member of 'TForm1'
    est-ce que quelqu'un pourrai m'en dire plus?
    merci

  9. #9
    Membre émérite
    Avatar de bandit boy
    Profil pro
    Inscrit en
    Février 2006
    Messages
    916
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 916
    Par défaut
    Il semblerait que ta fonction ComPort1RxChar ne soit pas déclaré dans la class TForm1 dans ton .h.
    Comment as tu fais cette fonction?
    As tu généré l'évennement, ou l'as tu écrite toi même?

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 30
    Par défaut
    en effet je l'ai ajouté à la mains et celà ne dois pas être d'éclarer dans le .h

    quelle est la bonne méthode pour l'ajouter?
    merci

  11. #11
    Membre émérite
    Avatar de bandit boy
    Profil pro
    Inscrit en
    Février 2006
    Messages
    916
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 916
    Par défaut
    Dans l'ispecteur d'objet, tu as un onglet "Evennements". Il te suffit de double cliquer dans la colonne de droite, en face de l'évennement choisi.

    La déclaration de la fonction et sont en-tête se fait automatiquement. Il te suffit de coder dans la zone indiquée.

Discussions similaires

  1. Lecture Port Serie - Arduino
    Par Juaaah dans le forum VB.NET
    Réponses: 11
    Dernier message: 04/12/2014, 22h40
  2. Lecture port serie
    Par asp2014 dans le forum C#
    Réponses: 5
    Dernier message: 18/07/2014, 07h41
  3. Lecture port serie
    Par benaye dans le forum Général Java
    Réponses: 1
    Dernier message: 27/05/2011, 17h46
  4. Lecture port serie / Synchro web
    Par Marcus1981 dans le forum Langage
    Réponses: 3
    Dernier message: 28/04/2011, 16h20
  5. Acces et lecture Port serie avec Windows Seven
    Par Naklov dans le forum VB.NET
    Réponses: 7
    Dernier message: 14/12/2009, 19h40

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