Esempio n. 1
0
        // Callback function that plots a data point for ADC 1 and ADC 2
        private void OnPlotDataPoint(ReceivedCommand arguments)
        {
            var time    = arguments.ReadFloatArg();
            var analog1 = arguments.ReadFloatArg();
            var analog2 = arguments.ReadFloatArg();

            _chartForm.UpdateGraph(time, analog1, analog2);
        }
Esempio n. 2
0
        // Callback function that plots a data point for the current temperature, the goal temperature,
        // the heater steer value and the Pulse Width Modulated (PWM) value.
        private void OnPlotDataPoint(ReceivedCommand arguments)
        {
            var time        = arguments.ReadFloatArg();
            var currTemp    = arguments.ReadFloatArg();
            var goalTemp    = arguments.ReadFloatArg();
            var heaterValue = arguments.ReadFloatArg();
            var heaterPwm   = arguments.ReadBoolArg();

            _chartForm.UpdateGraph(time, currTemp, goalTemp, heaterValue, heaterPwm);
        }
        // Callback function To receive the plain text float series from the Arduino
        void OnReceiveSeries(ReceivedCommand arguments)
        {
            if (_receivedItemsCount % (SeriesLength / 10) == 0)
            {
                Common.WriteLine(_receivedItemsCount + " Received value: " + arguments.ReadFloatArg());
            }
            if (_receivedItemsCount == 0)
            {
                // Received first value, start stopwatch
                _beginTime = Millis;
            }

            _receivedItemsCount++;
            _receivedBytesCount += CountBytesInCommand(arguments, false);
        }
Esempio n. 4
0
        // Callback function To receive the plain text float series from the Arduino
        void OnReceivePlainTextFloatSeries(ReceivedCommand arguments)
        {
            _receivedBytesCount += CountBytesInCommand(arguments, true);

            var count         = arguments.ReadInt16Arg();
            var receivedValue = arguments.ReadFloatArg();


            if (count != _receivedItemsCount)
            {
                Console.WriteLine("Values not matching: received {0} expected {1}", count, _receivedItemsCount);
            }
            if (_receivedItemsCount % (SeriesLength / 10) == 0)
            {
                Console.WriteLine("Received value: {0}", receivedValue);
            }
            if (_receivedItemsCount == 0)
            {
                // Received first value, start stopwatch
                _beginTime = Millis;
            }
            else if (count == SeriesLength - 1)
            {
                // Received all values, stop stopwatch
                _endTime = Millis;
                var deltaTime = (_endTime - _beginTime);
                Console.WriteLine("{0} milliseconds per {1} items = is {2} ms/item, {3} Hz",
                                  deltaTime,
                                  SeriesLength,
                                  (float)deltaTime / (float)SeriesLength,
                                  (float)1000 * SeriesLength / (float)deltaTime
                                  );
                Console.WriteLine("{0} milliseconds per {1} bytes = is {2} ms/byte,  {3} bytes/sec, {4} bps",
                                  deltaTime,
                                  _receivedBytesCount,
                                  (float)deltaTime / (float)_receivedBytesCount,
                                  (float)1000 * _receivedBytesCount / (float)deltaTime,
                                  (float)8 * 1000 * _receivedBytesCount / (float)deltaTime
                                  );
                _receivePlainTextFloatSeriesFinished = true;
            }
            _receivedItemsCount++;
        }
 // Callback function To receive the plain text float series from the Arduino
 void OnReceivePlainTextFloatSeries(ReceivedCommand arguments)
 {
     if (_receivedPlainTextCount % (SeriesLength / 10) == 0)
     {
         Console.WriteLine("Received value: {0}", arguments.ReadFloatArg());
     }
     if (_receivedPlainTextCount == 0)
     {
         // Received first value, start stopwatch
         _beginTime = Millis;
     }
     else if (_receivedPlainTextCount == SeriesLength - 1)
     {
         // Received all values, stop stopwatch
         _endTime = Millis;
         Console.WriteLine("{0} milliseconds per {1} items = is {2} ms/item", _endTime - _beginTime, SeriesLength, (_endTime - _beginTime) / (float)SeriesLength);
         _receivePlainTextFloatSeriesFinished = true;
     }
     _receivedPlainTextCount++;
 }