-1

私は現在、Arduinoモジュールと対話するためにJavaでプログラムを開発しています。現在、Windowsでは、これまでのところかなりうまく動作しています(期待どおりに動作しています。データを操作できます)が、Linux(私の場合はUbuntu )です。まるで逆です。Arduino と rxtx-java パッケージをインストールしました。

Arduino プログラムを使用して Arduino ボードに接続しようとしたとき、ACM モジュールのソフトリンクをシリアルまたは USB モジュールに設定する必要がありました。例えば、

ln -s /dev/ttyACM0 /dev/ttyS99

そうしないと、Arduino プログラムのリストにも表示されません。そこで、シリアル モニタ ツール ( Ctrl+ Shift+ M) を起動し、応答を待つ開始シーケンスを送信しました。そこは問題なく動きました(バイナリデータだったので正しいかどうかは確認できませんでしたが、一応答えは出ました)。

次に、私のプログラムで同じことをしようとしたので、Arduino が PC に接続され、ソフトリンクが正しく設定され、プログラムで PC にある 2 つの通常の COM ポートと共にデバイスが一覧表示されました。接続しようとしましたが、うまくいきませんでした。

エラーなし、何もない、ボードの答えがないだけです。数分待っても何も起こらなかったので、PC から切断し、答えとして 0 バイトの配列を取得しました。

この種の問題の原因は何ですか?どうすれば修正できますか?

助けてくれてありがとう

PS:プログラムは、すべてのライブラリ/依存関係が含まれたjarファイルです

編集:ハードウェアはArduino UNOボードモデルR3で、WindowsではArduino 1.0を使用してプログラムしています

4

2 に答える 2

0

あなたのシンボリックリンク/dev/ttyACM0は二重に疑わしいです:

  • 切断+再接続または電源オフ+オンにより、dev の番号が変更される場合があります。
  • ttyACM は通常、Arduino (少なくとも FT232 チップを搭載したもの) で使用されるような単純な USB シリアル コンバーターではなく、モデムを指します。私はttyUSB0のようなものを期待しています。それらについては、シンボリックリンクも必要ありません。
于 2012-02-24T23:46:47.517 に答える
0

Ubuntu パッケージからインストールした場合、問題が発生することは間違いありません。私はこれを最初に自分で試しましたが、深刻な問題があることがわかりました。IDE arduino-1.0-src.tar.gzの最新バージョンをダウンロードすることをお勧めします。

あなたはそれがソースであることに気付くでしょう、私はあなたがそれをもっと好きになると思う. または、Git からリポジトリを取得することもできます。その情報と IDE のビルド方法については、Building Arduino, Steps for First Time Setup を参照してください。Ubuntu ディストリビューションのバージョンにバグがあるという事実に加えて、それは古い時代のようなものでもあります。

于 2012-02-22T19:08:16.477 に答える