Hallo Community,
ich verwende einen Arduino Uno und einen linearen Gasdrehgriff als Poti.
Mein Poti läuft zwischen den Bereichen von 168 bis 875 Ohm.
168 -> aus
875 -> maximal Anschlag
Nun möchte ich gerne meinen Potimessbereich [168 - 875] für analogWrite
auf den Wertebereich [0 - 255] anpassen.
Mein Vorschlag:
1 | int potiWert = 0;
|
2 |
|
3 | int steuerWert = 0;
|
4 |
|
5 |
|
6 | void setup() {
|
7 | Serial.begin(9600);
|
8 | }
|
9 |
|
10 | void loop() {
|
11 |
|
12 | potiWert = (6 * potiWert + 4 * analogRead(A0))/10;
|
13 |
|
14 | steuerWert = 255*(potiWert -168)/(875-168); // skalierter Wertbereich (0-255)
|
15 | }
|
Problem:
steuerWert dient als Umrechnung in den 0-255 Bereich.
Jedoch erhalte ich hierfür Minuswerte ab einer bestimmten Größe der
Zahl.
(s. Anhang)
Ich hoff Ihr könnt mir weiterhelfen.
Vielen Dank
Gruß
Matthias