-
- リターンデータの共通部分
- リターンデータの最初の2バイトは、常に0xFC、0xFFとなっています。
- (ちなみに、コマンドデータでは、常に2バイトとも0xFFです。)
- IDナンバーデータは、この応答をおこなっている機器自身のIDナンバーです。
- 4th dataは、コマンドステータスと呼ばれるデータです。
-
- コマンドステータスについて
- コマンドステータスは、被制御機器が受信した制御コマンドに対して、どのような処理、
- 応答をおこなうかを示すものです。
- このデータの下位3ビット(D2,D1,D0)で示される意味は以下のとおりです。
-
- <cmd status = 1>(D2=0,D1=0,D0=1)
- コマンドが機器内にインプリメントされていない(処理機能を持たない)ことを示します。
-
- <cmd status = 3>(D2=0,D1=1,D0=1)
- コマンドを受理し、実行処理をおこなったことを表します。
- (すでに、そのコマンドの期待する状態になっていた場合も、実行が行われたとみなし、
- この値を返します。一部の機器の一部のコマンドでは、後述する5の値を返す場合があります)
-
- <cmd status = 4>(D2=1,D1=0,D0=0)
- コマンドを受理し、実行処理をおこなっていることを表します。
- (実行処理が未完了であることを示します。)したがって、通常は、この値が返ってきた時は、
- つぎの処理シーケンスに移らず、待つ必要があります。
- どのくらい待つのかは、このデータのD6ビットの値が0になるまでです。
- すなわち、この値が4の時は、D6ビットは、必ず1になりますので、それ以降は、制御処理を
- 行わないようなコマンドを出力し、その応答中のこの4th dataのD6ビットが0に変化したか
- どうかをチェックし、0になったら、次のシーケンス処理をおこなうような処理を書きます。
- (ただし、一部の機器では、この応答データを正しく返さないものがありますので、そのような
- 場合は、適当に時間をおいて、つぎの処理をおこなうという工夫が必要です。)
- <cmd status = 5>(D2=1,D1=0,D0=1)
- 5の時は、コマンドの実行条件が整っていないために、実行できないことを示します。
- この応答の場合には、ユーザーにエラーメッセージを出したり、適切な処理をおこなうことに
- なります。
|