Berechnungsdauer messen

Hallo,
vielleicht hilft es Dir ja...

//****************************************     Laufzeit feststellen     ********************************
/**************************************************
** GuntherB                                      **
** Funktion um die Loopaufrufzeiten zu ermitteln **
** wird in der Loop aufgerufen                   **
** benötigt ca (AL * 4 + 10 )Byte RAM            **
***************************************************/
void LoopTiming(){
  const unsigned int AL = 100; // Arraylänge
  static unsigned long Timestamp[AL];
  static unsigned int Nr = 0, Min=0xFFFF, Max, Avg = 0;
  Timestamp[Nr++]=millis();
  if (Nr >= AL){  // Array voll, Daten auswerten
     for (unsigned int i = 1; i<AL; i++){
      Max = max(Max, Timestamp[i]-Timestamp[i-1]);
      Min = min(Min, Timestamp[i]-Timestamp[i-1]);
      Avg += Timestamp[i]-Timestamp[i-1];
    }
    Avg = Avg / (AL-1);
    Serial.println(F("Loop wird aufgerufen "));
    Serial.print(F("Durchschnitt "));Serial.print(Avg);Serial.println("ms");
    Serial.print(F("minimal      "));Serial.print(Min);Serial.println("ms");
    Serial.print(F("maximal      "));Serial.print(Max);Serial.println("ms");
    Min = 0xFFFF;
    Max = 0;
    Avg = 0;
    Nr = 0;
  }
}
//****************************************     Laufzeit feststellen Ende    ********************************

Gruß und Spaß
Andreas