Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3320 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  port série win 98

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

port série win 98

n°769784
bipbip2000
Posté le 19-06-2004 à 10:40:32  profilanswer
 

salut,
j'ai trouvée des programmes qui envoi des données sur le port série mais moi j'aimerais aussi envoyer ce que je veux sur les broches CTR et DTS (et non pas que sur TXD), comment faire?
Si quelqu'un a déja fait un prog similaire, merci de me le montrer a moi et au autres..
 
merci

mood
Publicité
Posté le 19-06-2004 à 10:40:32  profilanswer
 

n°769803
printf
Baston !
Posté le 19-06-2004 à 11:22:29  profilanswer
 

Tu veux parler des signaux RTS et DTR, je suppose ? (les signaux CTR et DTS n'existant pas).
 
Pour manipuler l'état de ces signaux, il existe deux méthodes, selon la façon dont tu accède au port de communication :
 
- en utilisant des instructions d'entrées/sorties pour lire et écrire dans l'UART (méthode déconseillée, bien que fonctionnant sous Windows 98) : tu peux écrire dans le MCR (Modem Control Register; offset 4). Bit 0 pour DTR et bit 1 pour RTS.
 
- en passant par un fichier spécial (méthode conseillée) : tu peux utiliser la fonction EscapeCommFunction() de l'API.
 
Précise la méthode que tu utilise, et je pourrais détailler un peu si tu en a besoin.


Message édité par printf le 19-06-2004 à 11:22:42

---------------
Un matin je me lèverai et il fera beau.
n°769822
cricri_
Posté le 19-06-2004 à 12:04:18  profilanswer
 

c'est plutôt RTS et CTS les signaux importants

n°769848
bipbip2000
Posté le 19-06-2004 à 13:06:54  profilanswer
 

Escusez moi c'est bien RTS et DTR.
Merci pour ta réponse printf mais je suis pas trés bon en programmation et je vois pas du tout comment écrire dans le MCR.
Ta deuxième solution me parait la bonne car j'ai récupérer un prog qui utilise cette fonction :
 
/* on vide les tampons d'émission et de réception, mise à 1 DTR */
    PurgeComm(g_hCOM, PURGE_TXCLEAR|PURGE_RXCLEAR|PURGE_TXABORT|PURGE_RXABORT);
    EscapeCommFunction(g_hCOM, SETDTR);
    return TRUE;
 
bon je comprend pas grand chose, mais j'aimerais bien savoir comment utiliser cette fonction car j'ai essayé de mettre SETRTS à la place de SETDTR et ça marche pas.  
Je sais que toute ses fonction sont déclaré dans windows.h mais je trouve pas ou c'est déclaré.
 
Le but de tout ça étant d'utiliser DTR comme une horloge (en envoyant en continu 0101010101) et RTS comme STR( mise a 1 quand on envoi des données).  

n°769882
printf
Baston !
Posté le 19-06-2004 à 13:54:19  profilanswer
 

C'est déclaré dans "Winbase.h", en fait (même si c'est le fichier "Windows.h" qu'il faut inclure; ce dernier incluant le précédent).
 
La documentation est ici (en Anglais) :
http://msdn.microsoft.com/library/ [...] ctions.asp
 
Normalement, si tu utilise SETRTS cela devrait fonctionner. Comment as-tu procédé pour vérifier ?


---------------
Un matin je me lèverai et il fera beau.
n°769888
bipbip2000
Posté le 19-06-2004 à 14:13:15  profilanswer
 

non en fait j'avais esayer avec SETCTS je crois mais je sais plus trop. J'ai vérifier avec C++ builder dans mon entreprise ou je suis en stage (il m'a mis qui connaissait pas SETCTS). Je vais essayer de l'installer chez moi et je vais voir si ça marche.
 
printf("merci" );
:-)

n°774508
bipbip2000
Posté le 23-06-2004 à 16:21:18  profilanswer
 

salut
j'ai finalement opté pour la deuxième solution : utiliser le mcr
j'ai utilisé inportb et outportb :
 
outportb(0x3F9,0);
outportb(0x3FC,inportb(0x3FC)^1);
 
 
mais problème le compilateur met :
[C++Erreur] serie.cpp(46): Call to undefined function 'outportb'.
[C++Erreur] serie.cpp(47): Call to undefined function 'inportb'.
 
pourtant j'ai mis conio.h qui apparammenent serait la librairie appropriée.
 
ou est le problème????????????

n°774545
HelloWorld
Salut tout le monde!
Posté le 23-06-2004 à 16:39:05  profilanswer
 

http://msdn.microsoft.com/library/ [...] _outpd.asp
Ces fonctions ne marchent que sous Win9x...
C'est marrant, le premier liens de google à ce sujet donne ce topic :
http://forum.hardware.fr/hardwaref [...] 0173-1.htm
Comme quoi une petite recherche sur le forum ça fait gagner du temps...


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°774563
bipbip2000
Posté le 23-06-2004 à 16:48:59  profilanswer
 

merci helloword
escuse moi pour la recherche mais sur google j'avais mis outport et outp et j'avais pas essayer _outp puisque justement je savait pas exactement quelle était la fonction.
 
merci encore, je vais essayer
a+
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  port série win 98

 

Sujets relatifs
question (simple) sur le port sérieI/O sur le port série
initialisation communication port serieenvoi de caractères par le port série
[C++]Port Serie -> Envoi d'un fichier texte...[C] problème avec la fonction write sur un port série
Port serie / Classpath???[C]problème read sur port série
accès au port série win + linuxPas de port série :( (Java Comm)
Plus de sujets relatifs à : port série win 98


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR