![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Senior Member
![]() |
![]() Hallo!
Ich habe folgende Aufgabe (Projekt in der Schule): An der seriellen Schnittstelle meines PCs hängt eine Art digitale Anzeigentafel, auf die ich beliebige Texte schreiben kann. Die Tafel sollte aber auch von jedem PC im Netzwerk aus angesprochen werden können. Sprich: In einem Formular einer HTML-Seite sollte man irgend einen Text "hallo" eingeben, der dann auf der Anzeigetafel aufscheinen soll. Ich weiß jetzt nicht, mit welcher Programmiersprache ich ans Problem herangehe. In PHP kenn ich mich recht gut aus, aber kA wie ich da die serielle Schnittstelle (unter windows) ansprechen kann. Oder geht das mit Perl, C leichter? im Anhang is noch ein Bild, zum leichteren Verständnis ![]() mfg the bruschni www.adsl-info.org |
![]() |
![]() |
![]() |
#2 |
Senior Member
![]() |
![]() aja, hier das BILD
|
![]() |
![]() |
![]() |
#3 |
Master
![]() Registriert seit: 27.12.2000
Beiträge: 589
|
![]() Vorraussetzung: du hast die Rechte gesetzt(PHP(Apache) Server)
Es ist eine Filesystem Funktion, also überall ansprechbar, aber da PHP serverseitig ist, nur am Server, und net am Client: -------------------------------------------------------------------------------- $string = "Servus Schnittstelle!\n"; $pointer = fopen("/dev/ttyS0","w"); fwrite ($pointer, $string); fclose($pointer); -------------------------------------------------------------------------------- also die Schnittstelle wird geöffnet, dann Daten und wieder geschlossen. Mit fgets() kannst auf Input warten(=> das Skript bleibt stehen bis Daten od Timeout). Gleichzeitiges Lesen und Schreiben ist nicht möglich.(mit 2 Skripten gleichzeitig mögl.) Wichtig ist die richtige Schnittstellenkonfig im OS.
____________________________________
ALEA IACTA EST mfg, zend |
![]() |
![]() |
![]() |
#4 |
Inventar
![]() Registriert seit: 05.01.2000
Beiträge: 3.812
|
![]() Gehört die Tafel nicht extra angesprochen?
Nur mit PHP wird das glauge ich nicht funzen. Eher eine Mischung, PHP für das Frontende und dann wird ein C-Script angesprochen. Was ist das für eine Tafel? Marke,Type Sloter |
![]() |
![]() |
![]() |
#5 |
Master
![]() Registriert seit: 27.12.2000
Beiträge: 589
|
![]() ja, falls die Tafel zu den Standard Serial Befehle nicht kompatibel ist, brauchst a c Programm zum Translaten.
____________________________________
ALEA IACTA EST mfg, zend |
![]() |
![]() |
![]() |
#6 | ||
Senior Member
![]() |
![]() Danke mal für eure Antworten.
Die Tafel ist marke Eigenbau (von einer anderen Projektgruppe), ich weiß leider noch nicht genau, wie die funktioniert (ich krieg die Infos erst nach den Ferien). Wird aber sicher nix kompliziertes sein. Soweit ich vom Projektleiter erfahren hab, reicht es, wenn ich nur den Text rausschreib. Zitat:
Zitat:
mfg the bruschni |
||
![]() |
![]() |
![]() |
#7 |
Master
![]() Registriert seit: 27.12.2000
Beiträge: 589
|
![]() für die Rechte: du musst den Webserver bzw. den PHP-Interpreter so konfiguerieren, dass er auf die serielle Schnittstelle zugreifen kann - ist glaub ich im Windows sowieso.
du brauchst die variablen nicht übergeben. 1.das Formular mit der Eingabe für die Tafel sendet das Formularergebnis an ein Textfile. 2. PHP startet dein c Programm (exec()), welches dein Textfile ausliest und dann an die Tafel sendet.
____________________________________
ALEA IACTA EST mfg, zend |
![]() |
![]() |
![]() |
#8 |
Master
![]() |
![]() @zend: Ist "/dev/ttys0" in Windows mit php auch verfügbar?
Wenn nicht kann man einfach den dosbefehl "Copy text.txt com1:" benutzen. @Bruschni: Wenn du was an ein C (oder sonstiges) externes Programm übergeben wills t brauchst du nicht den Umweg über ein Textfile zu machen sondern einfach den Text als Comandozeilenparameter übergeben. (soo lang wird der Text ja nicht sein, oder?) @Sloter: Also die Seriellen Display die ich kenne werden nicht speziell angesprochen. Man schickt nur den Text (bzw steuerzeichen) an den seriellen port. lg
____________________________________
__________________ |»»»»»SONIC««««««| ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ |
![]() |
![]() |
![]() |
#9 |
Master
![]() Registriert seit: 27.12.2000
Beiträge: 589
|
![]() ja warscheinlich muss die serielle Schnittstelle als com1 bzw. com2 angesprochen werden, obwohl sie über den Apache Server läuft.
____________________________________
ALEA IACTA EST mfg, zend |
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|