Exemplo n.º 1
0
 public static double[,] DecodeGyroscopeSamples(string bits)
 {
     // Each packet contains a 16 bit timestamp, followed by 9, 16 bit values representing 3 "xyz" samples.
     double[,] samples = new double[Constants.MUSE_GYROSCOPE_SAMPLE_COUNT, Constants.MUSE_GYROSCOPE_CHANNEL_COUNT];
     for (int i = 0; i < Constants.MUSE_GYROSCOPE_SAMPLE_COUNT; i++)
     {
         for (int j = 0; j < Constants.MUSE_GYROSCOPE_CHANNEL_COUNT; j++)
         {
             samples[i, j]  = PacketConversion.ToInt16(bits, 16 + (((i * Constants.MUSE_GYROSCOPE_CHANNEL_COUNT) + j) * 16));  // Initial offset by 16 bits for the timestamp.
             samples[i, j] *= Constants.MUSE_GYROSCOPE_SCALE_FACTOR;
         }
     }
     return(samples);
 }