nitromethan:
bin ich hiermit richtig?:
map(value, fromLow, fromHigh, toLow, toHigh)
map(aktuellerWert, 2000, 1000, 0, 255);
Mach Dir doch ein kleines Testprogramm, dann siehst Du, wie es läuft.
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
for (int aktuellerWert=2000;aktuellerWert>=1000;aktuellerWert--)
{
Serial.print(aktuellerWert);
Serial.print(" ");
Serial.println(map(aktuellerWert, 2000, 1000, 0, 255));
}
}
void loop() {
// put your main code here, to run repeatedly:
}
OK, du mappst 1001 verschiedene Eingangswerte auf 256 verschiedene Ausgangswerte.
Dann werden je (meist) vier oder (selten) drei Eingangswerte auf einen Ausgangswert gemappt.
Nur am Ende wird nur ein einziger Eingangswert (1000) auf einen einzigen Ausgangswert (255) gemappt.
Wenn auch am Ende drei Eingangswerte (1002,1001,1000) auf einen einzigen Ausgangswert (255) gemappt werden sollen, nimmst Du zum Mapping besser:
map(aktuellerWert, 2000, 999, 0, 256)
Der letzte Wert (999), der dann am Ende nur einzeln auf einen Wert (256) gemappt werden würde, ist dann außerhalb des von Dir vorgegebenen Wertebereichs (und wird von Dir dann hoffentlich nicht verwendet werden).