Zitat von
Carsten1234:
Wenn ich jedoch meinen Wertebereich verschiebe auf +10..+110, dann ergibt sich bei einem gelieferten Wert von 0 mit Deiner Formel folgende Berechnung:
Result:= 0 * (110 + 10) / 4095 - 10
==> Result = -10
Du musst schon die Vorzeichen beachten
Zitat von
jfheins:
Y = (X - X1) * (Y2 - Y1) / (X2 - X1) + Y1
Vorher war Y1 gleich -30 und Y2 gleich 70
(Y2 - Y1) = (70 - -30) = 100
Und am Ende + Y1 ergibt +(-30) ist gleich - 30
Jetzt: Y1 = 10 und Y2 = 110
(Beide male ist X1 gleich 0 und X2 gleich 4095 (Y ist der "Zielbereich" und X ist der "Quellbereich"))
Also:
Y = (X - 0) * (110 - 10) / (4095 - 0) + 10
Y = X * 100 / 4095 + 10