ttyS0 oder Com 1 ausfragen

Dennis Wetzig dennis at osiris.gt.owl.de
Tue Aug 22 12:00:17 CEST 2000


On Tue, Aug 22, 2000 at 10:11:35AM +0200, Philipp Suek wrote:
> Hallo,
> 
> ich baue gerade mit anderen einen Cola Automaten so um, dass man eine Cola
> über WAP bestellen kann.
> In meiner Arbeitsgruppe versuchen wir dieses über PHP3 zu lösen. Nur wir
> wissen nicht wie wir den PHP3 Port ttyS0 unter Linux ansprechen.
> Wir hatten uns gedacht, dass wir das über fopen usw. machen und ttyS0 als
> File betrachten. Funktioniert das???
> 
> Über welches Programm kann man den Port den direkt ansprechen???


Im Grossen und Ganzen ist ein tty von Applikationsseite her ein file.

Aber ganz so einfach ist es dann doch wieder nicht. Mit einem einfach open()
wirst Du zwar Zugriff auf Dein tty bekommen, aber Du kannst keine
Konfigurationsparameter aendern. Dafuer wuerdest Du vorzugsweise termios nutzen. 
man termios

Ich bezweifele aber, dass es sowas unter php3 gibt. Ist nicht unbedingt eine
typische Sache fuer eine _Web_scripting-Sprache. 

Eventueller workaround: Schreibt einfach ein C-Programm, welches die
Termios-Geschichten macht, oeffnet in php3 das tty, ruft das externe C-Programm
auf, greift dann einfach auf den Port zu. Einziges Problem: Wenn man ueber
termios Parameter aendert, dann sollte man vorher die alte Konfig auslesen und
sie nach dem Portzugriff wieder herstellen. Das wird diese Loesung nicht leisten
koennen. 

Ach ja - ich wuensche Euch viel Spass beim Erraten der notwendigen
Parameter-Kombinationen ;-) Wenn Eure Applikation felsenfest behauptet, es
laegen immer Daten zum Lesen am Port bereit, und Ihr das Gefuehl habt, dass das
Quatsch ist, dann schaut Euch mal termios.c_cc[VMIN] an. Nein, davon steht
nichts in der manpage, aber fuer mich war es die Loesung...

Prost, 
	Dennis

-- 
- Dennis

--------
Dennis Wetzig - dennis at osiris.gt.owl.de
keyID=0x8FFC43DB fingerprint=685D 6F5A BF5A 00CD EF96 7B8A C313 EB47 8FFC 43DB


-
Hinweise zur Benutzung dieser (und anderer Mailing-Listen) bitte beachten:
--> http://lug-owl.de/mailinglist_hints.html <--



More information about the Linux mailing list