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 );
|