Hallo
Vielleich hat jemand von euch eine Idee oder Hinweis.
Problembeschreibung: Soll über COM2 (USB/UART) Daten aus MC Board
lesen/schreiben. Über Terminal klappt es wunderbar, über PHP gibts ein lese
Problem.
Der Code klappt ist aber unstabil beim lesen, liest nicht immer
Code:
<?php
//Funktion zum Einstellen der seriellen Schnittstelle
function rs232init($com,$bautrate)
{
`mode $com: BAUD=$bautrate PARITY=N data=8 stop=1 xon=off`;
}
//Funktion zum Senden
function senden($comport,$zeichen)
{
$fp = fopen ("$comport", "w+");
if (!$fp)
{
echo "Port zum Schreiben nicht geöffnet!";
}
else {
fputs ($fp, $zeichen);
fclose ($fp);
}
}
//Funktion zum Empfangen
function lesen($comport2,$sekunden)
{
$buffer = "";
$fp2 = fopen ("$comport2", "r+");
if (!$fp2)
{
echo "Port zum lesen nicht geöffnet";
}
else
{
sleep($sekunden);
$buffer .= fgets($fp2, 4096);
}
return $buffer;
fclose ($fp2);
}
// Beispielaufrufe
rs232init("com2","9600"); // Com2 öffnen mit Bautrate 9600 Baut
senden("com2","7"); // den Text “Hallo” auf den comport 2 schreiben
$lese = lesen("com2","2"); // 2 Sekunden lang Daten von Comport2
echo $lese; „“ //Variable $lese ausgeben
?>
Daher meine Frage, wie könnte man über w32api_register_function() zugreifen.
Oder gibts noch eine ander Möglichkeit (kein dio oder zusätzliche C++).
Vielen Dank in voraus