using System; using Microsoft.SPOT; using System.Threading; namespace IMULogger { public class Program { private static float[] sensorData = new float[23] { 1F, 2F, 3F, 4F, 5F, 6F, 7F, 8F, 9F, 10F, 11F, 12F, 13F, 14F, 15F, 16F, 17F, 18F, 19F, 20F, 21F, 22F, 23F }; public static void Main() { Debug.Print("\n\n START of program"); string fileName = @"\data23.txt"; Real_Time_Clock.setupRTC(); BNO055.init(BNO055.NDOF); EngrLogger.init(fileName); Thread.Sleep(120); // load the dummy data to an array, this gets saved to SD float[] IMUDataArray = new float[23]; int numLoops = 5000; // Timer start DateTime startTime = DateTime.Now; for (int i = 1; i <= numLoops; i++) { EngrLogger.saveData(fileName, sensorData); //Debug.Print("\nRead the sensor"); //IMUDataArray = BNO055.IMUReadData(); //Debug.Print("\nSave data to SD"); //EngrLogger.saveData(fileName, IMUDataArray); } DateTime endTime = DateTime.Now; TimeSpan elapsedTime = endTime - startTime; double sampleRate = 0; double elapsedSeconds = (double)elapsedTime.Ticks / (double)TimeSpan.TicksPerSecond; sampleRate = numLoops / elapsedSeconds; EngrLogger.getDirectory(); //EngrLogger.fileRead(fileName); Debug.Print("\n\n Sample Rate for " + numLoops.ToString() + " samples = " + sampleRate.ToString("f1") + " Samples/second"); Debug.Print("\n\n END of program\n"); } } }