Was ist denn das für ein Display wo du da am Arduino hängen hast?
Ich merke immer wieder, dass seit ich C gelernt habe sich doch einiges weiter entwickelt hat. Oder es liegt daran das ich erst seit nem halben Jahr mit C++ arbeite.
Danke für deine Erklärungen. Hab ich bisher so noch nie gebraucht und auch i++ hat bisher noch nie Schwierigkeiten gemacht, aber man lernt ja nie aus!
Was dein Simulationscode angeht, sobald ich mein Gentoo auf systemd umgestellt habe bastel ich da gerne was in den Code rein.
ich nehme an es geht in der Hauptsache um diesen Teil
Code:
// calculate baselind from last 100 arraay cells:
//init
baseline=array[arrlen-50];
minr=array[arrlen-50]-1;
maxr=array[arrlen-50]+1;
// auto-adjust:
for (int i=arrlen-100; i<arrlen; ++i) {
// mean baseline
baseline = round ( ( 0.7*(float)array[i] + 0.3*(float)baseline ) ) +1;
// smoothed out max noise
if (array[i] >= baseline) maxr = round ( ( 0.7*(float)array[i] + 0.3*(float)maxr ) ) +1;
// smoothed out min noise
if (array[i] <= baseline) minr = round ( ( 0.7*(float)array[i] + 0.3*(float)minr ) ) -1;
}
bias = max (baseline-minr, maxr-baseline); //
// mit /ohne Rauschglättung (auskommentieren)
for (int i=0; i<arrlen; ++i) {
if( (array[i]>baseline ) && (array[i] <= baseline + bias)) array[i] = baseline ; // kleine Schwankung => auf Baseline
else
if( (array[i]<baseline ) && (array[i] >= baseline - bias)) array[i] = baseline ; // kleine Schwankung => auf Baseline
}
Lesezeichen