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

Langage Delphi Discussion :

[Débutant] Réception sur port série


Sujet :

Langage Delphi

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 26
    Par défaut [Débutant] Réception sur port série
    Bonjours à tous !

    Alors voila, je travail sur une communication série entre un microcontroleur 68HC11 et un PC.
    Lorsque j'utilise le 68hc11 avec Hyperterminal tout va bien en emission et reception.
    Lorceque j'utilise l'application avec Hyperterminal tout va bien en emission (depuis appli)

    Pc branché sur HC11
    Mon probleme se pose en reception je met un point d'arret à l'endroit ou le HC11 a du envoyer une valeur vers le pc mais lorce que je point sur la variable "recu" ca ne correspond à rien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
              ComPort1.Open; // open serial port
              InitAsync(Operation1);// mode asynchrone
              ComPort1.ClearBuffer(true,true);
              ComPort1.WriteStrAsync('p', Operation1); //Demande pret ?
              ComPort1.WaitForAsync(Operation1);
              ComPort1.ReadStrAsync(recu,3, Operation1);
              ComPort1.WaitForAsync(Operation1);
              Application.MessageBox('recu','test');
    point d'arret sur derniere ligne

    Z'avez une idée :

  2. #2
    Membre chevronné
    Profil pro
    xxxxxxxxxxx
    Inscrit en
    Juin 2004
    Messages
    308
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : xxxxxxxxxxx

    Informations forums :
    Inscription : Juin 2004
    Messages : 308
    Par défaut
    Je suis pas expert en la matière, et j'ignore ce que tu utilises pour gérer ta liaison série, mais peut-être ce set de composants te sera utile (il est gratuit, en plus il est bien documenté)
    http://sourceforge.net/projects/tpapro/
    Un excellent travail de feue l'excellente société TurboPower (snif)

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 26
    Par défaut
    Citation Envoyé par cmen76
    Je suis pas expert en la matière, et j'ignore ce que tu utilises pour gérer ta liaison série, mais peut-être ce set de composants te sera utile (il est gratuit, en plus il est bien documenté)
    http://sourceforge.net/projects/tpapro/
    Un excellent travail de feue l'excellente société TurboPower (snif)
    Merci pour ton aide ca me fait penser que j'ai oublié de préciser que j'utilise le fameux TcomPort derniere version.

    Le probleme reste posé. Le composant fonctionne c'est le programmeur qui déconne

  4. #4
    Membre chevronné
    Avatar de lil_jam63
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    447
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 447
    Par défaut Re: [Débutant] Reception sur port série
    Citation Envoyé par Tophe59
    Pc branché sur HC11
    Mon probleme se pose en reception je met un point d'arret à l'endroit ou le HC11 a du envoyer une valeur vers le pc mais lorce que je point sur la variable "recu" ca ne correspond à rien
    Et comment tu verifie le contenu de ta variable 'recu' ??

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 26
    Par défaut
    Je met un point d'arret sur la derniere ligne et je pointe sur la variable 3eme ligne en partant du bas

  6. #6
    Membre chevronné
    Avatar de lil_jam63
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    447
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 447
    Par défaut
    et ta variable c'est quoi, un tableau de byte ?

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 26
    Par défaut
    De quelle variable parles tu ?

  8. #8
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Par défaut
    Salut

    Je pense qu'il parle de "recu"...
    Pedro
    Aucune réponse aux sollicitations techniques par MP

    Faut pas attendre d'en avoir besoin pour s'en servir... (Lucien Stéphane)

    Les pages Source C'est bon. Mangez-en!
    Le défi Delphi
    Règles du forum - FAQ Delphi - Pensez au chtit
    Aéroclub Bastia Saint-Exupéry

  9. #9
    Membre chevronné
    Avatar de lil_jam63
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    447
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 447
    Par défaut
    Aucune, c'est une erreur de ma part, j'ai jamais utilisé ces fonctions et je pensais que tu réceptionnais dans un buffer, désolé. Par contre, je pige pas trop ce que tu veux faire.

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 26
    Par défaut
    Citation Envoyé par Pedro204
    Salut

    Je pense qu'il parle de "recu"...
    oups scusez moi recu est de type "String Ficelle"

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 26
    Par défaut
    je veux juste faire un échange de données entre PC et carte microcontroleur par HC11. Lorsque le pc envoie 'p' le micro doit répondre avec 'o'. Le programme du micro fonctionne bien avec hyperterm

  12. #12
    Membre chevronné
    Avatar de lil_jam63
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    447
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 447
    Par défaut
    ok, alors excuse moi mais dans le code que tu presente, si je comprend bien, tu envoie 'p' au micro et tu essayes de lire la chaine 'recu', c'est bien ça?

    Peut tu expliquer la fonction readStrAsync, j'ai rien trouvé dessus, a quoi sert le deuxième argument (3)?

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 45
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ComPort1.ReadStrAsync(recu,3, Operation1);
    ici recu est une variable -> OK

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.MessageBox('recu','test');
    ici 'recu' est une chaine de caracteres : Est ce normal (genre messagebox fait lui meme le mapping) ? ou bien la boulette est ici ?

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 26
    Par défaut
    c'est la reception d'une chaine en mode asynchrone 3 est le nombre d'octet a recevoir il me semble

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.MessageBox('recu','test');
    cette ligne ne sert à rien pour le moment je m'en sert juste pour placer mon point d'arret

    Merci de votre aide précieuse

  15. #15
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 26
    Par défaut
    je comprends pas

  16. #16
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 26
    Par défaut
    J'ai un peu avancé. Lorsque j'utilise la procédure OnRxEvent j'obtien bien la reception
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer);
    begin
              ComPort1.ReadStrAsync(Rx,1, Operation1);
    end;
    Mon probleme maintenant est qu'il faut attendre cet évenement avec le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ComPort1.WaitForEvent(Reception, nil, WaitInfinite);
    J'ai un message à la compilation

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [Erreur] fichier.pas(369): Les types des paramètres VAR originaux et formels doivent être identiques

    Une idée ?

  17. #17
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 26
    Par défaut

  18. #18
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 26
    Par défaut

  19. #19
    Membre chevronné
    Profil pro
    xxxxxxxxxxx
    Inscrit en
    Juin 2004
    Messages
    308
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : xxxxxxxxxxx

    Informations forums :
    Inscription : Juin 2004
    Messages : 308
    Par défaut
    un message à la compilation
    Les types des paramètres VAR originaux et formels doivent être identiques
    Le message est explicite : les paramètres passés doivent être des variables déclarées dans le type où elles sont attendues. 8)

  20. #20
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 26
    Par défaut
    Merci de m'aider.

    Qu'est ce que cette histoire de parametre "originaux" et "formel" ?

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 3 123 DernièreDernière

Discussions similaires

  1. Débutant: aide sur port série
    Par RossBay dans le forum VB.NET
    Réponses: 6
    Dernier message: 11/06/2010, 15h31
  2. Réception de caractère sur port série : problème
    Par dableuf dans le forum Delphi
    Réponses: 2
    Dernier message: 06/12/2006, 09h16
  3. [VB6]Réception de données sur port série
    Par lindecker dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 08/03/2006, 06h48
  4. Recevoir "NULL" sur port série
    Par WinY57 dans le forum VB 6 et antérieur
    Réponses: 18
    Dernier message: 04/03/2005, 11h37
  5. Etat de CTS sur port série
    Par Juste_Une_IlluZion dans le forum C++Builder
    Réponses: 9
    Dernier message: 12/09/2004, 10h46

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