0

オシロスコープのヘッダー ファイルで Nreadings を 1 から 2 に変更すると、1 つのセンサーから 4 バイトのデータを取得することになります。私の疑問は、これらの 4 バイトが異なる瞬間に 2 セットの 2 バイトの形式であるかどうかです。もしそうなら、私はそれらを表示する前にこれらの 2 つのセットを平均する必要がありますか?

4

1 に答える 1

0

オシロスコープ アプリケーションは、一定の間隔 (DEFAULT_INTERVALヘッダー ファイルで定義) ごとにセンサーをサンプリングし、サンプルを収集するとすぐに、NREADINGSこれらの読み取り値を含むパケットを送信します。次に、読み値カウンタがゼロにリセットされます。

したがって、 に変更NREADINGSすると2、2 サンプルごとにパケットが送信されます (2 つの読み取り値が含まれます)。サンプルのサイズは 2 バイト ( uint16_t) であるため、1 パケットあたり 4 バイトの読み取りデータが得られます。そのようなデータをどうするかは、何を達成したいかによって異なります。Oscilloscope には、BaseStation アプリケーションが受信したデータをグラフに表示する Java アプリケーションが付属しています ( README.txtを参照)。

すべてがソースコードで説明されていると思います:

/* Number of readings per message. If you increase this, you may have to
   increase the message_t size. */
NREADINGS = 10,

そしてパケット定義:

typedef nx_struct oscilloscope {
  nx_uint16_t version; /* Version of the interval. */
  nx_uint16_t interval; /* Samping period. */
  nx_uint16_t id; /* Mote id of sending mote. */
  nx_uint16_t count; /* The readings are samples count * NREADINGS onwards */
  nx_uint16_t readings[NREADINGS];
} oscilloscope_t;
于 2015-02-12T19:20:14.363 に答える