Fedora 13 に xampp をインストールしました。php シリアル クラスを使用して、シリアル ポート経由でマイクロコントローラーと通信しようとしています。私のコードはexample.phpです
include("php_serial.class.php");
$serial = new phpSerial();
$serial->deviceSet("0");
$serial->confBaudRate(9600); //Baud rate: 9600
$serial->confParity("none"); //Parity (this is the "N" in "8-N-1")
$serial->confCharacterLength(8); //Character length (this is the "8" in "8-N-1")
$serial->confStopBits(1); //Stop bits (this is the "1" in "8-N-1")
$serial->confFlowControl("none"); //Device does not support flow control of any kind, so set it to none.
//Now we "open" the serial port so we can write to it
$serial->deviceOpen();
$serial->sendMessage("*1" ); //sleep(1); // echo "hi"; $serial->deviceClose();
?>
php スクリプトは実行されますが、次の警告が表示されます。
警告: 指定されたシリアル ポートは、147 行目の /opt/lampp/htdocs/xampp/php_serial.class.php で有効ではありません 警告: ボーレートを設定できません: デバイスが設定されていないか、/opt/lampp/htdocs で開かれています/xampp/php_serial.class.php 行 241 警告: パリティを設定できません: デバイスが設定されていないか、/opt/lampp/htdocs/xampp/php_serial.class.php 行 295 で開かれています
... コマンドを使用しました: chmod 0777 /dev/ttyUSB0 許可を与えます。コマンドを使用して、apacheユーザー「prudhvi」をdialoutグループに追加しようとしました: $ usermod -a -G dialout prudhvi
しかし、うまくいきません。コマンドを使用して端末からコマンドを直接送信すると、 echo 1 > /dev/ttyUSB0 が機能し、「1」がシリアルポートに送信されます。しかし、phpを使用すると、上記の警告が表示されます。
「$whoami」を使用してユーザーの名前を確認し、そのユーザー「prudhvi」をダイヤルアウト グループに追加しました。それはまだ動作しません。みんな助けてください。