赤外線通信を直接操作しようと思って作ったプログラムです。
BIOS 1.18 の赤外線APIがかなり良いいので、直接操作する必要がなくなってしまいました。
今後のために、一応残しておくことにします。
赤外線LEDのON/OFF制御方法はかなりエレガントだと思います。（自画自賛ですが(^^;）

このテストプログラムは、片方のP/ECEで特定のタイミングで赤外線LEDをON/OFFし、
もう片方のP/ECEで受光したときに同じタイミングで読めているか？を調べるものです。

実験した結果、LEDの点灯(実際には38KHzの点滅ですが)時間は100us〜30msが限界です。
100us未満だと点灯が検出されず、30ms以上だと、受光モジュールがアクティブ出力を維持できません。
消灯タイミングの限界は、500us〜∞です。上限はありませんが、点灯よりも反応が悪いようです。
以上をまとめると、こうなります。

点灯　　　＋−−−−＋　　　　　　＋−−−−＋
　　　　　｜　　　　｜　　　　　　｜　　　　｜
　　　　　｜　　　　｜　　　　　　｜　　　　｜
消灯−−−＋　　　　＋−−−−−−＋　　　　＋−−−−−
　　　　　：　　　　：　　　　　　：
　　　　　：←Ｔ１→：←−Ｔ２−→：

T1 min=100us, max=30ms (ただし後述するようにT1とT2の差が開くのは望ましくないので、500us以上にした方がいい)
T2 min=500us, max=∞

また、T1とT2の差が大きい場合、波形が鈍るようです。
例えば T1=100us、T2=500us とすると確かに点灯・消灯は検出されるのですが、
受光側で検出されるタイミングは T1=200us、T2=300us 程度になってしまいます。
T1・T2 共に大きな値にすることで、波形の鈍りは相対的に少なくできます。
例えば T1=4.5ms、T2=9.0ms で出力すると、受光側では T1=4.6ms、T2=8.9ms 程度になります。

Sun 2002/11/04 18:20:00 Naoyuki Sawa
