Subject: Re: dtr ist nicht gesetzt
From: Florian Zumbiehl (florz@gmx.de)
Date: Thu Nov 02 2000 - 18:08:55 CET
Hallo Sandra!
> Ich möchte gerne eine Funktion schreiben, die die serielle Schnittstelle
> öffnet. Soweit auch kein Problem, jedoch möchte ich dabei auch DTR setzen.
> Weiß jemand, wie ich das hinkriege???
Die ganzen Leitungen lassen sich ueber ioctl-Aufrufe schalten, DTR z.B.
folgendermassen (port ist das Filehandle der seriellen Schnittstelle,
siehe auch man ioctl, state gibt an, ob ein- oder ausgeschaltet werden soll):
------------------------------
void setdtr(int state){
int cmd;
cmd=TIOCM_DTR;
ioctl(port,state?TIOCMBIS:TIOCMBIC,&cmd);
}
------------------------------
Welche ioctls es sonst noch so gibt, kann man recht gut in den Kernel-Quellen
nachgucken (einfach mal nach ioctl mit -i durch die Dateien des seriellen
Treibers greppen) - dann sieht man auch gleich recht gut, wie sie funktionieren.
Gruss, Florian
This archive was generated by hypermail 2b25 : Thu Nov 02 2000 - 18:19:55 CET