// 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); }
// Callback function To receive the plain text float series from the Arduino void OnReceivePlainTextFloatSeries(ReceivedCommand arguments) { if (_receivedPlainTextCount % 100 == 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++; }
// 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); }
// Callback function To receive the plain text float series from the Arduino void OnReceivePlainTextFloatSeries(ReceivedCommand arguments) { _receivedBytesCount += CountBytesInCommand(arguments, true); if (_receivedItemsCount % (SeriesLength/10) == 0) Console.WriteLine("Received value: {0}",arguments.ReadFloatArg()); if (_receivedItemsCount == 0) { // Received first value, start stopwatch _beginTime = Millis; } else if (_receivedItemsCount == 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 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); }