2016-07-22 5 views
0

ルータに接続されたクライアントデバイスがあります(私のルータはopenwrt、debianベースのlinuxで動作しています)。だから基本的に私は/エコー "F"文字を送信する場合、デバイスはDCモータをオンになります。ジョブは、このコマンドを使用して、PHPファイル私はjavascriptので(同様の概念)をそのコードを変更するにはどうすればよいユーザーが矢印キーを押している間はコマンドを実行しますか?

shell_exec('echo "F" > /dev/ttyACM0') 

を使用して行われていること

私は上の矢印のキーボードボタンを押すと、それを保持している限り、それは "F"文字をエコーし​​ます。 UP矢印キーボードボタンを離すと、キャラクターがエコーされなくなります。
ありがとう

+0

をそのままPHPファイルを保持し、asyncronous通話を行うことができますなら、私に教えてください結果

<div id="result_box"></div> 

を表示します。あるいは、nodejsのようなリアルタイムライブラリを使用してください。現在のところ、あなたができる最速の(ただし華麗ではない)のは、javascriptからPHPスクリプトへ**非同期的なHTTPリクエスト**を実行することです。 PHPスクリプトからリクエストを取得し、それを精緻化してコマンドを実行し、PHPからjavascriptスクリプトに成功またはエラーを返します。 – briosheje

+0

私は自分の答えを追加しました。それがあなたに役立つかどうか教えてください –

答えて

0

このようにjqueryを使用してこれを実現できます。

<script> 
    $(document).ready(function() { 

     $(document).keydown(function(e) { 

      if(e.which == 38) { 
       $("#result_box").html('>> F '); 
      } 
     }); 

     $(document).keyup(function(e) { 

      if(e.which == 38) 
       $("#result_box").html('>> F '); 
      } 
     }); 
    }); 
</script> 

HTML、それはあなた

関連する問題