Technikerschule
Nördlingen
Programmierung dynamischer Internetseiten
Startseite
Termine
Links
Einführung
Netzdiagnose
Webserver
HTML-Unterlagen
HTML-Praxis
Stylesheets
Javascript
WAMP-Installation
PHP-Lektionen
PHP-Übungen
Vorlagen
Kontakt

Zugriff auf die serielle Schnittstelle

Auf die serielle Schnittstelle kann mit PHP wie auf eine Datei zugegriffen werden. An die Stelle des Dateinamens tritt die Bezeichnung des seriellen Schnittstelle, allso zum Beispiel "COM1" unter Windows oder "/tty/S0" unter Linux.

Bei der Erstellung des PHP-Scriptes sollte zunächst in Erfahrung gebracht werden, auf welche Zeichen das an der Schnittstelle angeschlossene Gerät reagiert. Sendet es pausenlos, in bestimmten Abständen oder auf bestimmte Befehle seine Daten? Muss ein Befehl besonders beendet sein, etwa mit einem "Return" oder einer dem Zeichen für eine neue Zeile?

Auch ist es gut vorab zu wissen, in welcher Form das Gerät seine Daten sendet. Oder woran man erkennen kann, dass der Datenstrom beendet ist. Auf solche Parameter sollte das Script eingestellt sein, weil es anderenfalls zu unangnehmen Timeouts bis zur dauerhaften Blockade der Schnittstelle kommen kann, die unter Umständen nur durch einen Neustart des Rechners oder einen Eingriff in die Systemsteuerung behoben werden kann.

Das folgende Script sendet eine Nachricht an einen über ein Nullmodemkabel mit dem Server-PC verbundenen zweiten Rechner, auf dem ein Terminalprogramm gestartet ist. Das Script schickt eine Nachricht "Hallo, wie geht es Dir?" an den Rechner und erwartet eine 5 Zeichen lange Antwort, die dann im Browser angezeigt wird.

Beispiel:

    fp = fopen ("COM1:", "w+");
if (!$fp) {
echo "Konnte Schnittstelle nicht öffnen";
} else {
fputs ($fp, "Hallo, wie geht es Dir?"); $antwort=fread($fp,5);
echo $antwort; fclose ($fp);
}

Hinweis: Die Funktion fread() liest solange von der Schnittstelle bis von dort ein Abschlusskommando kommt.

 
Zurück   Home   Nächste