[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:28402] Re: 赤外線通信について



村川です。

> >   まず、IrDA レベルでの通信ができてるかどうかを判断する必要があります。
> > とりあえず、PC 側で cat /dev/ircommnew0 とでもした上で irdadump を実行
> > し、pocket PC 側から適当に赤外線でデータを送ってみて、irdadump がなに
> > か出力を出すかどうか調べてみてもらえますか?
>
> 早速、手元にあった pocket PC と Palm を使用し、やってみたのですが、
> 全く反応がありませんでした。Windowsマシンで同じようにやると、
> エラーは出るものの反応はありました。
> ということは pocketPC はちゃんと何らかのデータを送っていたと思う
> のですが、irdadump が何も出力しないというのは、データを受け取って
> いないということなのでしょうか。

この問題、マシンを再起動すると、
irdadumpでデータを受信することができるようになりました。
私が作成したシリアルポートデータ送受信用プログラムを
動かし、 Ctrl + c でそのプログラムを強制終了すると、
その次から irdadump が全く動かなくなります。
その作成したシリアルポートデータ送受信用プログラムは、
非カノニカル処理を使用しているのですが、
強制終了のシグナルを受け取った際にシリアルポートの
設定を元に戻す処理を入れていなかったため、
強制終了した際にシリアルの設定がおかしくなってしまい、
その後 irdadump を実行してもまったく反応しなかったようです。
お騒がせ致しました。

なお、いまその例のプログラムは、 /dev/ttyS0 を
オープンして、上でも書いたように非カノニカル処理を
行っているのですが、どうも 待ち ができないようです。
リードで待つことができません。
irattach が動いているときに、/dev/ttyS0 をオープン
することは、ドングルをオープンしていることには
ならないのでしょうか。
何か他にも設定が必要なのでしょうか。
話が少しずれてしまいましたが。
アドバイス頂けると幸いです。
どうかよろしくお願い致します。