Forum: Mikrocontroller und Digitale Elektronik Mega32/LCD: Anzeige von Werten


von zaydo (Gast)


Lesenswert?

Moin,

gegeben ist eine Schaltung mit AVR Mega32 und LCD Dog-M, die
unterschiedliche Messwerte (Drücke, Temperaturen und Spannungen) messen
und darstellen soll.

Die Messungen erfolgen mit dem ADC des µCs. Die erste Wandlung wird
verworfen, die nächsten 4 werden gemittelt. Die gelieferten ADC-Werte
werden per gleitendem Durchschnitt (10) noch einmal 'aufbearbeitet',
bevor der tatsächliche Messwert ermittelt und angezeigt wird.
Zwischen 2 Messungen liegen ca. 0,5s.

Funktioniert auch recht gut. Es gibt nur einen kleinen Schönheitsfehler
bei sich langsam verändernden Werten: die Anzeige springt eine Zeitlang
zwischen altem und neuem Wert hin und her (z.B. Spannung 12.1 und
12.2), bis sie sich stabilisiert.

Gibt es da einen 'Standard-Trick', um das zu verhindern?


Danke, zaydo

von Ralf A. (warpnine)


Lesenswert?

Ich kenne die Auflösung deines ADCs nicht, aber vielleicht hilft es,
wenn du eine Art Hystere einbaust, also 12.2 erst anzeigen, wenn du
12.175 erreicht hast.
Geht der Wert runter, zeigst du 12.1 erst an, wenn du 12.075 erreicht
hast.
Etwas in der Art halt, könnte mir vorstellen, dass das hilft.

Ralf

von Forumsdrachen (Gast)


Lesenswert?

Na, ist doch ganz klar: In der Subroutine Deiner Ausgabe in Zeile 11 ist
ein Komma falsch gesetzt. Und außerdem fehlt das Semikolon in Zeile 25
des Hauptprogramms.

von Stephan (Gast)


Lesenswert?

Forumsdrachen:
na, wollteste das nich eher in den Timerthread schreiben ;) G

gruß
Stephan

von zaydo (Gast)


Lesenswert?

Moin,

>Na, ist doch ganz klar: In der Subroutine Deiner Ausgabe in Zeile 11
ist
ein Komma falsch gesetzt. Und außerdem fehlt das Semikolon in Zeile 25
des Hauptprogramms.

Ja, die Vermutung war naheliegend. Beide Zeilen sind aber in Ordnung.
Noch ein Tipp?

zaydo

von zaydo (Gast)


Lesenswert?

Moin Ralf,

10 bit.


>Hystere

Gute Idee. Ist dann auch recht wenig Arbeit, weil die Werte in einem
Unterprogramm eh gerundet werden.

zaydo

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.