ADC Wert Ausgabe per Software "nachziehen"?

Gast #1987654
Lesenswert?
• ▲
▼
Hallo,

ich gebe mir auf ein Display etwa 4x pro Sekunde eingelesene ADC Werte 
aus.
Es handelt sich um eine Spannung die in mV ausgegeben wird.

Das klappt soweit nur gibt es einen optischen Schönheitsfehler. Die 
Anzeige springt zwischen

5014
5000
4986

OK 14mV ist wohl meine Auflösung pro ADC Schritt.

Gibt es eine Möglichkeit das die Anzeige sich selber in 1mV Schritten 
"nachzieht"?

5000, 5001, 5002, 5003, 5004, 5005 usw.

Beste Hohoho Grüße, AVRli...
#1987709
Lesenswert?
• ▲
▼
AVRli schrieb:

> Gibt es eine Möglichkeit das die Anzeige sich selber in 1mV Schritten
> "nachzieht"?

Sicher
Mach eine Variable, die enthält den Wert der anzuzeigen ist (die Var ist 
neu), nennen wir sie displayValue
Und dann gibt es noch eine Variable, die den neuen Wert enthält (die Var 
hast du schon), nennen wir sie mal measuredValue

und anstelle dass du wie bisher measuredValue einfach aufs Display 
klatscht ...
1
   showValue( measuredValue );

... machst du
1
   if( measuredValue > displayValue )
2
     displayValue++;
3

4
   else if( measuredValue < displayValue )
5
     displayValue--;
6

7
   showValue( displayValue );
und schon führst du den angezeigten Wert schön langsam dem Messwert 
hinterher. Bei groben Sprüngen im Messwert wird es allerdings ratsam 
sein, displayValue gleich in 1 Sprung auf den Messwert zu setzen, sonst 
dauert das Nachführen sehr lange.
1
   if( measuredValue > displayValue ) {
2
     if( measuredValue - displayValue > 100 )
3
       displayValue = measuredValue;
4
     else
5
       displayValue++;
6
   }
7

8
   else if( measuredValue < displayValue ) {
9
     if( displayValue - measuredValue > 100 )
10
       displayValue = measuredValue;
11
     else
12
       displayValue--;
13
   }
14

15
   showValue( displayValue );

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.