Hi ich nutzt ein embedded Linux und die Rs232 Schnittstelle. Solange ich nur Txd und RxD nutze klappt die Kommunikation. Nun brauch ich aber die Steuerleitungen RTS und DTR. Da ich auf der Protokollebene bin sollte es möglich sein diese automatisch setzten zu lassen. Laut Posix kann man Hardware Flow Control mit options.c_cflag |= CNEW_RTSCTS einschalten. Wenn ich das mache bekommen ich jedoch die Fehlermeldung "undeclares ( first use in this function)" Nutze ich die alternative options.c_cflag |= CRTSCTS wird zwar fehlerfrei kompiliert aber trotzdem die Signale nicht gesetzt. Habt ihr hier irgendwelche Ideen was das sein könnte? Beim ersten sieht es so aus als ob die entsprechende Headerdatei fehlt, welche muss ich noch einbinden das es klappt? ( bis jetzt drin: stdio, string.h,unistd.h,fcntl.h,errno.h,terminos.h und wo ich dachte das sie das ist: sys/ioctl.h) Gruß Hans
CRTSCTS (not in POSIX) Enable RTS/CTS (hardware) flow control. man termios gruß
also kann ich davon ausgehen das meine Platform dieses nicht unterstützt. Wenn ich jetzt trotzdem Hardware Flow Control nutzen möchte, was für Optionen habe ich dann? -Wechsel von der Protokollebene auf die Pinebene und das manuelle setzen von RTS und DTR - eine Hardwarelösung die mir die Signale bereit stellt und ggf. wenn es geht -im Linux Schnittstellentreiber rum zu pfuschen. Da mir das erste als am einfachsten erschien hab ich das ausprobiert, ging aber nicht wirklich. Hat jemand von euch schon so ein Problem gehabt und gelößt? Mfg Hans ( im Unglück)
Hilft das weiter? http://www.mikrocontroller.net/articles/Ports_benutzen_(GCC)#Schnittstelle_mit_open.282.29_.F6ffnen
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.