Hallo, weiß zufällig jemand, warum ich unter Suse 9.1 zwar mit ~> stty 9600 < /dev/ttyS0 ~> echo -ne '\257\011' >/dev/ttyS0 Daten auf COM1 senden kann, aber mit ~> cat < /dev/ttyS0 keine Daten empfangen kann (unter Windows funktioniert es). Ich habe es auch mit dem folgendem C-Programm versucht: #include <stdio.h> #include <string.h> /* String function definitions */ #include <unistd.h> /* UNIX standard function definitions */ #include <fcntl.h> /* File control definitions */ #include <errno.h> /* Error number definitions */ #include <termios.h> /* POSIX terminal control definitions */ int open_port (void) { struct termios options; int fd; // Filedeskriptor fd = open ("/dev/ttyS0", O_RDWR | O_NOCTTY | O_NONBLOCK | O_SYNC); /*Öffne serielle Schnittstelle ttyS0 mit folgenden Eigenschaften: * O_RDWR read and write * O_NOCTTY es handelt sich um keine Konsole * O_NONBLOCK nicht blockieren * O_SYNC warte bei jeden write aufruf, bis er fertig ist*/ if (fd < 0) // negative Zahl bei fehler! { fprintf(stderr, "Open_port: unable to open /dev/ttyS0 \n"); exit (1); // irreparebel, verlasse Programm } fcntl (fd, F_SETFL, O_ASYNC); tcgetattr (fd, &options); // verlange die aktuellen Einstellungen cfsetispeed (&options, B9600); // ändere die Baud-rate auf 9600 cfsetospeed (&options, B9600); // ändere die Baud-rate auf 9600 options.c_cflag |= (CLOCAL | CREAD); // auch lesen möglich options.c_cflag &= ~PARENB; // keine Paritätbits options.c_cflag &= ~CSTOPB; // nur ein Stop-bit options.c_cflag &= ~CSIZE; // lösche Datenbitseinstellung, damit nächster Befehl gültig ist options.c_cflag |= CS8; // select 8 Databits options.c_cflag &= ~CRTSCTS; // disable Hardwareflow control options.c_lflag &= ~(ICANON | ECHO | ISIG); // raw data tcsetattr (fd, TCSANOW, &options); return fd; } int main() { int fd0; char buffer[100]; int size; fd0 = open_port (); printf("%i\n", fd0); fcntl(fd0, F_SETFL, FNDELAY); size = read(fd0, buffer, 99); printf("%i\n", size); if (size > 0) { buffer[size] = '\0'; printf("%s\n", buffer); } close(fd0); return -1; } Gruß Ralf