rs232 funktioniert mit Hterm aber nicht mit PHP

#2655688
Lesenswert?

Hello,
mein uC sendet alle 1s einen Test character. Mit HTerm kann ich Baudrate 
auf 19200 stellen und die restlichen settings auf 8N1. Das Testzeichen 
kann ich super lesen. Wenn ich das selbe mit PHP machen will (php5.2 
unter winxp) dann empfängt er zwar sekündlich ein Zeichen, ist aber 
Müll. Sieh also nach falsch eingestellten settings aus. Wenn ich in der 
systemsteuerung nachsehe, stehen dort die richtigen settings drinn und 
in php kann ich keine settings angeben...   weiß jemand rat?

hier mein code:
1
$fd = dio_open('COM7', O_RDWR | O_NOCTTY | O_NONBLOCK );  
2
if (!($fd)) {echo "error";exit;}
3
do  {
4
$data = dio_read($fd, 1);
5
echo $data;
6
}
7
while (!($data=="k"));

Die Variante mit
1
$fp2 = fopen ("COM7", "r+");
2
do  {
3
  $data=fgets($fp2, 1);
4
echo $data;
5
}

hab ich auch schon probiert, da kommt gar nix an. nichtmal müll.
#2656125
Lesenswert?

Hallo!
Danke dir! Hatte vergessen dazuzuschreiben, dass ich eh apiert hab dass 
es tcsetattr unter win nicht gibt. mit exec mode ging's dann.

falls es noch wen interessiert: tippt man nur mode (command line) dann 
sieht man die aktuellen einstellungen. Und: um die einstellungen mit 
"exec mode..." zu ändern musste ich wirklich COM7 und nicht com7 
schreiben.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren