Bonjour, voilà je souhaiterais lire des données que me renvoies mon robot par l'intermediaire d'un programme en C. J'arrive à écrire des trames et les envoyées sur la liaison série (le robot fait les mouvements que je lui demande). En revanche je n'arrive pas à lire ce qu'il me renvoie (si je tape le caractere '$', le robot devrait me renvoyer ses positions). Sous windows avec procomm j'y arrive, ce qui n'est pas le cas sous linux !!!
Donc voilà un morceau du programme:
/* Déclarations des variables*/
char trame[50];
char *trameRecue;
int fichier;
/*Ouverture du fichier (port COM1) en lecture/ecriture*/
if ((fichier=open("/dev/ttyS1",O_RDWR)) == -1 )
{perror("open");exit(-1);}
(...)
/* Ecriture dans fichier (envoie sur liaison serie (port COM1)) */
if ((write(fichier, &trame, strlen(trame))) == -1 )
{perror("write"); close (fichier); exit(-1);}
/* Lecture dans fichier (reception sur liaison serie (port COM1)) */
if ((read (fichier, &trameRecue, 1)) == -1)
{perror("open"); close (fichier); exit(-1);}
=>Au moment de la lecture, le programme attend un caractère, mais le problème c'est qu'apparement il reçoit rien !?
Si quelqu'un pouvais m'aider ça serais sympa. Merci Configuration: Linux Fedora Core 3

