Median of Ultra Soniv values without delay

Hallo,ich bin am verzweifeln.
Ich möchte aus den werten meines US-sensors die Medianwerte haben. Sensor auslesen ist kein Problem,die Median Werte mit delay auszurechnen auch nicht,allerdings habe ich noch andere Sensoren, daher muss ich einen Delay vermeiden.

folgender code steht in der loop:

if((du < arraysizeu)&&(millis() - timeStampu > ledDelayu))
{
du= du +1;
unsigned int uS = sonar.ping();
timeStampu = millis();
bu = uS / US_ROUNDTRIP_CM;

rangevalueu = bu;

* eu= eu +1;

if(eu=25)
{

isortu(rangevalueu, arraysizeu);

int midpoint = arraysizeu/2;

cu =rangevalueu[midpoint];

USD=cu;
eu=0;
du=0;
}
} [/sup]
wobei USD das Ergebnis sein soll.
die Funktion isortu:
void isortu(int *a, int n)

{
for (int i = 1; i < n; ++i)
{
_ int j = a
;
int k;
for (k = i - 1; (k >= 0) && (j < a[k]); k--)
{
a[k + 1] = a[k];
}
a[k + 1] = j;
}
}[/sup]*
wenn ich eine gleichung wie eu=100; in die erste if schleife einfüge, und dann später per serial ausgebe,ist eu weiterhin 0(der Startweert).
Wenn ich allerdings in der ersten if schleife USD=bu schreibe gibt es den unbearbeiteten wert aus.
mfg_

Sie konten vielleicht dieser library gebrauchen - Arduino Playground - RunningMedian -

Bitte gebrauchen sie (auch) English auf die internationale seites des forums