Hallo zusammen, ich will einen Messwert am ATMEga 644 über den AD Eingang messen. funktioniert alles soweit ganz gut. nun würde ich gerne die Kurve des Messfühlers anpassen. bis zum AD Wert von 50 soll er den Wert mit 33.333333 muliplizieren was auch noch funktioniert ab dem Wert 51 soll er den ADWert mit 30 Muliplizieren. Allerdings kommen dann ganz komische werte raus es hat den anschein, als ob er den Wert von der ersten If-Anweisung und den Wert der zweiten If Anweisung einfach hintereinander setzt ist an meiner If anweisung was falsch?
1 | if (ADCWert1 <=50) |
2 | {
|
3 | ADCFloat = ((float)(ADCWert1)*33.333333); |
4 | ADCWert1 = (short)ADCFloat; |
5 | }
|
6 | |
7 | if (ADCWert1 >=51) |
8 | {
|
9 | ADCFloat = ((float)(ADCWert1)*30); |
10 | ADCWert1 = (short)ADCFloat; |
11 | }
|