#include "serialplot_io.h" int init_serial(char *cvalue) { int fd_ttyS; struct termios newtio; if ( (fd_ttyS=open(cvalue,O_RDWR )) < 0 ) { perror("serial port couldn't be open"); exit(-1); } tcgetattr(fd_ttyS,&oldconf); /* sauvegarde de la configuration courante */ bzero(&newtio, sizeof(newtio)); /* on initialise la structure à zéro */ /* * ICRNL convertie CR en NL en entrée sauf si IGNCR est indiqué * Valide la vérification de parité en entré */ newtio.c_iflag = ICRNL | INPCK ; /* * BAUDRATE 115200 Baud * CS8 Longeur des caractères * CLOCAL Ignore les signaux de controle du modem * CREAD Valider la reception * PARENB Valider le codage de partié en sortie et la vérification * de parité en entrée */ newtio.c_cflag = BAUDRATE | CS8 | CLOCAL | CREAD | PARENB ; /* * Traitement des caractères de sortie, ici aucun. */ newtio.c_oflag = 0; /* * Mode canonique (permet l'utilisation des caractères speciaux) */ newtio.c_lflag = ICANON; tcflush(fd_ttyS, TCIFLUSH); tcsetattr(fd_ttyS,TCSANOW,&newtio); return fd_ttyS; } void close_serial(int fd) { tcsetattr(fd,TCSANOW,&oldconf); close(fd); } int write_serial(int fd,char *command) { return fputs(command,fdopen(fd,"r+")); } void find_name(char *filename) { //#include //#include //#include // //int //main (void) //{ // DIR *dp; // struct dirent *ep; // // dp = opendir ("./"); // if (dp != NULL) // { // while (ep = readdir (dp)) // puts (ep->d_name); // (void) closedir (dp); // } // else // perror ("Couldn't open the directory"); // // return 0; //} }