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

  FORUM HardWare.fr
  Programmation
  C

  Configurer une RS232 sous UNIX en C low lvl

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Configurer une RS232 sous UNIX en C low lvl

n°1290691
Sk0r
Posté le 24-01-2006 à 10:17:57  profilanswer
 

Bonjour à tous,
 
Voila un problème sur lequel je me casse les dents depuis 1 semaine sans trouver de réponse, a peine quelques voies.
En gros je doit communiquer avec un robot (un bras articulé pour qui ça interesse) connecté à un PC sous UNIX en liaison Série RS232  le tout en C bas niveau. J'aimerais que quelqu'un m'explique comment utiliser la fonction ioctl() afin de pouvoir configurer la vitesse de communication (BAUDRATE), la parité et tt le tremblement car là je commence à desesperer: les docs sur le net ne me sont d'aucun utilité et le man de LINUX ne m'aide pas plus :cry:  
 
 
Merci d'avance pour vos réponse.

mood
Publicité
Posté le 24-01-2006 à 10:17:57  profilanswer
 

n°1291187
TheDuke34
Posté le 24-01-2006 à 17:14:47  profilanswer
 

Pourquoi tu n'utilises pas Termios ?
 
#include <termios.h>
 
int init_serialport(int fd){
  struct termios options;
 
  /* récupère les options actuels du port série */
  if (tcgetattr(fd, &options)==-1)
    return -1;
 
  /* options  */
  options.c_cflag    |=CS8; /* 8 bits*/
  options.c_cflag  |=PARENB; /* parité*/
 
 
  /* vitesse à 9600 bauds*/
  cfsetispeed(&options, B9600);
  cfsetospeed(&options, B9600);
 
  /* écrase les options du port série */
  if (tcflush(fd, TCIOFLUSH)==-1)  
    //vide les caractères en attente en lecture et en écriture
    return -1;
  return tcsetattr(fd, TCSANOW, &options);
}
 
Sinon, sans termios, je vais retrouver mes cours et je vais te répondre.


Message édité par TheDuke34 le 24-01-2006 à 17:29:23
n°1291533
Sk0r
Posté le 24-01-2006 à 22:54:32  profilanswer
 

Je suis bête et discipliné, mon prof m'a donné cette piste et je l'ai suivi, toutefois je te remercie pour cet autre voie, je tacherais de la mettre en oeuvre jeudi.
 
Si cela pouvais m'éviter l'écriture de limite tout un driver pour la bestiole ça serais dément :love:
 
 
Merci encore pour ta réponse :jap:

n°1291549
Emmanuel D​elahaye
C is a sharp tool
Posté le 24-01-2006 à 23:11:16  profilanswer
 

Sk0r a écrit :

Si cela pouvais m'éviter l'écriture de limite tout un driver pour la bestiole ça serais dément


Aucun problème. La gestion des ports série sous unixoide est une chose simple et maitrisée.


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1291709
chrisbk
-
Posté le 25-01-2006 à 10:50:35  profilanswer
 


 
tu savais que ton pseudo voulait dire "chaussures" en suedois ? c'est formidable non ? [:dawa]

n°1291903
Sk0r
Posté le 25-01-2006 à 13:47:20  profilanswer
 

chrisbk a écrit :

tu savais que ton pseudo voulait dire "chaussures" en suedois ? c'est formidable non ? [:dawa]


 
 
Incroyabeul, décidement j'en apprend tous les jours ici :lol:  
Je fait du 45, tu pense que je devrais l'écrire en majuscule?  :D


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

  Configurer une RS232 sous UNIX en C low lvl

 

Sujets relatifs
shell unix: test IF avec plusieurs conditionsCommande UNIX - Comparaison
[C / UNIX ] Semaphore entre plusieurs processus [Résolu]comparaisons de fichiers unix
compilation avec unix[C/UNIX] Tube + Mémoire partagée
Purger les ports bindés en C sous unixsupprimer un fichier sous unix
[Résolu] Exécution sous unixCommande Unix wc en C
Plus de sujets relatifs à : Configurer une RS232 sous UNIX en C low lvl


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