Hallo,
nach deiner Messung schreibst du den Getadc-Wert an die aktuelle Position (also der Index) im Array. Dann erhöhst du aktuelle Position.
Hast du eigentlich immer eine absolut konstante Anzahl von Messungen pro Sekunde? Ansonsten hast du bei der Max()-Funktion noch das zusätzliche Problem, dass du einerseits dein Array so groß machen musst, wie maximal Messungen kommen könnten.
Alles Zusatzaufwand gegenüber deiner Methode.
Wenn es zeitkritisch ist und viele Werte kommen würde ich auf jeden Fall deine Methode vorziehen.
Wie schon geschrieben: Bei deiner Methode verteilst du den Aufwand über die ganze Sekunde und hast den Wert nachher sofort verfügbar. Bei der Max()-Funktion hast du keinen Aufwand während der Sekunde, dafür am Ende jede Menge.Zitat von TobiasBlome
Wenn die Anzahl der Messungen konstant ist, brauchen beide Methoden dieselbe Anzahl an Vergleichen. Bei variabler Anzahl musst du das Array von oben befüllen, sprich mit dem höchsten Index anfangen. Du kannst bei der Max()-Funktion nämlich das erste Element des Arrays angeben, ab dem das Array druchsucht wird.
Gruß
Rolf






Zitieren

Lesezeichen