begin process at 2012 05 29 18:51:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Linux

 > 

Autre

 > 

Pb RS232:Controle de Flux


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Pb RS232:Controle de Flux

lundi 26 juillet 2010 à 14:31:00 | Pb RS232:Controle de Flux

LiaGalanodel

Bonjour a tous.

Je me présente Amélie, 21 ans, étudiante en licence mécatronique, j'ai un petit problème avec le contrôle de flux dans une liaison RS232 avec le langage C++.
Enfaite j'aimerais pouvoir transposer ce code sous windows:
Code C/C++ :
                //*** Serial Comm. speed & format
                ControlBlock.BaudRate = nBaudRate;
                ControlBlock.Parity = PARITY;
                ControlBlock.ByteSize = BYTESIZE;
                ControlBlock.StopBits = STOPBITS;

                //*** RTS / CTS
                if (bRTS_CTS==TRUE)
                {
                               ControlBlock.fRtsControl = RTS_CONTROL_HANDSHAKE;
                               ControlBlock.fOutxCtsFlow = TRUE;
                }
                else
                {
                               ControlBlock.fRtsControl = RTS_CONTROL_ENABLE;
                               ControlBlock.fOutxCtsFlow = FALSE;
                }


                //*** DSR/DTS
                ControlBlock.fDtrControl = DTR_CONTROL_ENABLE;
                ControlBlock.fOutxDsrFlow = FALSE;

                //*** XON / XOFF Off
                ControlBlock.fOutX = FALSE;
                ControlBlock.fInX = FALSE;


Vers un code sous linux.
Le problème c'est que je ne trouve pas de fonction permettant de configurer les signaux RTS et DTR. Enfaite je ne trouve pas grand chose a part une fonction dans termios.h:
/* Controle de flux hardware RTS/CTS)*/
Config.c_cflag |= (CREAD | CRTSCTS)
Mais ça ne me permet pas de le mettre en mode HANDSHAKE oua utre.

Je suis complétement bloqué donc si vous avez des idées n'hésitez pas je vous en serais vraiment reconnaissante.

A votre disposition pour d'autre renseignements.

Merci.

Amélie
lundi 26 juillet 2010 à 16:51:36 | Re : Pb RS232:Controle de Flux

DeAtHCrAsH


Salut,

Je t'invite a consulter ce lien sur lequel tu trouveras surement ton bonheur :
[ Lien ]

Pour ce qui est du control de flux il y a un petit passage en bas de page :

Some versions of UNIX support hardware flow control using the CTS (Clear To Send) and RTS (Request To Send) signal lines. If the CNEW_RTSCTS or CRTSCTS constants are defined on your system then hardware flow control is probably supported. Do the following to enable hardware flow control:

options.c_cflag |= CNEW_RTSCTS; /* Also called CRTSCTS */

Similarly, to disable hardware flow control:

options.c_cflag &= ~CNEW_RTSCTS;


Bon courage,

Shell
jeudi 29 juillet 2010 à 09:12:52 | Re : Pb RS232:Controle de Flux

LiaGalanodel

Merci beaucoup pour la réponse mais j'avous que j'ai un peu de mal quand même a savoir comment arriver a configurer les signaux en handshake...
jeudi 29 juillet 2010 à 15:57:28 | Re : Pb RS232:Controle de Flux

DeAtHCrAsH

Réponse acceptée !
Le simple fait d'activer l'option c_cflag va permettre de mettre un place le control de flux RTS/CTS. C'est ce qu'on appelle du "hardware handshaking".
Tu as aussi le software handshaking qui s'utilise via l'activation de l'option XON/XOFF, mais il est bcp plus lent.

Le mieux est que tu te fasses un petit projet qui met en oeuvre les elements de base (connexion, envoi de data, reception de data, fermeture de la connexion). Ca t'aidera surement a mieux comprendre comment tout cela fonctionne.


Shell
jeudi 29 juillet 2010 à 16:11:52 | Re : Pb RS232:Controle de Flux

LiaGalanodel

Alors là! Merci beaucoup beaucoup pour ta réponse simple et clair!

Je comprend mieux tout les tutoriels que je lis depuis quelques jours. Je n'avais pas vraiment compris ça.

Bref encore merci.

Bonne journée a toi.


Cette discussion est classée dans : code, flux, false, rts, controlblock


Répondre à ce message

Sujets en rapport avec ce message

Besion d'une confirmation sur le controle de flux RTS/CTS [ par Etudiant13666 ] Bonjours à tous en ce moment je cherche a savoir comment configuré une liaison serie avec un controle de flux RTS/CTS ,le probléme c'est que mon proga Passage d'un code écrit en c++ à un code en c [ par aymen87 ] Bonjour à tous j'ai téléchargé un code pour cryptage qui fonctionne à merveille sous vs6 (avec l'extension .cpp). Mais pour l'intégrer dans mon appli Decoder un flux video [ par isabelleing ] Bonjour, Je suis debutante en developpement c/c++ et je cherche un code qui permet de decoder un flux video sur internet(c àd lien url de video) et l Comment configurer une liaison serie a la norme RTS/CTS en language C ? [ par Etudiant13666 ] Bonjour a tous , je suis étudiant en deuxieme année de BTS IRIS et je suis en projet ^^.En faite je vu qui exiter des fonctions tous faite en C car on transcodage d'un flux video online [ par nostalgieing ] Bonjour, Je suis debutante en developpement c/c++ et je cherche un code qui permet de decoder un flux video sur internet(c àd lien url de video) et l Explorer le code d'une DLL [ par JSilvere ] Salut, J'essaie depuis plus d'un mois d'utiliser une DLL pour un de mes programmes, mais ceux en vain, je tâtonne et avance au rythme d'une limace. programme pingueur.c [ par bouzakaria ] bonjour j'utilise actuellement le programme pingueur.c pour similer la commande dos ping (protocole ICMP), lorsque l'adresse IP est correcte le progr probleme : Envoyer mail via smtp [ par ptlanderson ] Bonjour Je suis un étudiant M1 ! Je suis entrain de faire un projet qui est proposé par tuteur de stage. En fait, je dois faire envoyer un mail en cl Creer deux fenetres indépendantes dans le meme code [ par andrebernard ] Bonjour à tous J'aimerais créer deux fenêtres indépendantes non MDI Je suis parti du code que m'a donné CodeBlock pour essayer de "doubler" ce derni


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,296 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales