Hallo erstmal,
zu Anfang: Ich habe vor ein kleines Ladegerät zu basteln. Dafür brauche
ich auch einen ADC. Ich möchte auf 2 Kommastellen genau messen. Aber
wenn ich z.B. 2,5V anlege bekomme ich mittels Modulo: 2,1108 raus.
Irgendwie steh ich aufm Schlauch. Ich habe keine Ahnung warum der
soviele Stellen anzeigt. Momentan hab ich sowieso nen totalen BlackOut.
Irgendwie verstehe ich nicht wie Modulo die Kommastellen begrenzt. Wenn
z.B. die Zahl 4,448827364232 ist läuft meine Variable hofnungslos über
oder begrenzt Modulo das von sich aus?
Hier mal der Relevante Code. Wenn ihr mehr wollt sagt bescheid. Ist
vieleicht etwas unübersichtlich. Wenn ich morgen wieder bei klarmen
verstand bin und es nötig ist werde ich ein paar Kommentare einfügen.
1 | UZelle = ADC*10;
|
2 | mV = UZelle%2046;
|
3 | UZelle = UZelle/2046;
|
4 | _delay_ms(250);
|
5 | set_cursor(0,2);
|
6 | lcd_string("Zelle=");
|
7 | lcd_string(utoa(UZelle, ASCII, 10));
|
8 | lcd_string(",");
|
9 | if(mV <= 9)
|
10 | {
|
11 | lcd_string("0");
|
12 | }
|
13 | lcd_string(utoa(mV, ASCII, 10));
|
14 | lcd_string("V ");
|