URL: https://linuxfr.org/forums/linux-debutant/posts/le-port-serie-en-c Title: le port serie en C Authors: angsthase Date: 2005年04月29日T14:44:29+02:00 Tags: Score: 0 Salut à tous, je voudrais savoir comment écrire et lire sur un port série. J'ai vu partout que c'était simple avec read et write ....................mais non!!! J'arrive à ouvrir le port mais je n'arrive rien a envoyer ou à lire sur le port série.... N'auriez vous pas la syntaxe pour effectuer ces opérations ??? numFichier=open(port,O_RDWR|O_NONBLOCK); £spaces£ £/spaces£if(numFichier>0) £spaces£ £/spaces£{ £spaces£ £/spaces£printf("OK\n"); £spaces£ £/spaces£do £spaces£ £/spaces£{ £spaces£ £/spaces£printf("\nMENU :\n1) Emettre 'a'\n2) Recevoir\n3) Quitter\n:"); £spaces£ £/spaces£scanf("%i",&choix); £spaces£ £/spaces£ £spaces£ £/spaces£//######################################################### £spaces£ £/spaces£if (choix==1) £spaces£ £/spaces£{ £spaces£ £/spaces£printf("\nGO.....\n"); £spaces£ £/spaces£write(numFichier,buf,sizeof(buf)); £spaces£ £/spaces£printf("\nEcriture faites\n"); £spaces£ £/spaces£} £spaces£ £/spaces£//######################################################### £spaces£ £/spaces£else if (choix==2) // Recevoir £spaces£ £/spaces£{ £spaces£ £/spaces£i=-1; £spaces£ £/spaces£boucle=0; £spaces£ £/spaces£while(i<=0 && boucle<=1000) // Effectue 1000 lecture max £spaces£ £/spaces£{ £spaces£ £/spaces£boucle++; £spaces£ £/spaces£i=read(numFichier,&texte,10); £spaces£ £/spaces£printf("Nombre d'octet lu : %i\n", i); £spaces£ £/spaces£} £spaces£ £/spaces£} £spaces£ £/spaces£//######################################################## £spaces£ £/spaces£else if (choix==3) // Quitter £spaces£ £/spaces£key=1; £spaces£ £/spaces£ £spaces£ £/spaces£else printf("Mauvaise commande\n"); £spaces£ £/spaces£} £spaces£ £/spaces£while(key==0); £spaces£ £/spaces£close(numFichier); £spaces£ £/spaces£} £spaces£ £/spaces£else printf("ERREUR\n"); £spaces£ £/spaces£i=ioperm(port,1,0); // Demande permission de fermer le port £spaces£ £/spaces£printf("Fermeture du programme\n");