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

[port Serie] communication entre deux ordi par le port serie [Tutoriel]


Sujet :

C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    BuG
    BuG est d�connect�
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    44
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 44
    Par d�faut [port Serie] communication entre deux ordi par le port serie
    Bonjour tt le monde !!

    Voila:
    Je dois r�aliser une petite appli pour la communication entre 2 ordi par le port serie [ cable null modem crois� ]. J'ai vu dans un poste qu'il y avait les fonctions _inp() et outp() mais j'ai cru comprendre qu'elle n'�tais pas portable et uniquement dans Visual C++ .

    Quelle sont les fonctions a utiliser pour envoyer une Lettre, par exemple, a l'autre ordi et sinon pour la recupere sur cette autre ordi ?

    [ Sans passer par les composant ComPORT ( ou qqc com ca) de c++ builder d�crit par PETIT,que je remercie, dans ses tuts ]

    Existe il une librairie pour faire ce genre de chose ?
    Quelle sont les moyens pour y arriver ?

    Merci @+

  2. #2
    Invit� de passage
    Inscrit en
    Mars 2003
    Messages
    1
    D�tails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 1
    Par d�faut
    Pour communiquer entre 2 PC tu peut le faire par liaison serie RS232 ou 485 . Pour transmettre un fichier tu pourrait plutot etablir une appli client serveur et tu ferait comme ceci:

    1)Tu creer un fichier "a la main" sur ton PC ou tournera le serveur et le remplit de tes donn�es.

    2)ton client sur l'autre PC se chargera de creer un fichier avec la fonction CreateFile sur ton disk dur.

    3)Ton serveur ouvre le fichier ( fopen()), met les donn�es contenu dans ce fichier dans un buffer de type de tableau de caractere, et envoi ce buffer grace a la fonction send() utilis� ds toute appli client/serveur,au client.

    4)ton client recoit ce buffer et ecrit les donn�es de ce buffer dans le fichier qu'il a creer grace a la fonction fwrite.

    5)Pour que les donn�es soit bien ecrite dans ton fichier n'oublie pas de faire un fclose() apres avoir fait fwrite() car lorsqe l'on utilise un fichier bufferis� les donn�es sont ecrites apres fermeture du fichier.

    6)Pour verifi� que tes donn�e sont bien transmises tu peut faire un cout<< de ton buffer de chaque cot�.

    J'ai cod� cette appli il y a peut donc su tu besoin de plus d'aide j'ai les sources si tu veut.

    Voila! a+++

    Jul'

  3. #3
    BuG
    BuG est d�connect�
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    44
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 44
    Par d�faut ...
    Heuu merci mais c'est pas exactement ce que je voulais savoir ( c'est pas grave ca va me servir quand m�me ) ce que je voulais savoir c'est la fonction qui premet d'envoyer les donn� a travers le port serie exemple il y a peut �tre une fonction declar� dans iostream.h EnvoyerDonneParLePortSerie(char *donne);

    mais cet fonction n'existe pas...

    @+

    J'espere que t'as compris ce que je voulais dire

  4. #4
    Mod�rateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Syst�mes Embarqu�s
    Inscrit en
    Avril 2002
    Messages
    3 252
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : Consultant en Syst�mes Embarqu�s
    Secteur : High Tech - �lectronique et micro-�lectronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 252
    Par d�faut
    En C++
    l'ouverture :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    HANDLE handle;
     handle = CreateFile("COM1:",                     //Nom du port série
                         GENERIC_READ|GENERIC_WRITE, //Type d'accès
                         0,                          //Mode de partage
                         NULL,                       //
                         OPEN_EXISTING,              //Obligatoire
                         FILE_FLAG_OVERLAPPED,       //NULL = synchrone, sinon asynchrone
                         NULL);                      //
    L'�criture :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    WriteFile(handle,
               xxx,         //pointeur sur tes données
               xx,          //Nombre de caractère à écrire
               xxx,         //Adresse d'une variable 32 bit
                            //Windows va faire un copie dedans
     
               0);          //0 = synchrone
    idem pour la lecture.
    etc... je ne pourrais pas t'aider d'avantge, je ne pratique jamais comme �a d'habitude.

  5. #5
    BuG
    BuG est d�connect�
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    44
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 44
    Par d�faut ...
    Merci !!

    Pour la lecture c'est pareil sauf que c'est ReadFile([arguments]); ?

    Merci @+

  6. #6
    Mod�rateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Syst�mes Embarqu�s
    Inscrit en
    Avril 2002
    Messages
    3 252
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : Consultant en Syst�mes Embarqu�s
    Secteur : High Tech - �lectronique et micro-�lectronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 252
    Par d�faut
    Oui en effet c'est
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    ReadFile(handle, 
               xxx,         //pointeur sur un espace de stockage données 
               xx,          //Nombre de caractère à lire 
               xxx,         //Adresse d'une variable 32 bit 
                            //Windows va faire un copie dedans 
     
               0);          //0 = synchrone

Discussions similaires

  1. Communication entres deux automates scheinder par wifi
    Par Gk_44 dans le forum Automation
    R�ponses: 13
    Dernier message: 08/06/2015, 12h15
  2. R�ponses: 2
    Dernier message: 18/02/2014, 15h52
  3. Communication entre deux programmes c# par USB
    Par Sylvain_31 dans le forum C#
    R�ponses: 1
    Dernier message: 13/04/2010, 23h27
  4. Communication entre deux Pc par un cable r�seau
    Par heddaji dans le forum Windows Forms
    R�ponses: 2
    Dernier message: 31/03/2007, 23h38
  5. Connexion entre deux ordi [D�butant]
    Par Ryadus dans le forum D�veloppement
    R�ponses: 2
    Dernier message: 12/06/2003, 21h47

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