Ich danke Dir, izaseba, ich werde mir Deinen Code heute abend durchsehen.
Ich gebe zu, ich hätte den ganzen Code ruhig posten können, ich hole das mal nach:
Code:
#include <stdio.h> /* Standard I/O */
#include <string.h> /* Zeichenkettenfunktionen */
#include <unistd.h> /* UNIX Standardfunktionen */
#include <fcntl.h> /* Dateikontrolle */
#include <termios.h> /* POSIX Terminalkonfiguration */
#define BAUDRATE B2400
#define DEVICE "/dev/ttyUSB0"
int main(void)
{
/* Initialisierung */
int fd;
struct termios backup, rs232;
/* Arbeitsbeginn */
fd = rs232_oeffnen();
rs232_schliessen();
return 0;
}
/* *** Funktionen *** *** *** *** *** */
/* Oeffnen der virtuellen seriellen Schnittstelle "/dev/ttyUSB0" */
int rs232_oeffnen(fd, backup, rs232){
fd = open(DEVICE, O_RDWR | O_NOCTTY | O_NDELAY); /* Schnittstelle oeffnen */
printf("Das Device wird geoeffnet\n");
/* Sicherheitsabfrage, ob Schnittstelle geoeffnet werden konnte */
if (fd == -1){
printf("rs232_oeffnen: Konnte /dev/ttyUSB0 nicht oeffnen\n");
return(-1);
}
/* Schnittstelle konfigurieren */
tcgetattr(fd, &backup); /* Aktuelle serielle Einstellungen sichern */
cfsetispeed(&rs232, BAUDRATE); /* eingehende Baudrate setzen */
cfsetospeed(&rs232, BAUDRATE); /* ausgehende Baudrate setzen */
rs232.c_cflag |= (CLOCAL | CREAD);
return (fd);
}
/* Schliessen der virtuellen seriellen Schnittstelle "/dev/ttyUSB0" */
int rs232_schliessen(fd){
close(fd);
printf("Das Device wurde geschlossen\n");
}
Gruß
rockin_santa
Lesezeichen