Configurer une RS232 sous UNIX en C low lvl

Configurer une RS232 sous UNIX en C low lvl - C - Programmation

Marsh Posté le 24-01-2006 à 10:17:57    

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.

Reply

Marsh Posté le 24-01-2006 à 10:17:57   

Reply

Marsh Posté le 24-01-2006 à 17:14:47    

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
Reply

Marsh Posté le 24-01-2006 à 22:54:32    

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:

Reply

Marsh Posté le 24-01-2006 à 23:11:16    

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/
Reply

Marsh Posté le 25-01-2006 à 10:50:35    


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

Reply

Marsh Posté le 25-01-2006 à 13:47:20    

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

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed