au au au... das wird peinlich!
156 war rechnerisch absolut richtig!
der Fehler lag darin, dass der factor nicht 1023/way_nutz ist,Code:uint8_t way_rev; // Reverse-Bits uint16_t way_min = 100; // Reverenz Minimalwert uint16_t way_mid; // Reverenz Mittelstellung uint16_t way_max = 900; // Reverenz Maximalwert uint16_t way_neu; // Aufbereitete Stellgröße uint16_t way_akt; // Rohe-Potistellung uint16_t way_nutz; double factor; double x; way_akt = ADC_wert(0); if( way_akt < way_min ){ way_akt = way_min; } if( way_akt > way_max ){ way_akt = way_max; } way_akt = way_akt - way_min; way_nutz = (way_max - way_min); factor = way_nutz / 255.0000; x = way_akt / factor; way_neu = x; PORTC = way_neu;
sondern way_nutz/255.
Danke an Michael, durch seinen Tipp "DREISATZ" bin ich draufgekommen.
Vielen Danke nochmal an alle!







Zitieren

Lesezeichen