Cairol
20.08.2007, 23:09
Ich hab mir gerade das Demoprogramm vom RN-Control angeschaut und dabei etwas gefunden was ich mir nicht so ricthig erklären kann:
Hier der Code für die "Batteriespannung()"-Funktion:
'Diese Unterfunktion zeigt Batteriespannung an
Sub Batteriespannung()
Local W As Word
Start Adc
W = Getadc(6)
Volt = W * Ref
Volt = Volt * 5.2941
Print "Die aktuelle Spannung beträgt: " ; Volt ; " Volt"
End Sub
Es wird also der Wert vom ADC genommen, mit dem Referenzwert (5/1023) multipliziert und dann nochmals mit dem Faktor vom Spannungsteiler.
Das wird dann ausgegeben.
Aber was man damit in der Variable "Volt" ausgerechnet hat, ist doch nicht die Batteriespannung sondern nur die Spannung an dem 22k-Widerstand, oder!?
Müsste man hier nicht noch die Spannung vom 5,1k-Widerstand addieren? :?:
EDIT:
Da ja erst nach der Verpolungs-Schutzdiode gemessen wird, müsste man die Spannung die an der Diode abfällt eigentlich auch noch dazuaddieren. (Sind lt. Datanblatt wohl ca. 1 Volt)
Hier der Code für die "Batteriespannung()"-Funktion:
'Diese Unterfunktion zeigt Batteriespannung an
Sub Batteriespannung()
Local W As Word
Start Adc
W = Getadc(6)
Volt = W * Ref
Volt = Volt * 5.2941
Print "Die aktuelle Spannung beträgt: " ; Volt ; " Volt"
End Sub
Es wird also der Wert vom ADC genommen, mit dem Referenzwert (5/1023) multipliziert und dann nochmals mit dem Faktor vom Spannungsteiler.
Das wird dann ausgegeben.
Aber was man damit in der Variable "Volt" ausgerechnet hat, ist doch nicht die Batteriespannung sondern nur die Spannung an dem 22k-Widerstand, oder!?
Müsste man hier nicht noch die Spannung vom 5,1k-Widerstand addieren? :?:
EDIT:
Da ja erst nach der Verpolungs-Schutzdiode gemessen wird, müsste man die Spannung die an der Diode abfällt eigentlich auch noch dazuaddieren. (Sind lt. Datanblatt wohl ca. 1 Volt)