Ejemplo n.º 1
0
        void writingTimer_Tick(GT.Timer timer)
        {
            // Check if Sdcard is present
            if (!SDMemoryCard.CheckSdCard())
            {
                return;
            }

            bool[] toForce = new bool[5];
            bool   toSend  = false;

            // Check what measures have to be forced
            for (int i = 0; i < 5; i++)
            {
                if (measuresNotChanged[i] == 14)
                {
                    toForce[i] = true;
                }
            }

            // Get measurements from sensors handler
            SensorsHandler.Measurements m = sensors.GetMeasurements(toForce);

            // Update measuresNotChanged values
            for (int i = 0; i < 5; i++)
            {
                if (!m.changed[i])
                {
                    measuresNotChanged[i]++;
                }
                else
                {
                    measuresNotChanged[i] = 0;
                    toSend = true;
                }
            }

            // Produce JSON and write it on a file
            if (toSend)
            {
                byte[] data          = Json.CreateJsonMeasurements(m.x, m.y, m.temperature, m.pressure, m.humidity);
                long   numberOfTicks = Json.measureTimeTicks;
                string fileName      = new DateTime(numberOfTicks).ToString("yyyyMMddTHHmmss");

                if (!Time.IsTimeSynchronized)
                {
                    fileName += "_" + numberOfTicks;
                }

                if (SDMemoryCard.WriteFile(fileName, data))
                {
                    Debug.Print("The file: " + fileName + " has been written");
                }
                else
                {
                    Debug.Print("ERROR: the file " + fileName + " has not been written");
                }
            }
        }
Ejemplo n.º 2
0
        void persistenceTimer_Tick(GT.Timer timer)
        {
            if (mouse != null)
            {
                int x = Mouse.X;
                int y = Mouse.Y;

                if (x != lastWrittenX || y != lastWrittenY)
                {
                    String mouseData = x + " " + y;

                    if (!SDMemoryCard.WriteFile("MouseData", Encoding.UTF8.GetBytes(mouseData), true))
                    {
                        Debug.Print("ERROR while saving MouseData!");
                    }
                    else
                    {
                        lastWrittenX = x;
                        lastWrittenY = y;
                    }
                }
            }
        }