pulseIn()
PWMベースのバイナリデータエンコーディングを処理する関数を使用しています。これは、長さが大きく異なるパルス、たとえば500usと1500usを区別するのに適しています。これは、典型的なIRリモコンの処理には十分すぎるほどです。
しかし、2つ以上のパルス長を使用できる独自のIRシステムを作成して、データ転送をより高速に実行できるようにしたいと考えています。理想的には、8進エンコーディングに8つの異なるパルス長を使用したい(例:200us、400us、600usなど)。
pulseIn()
ただし、返される値にはかなりのばらつきがあることに気付きました(+/- 10%)。少なくとも一部はIRトランスミッターおよびレシーバーモジュールによって導入されると思いますが、それを確認するのに十分な設備がありません。
その外部エラーを軽減できると仮定すると、そのpulseIn()
ような同様のパルスを区別するのに十分正確である可能性がありますか?