Im Übrigen wundert mich, wieso die Messung mit dem Demo-Code überhaupt läuft, denn es wird ja nie Pina.6 als Input konfiguriert...
Könnte da mal jemand Licht ins Dunkel bringen?
Gruß,
Cairol
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:
Es wird also der Wert vom ADC genommen, mit dem Referenzwert (5/1023) multipliziert und dann nochmals mit dem Faktor vom Spannungsteiler.Code:'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
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)
Im Übrigen wundert mich, wieso die Messung mit dem Demo-Code überhaupt läuft, denn es wird ja nie Pina.6 als Input konfiguriert...
Könnte da mal jemand Licht ins Dunkel bringen?
Gruß,
Cairol
Gemessen wird die Spannung über dem 5k. Dann wird diese Spannung mit dem Spannungsteiler-Faktor 5,nochwas multipliziert, um die tatsächliche Gesamtspannung zu erhalten. Dies ist dann die Spannung, die über 22k UND 5k abfällt. Also die volle Batteriespannung minus die Diodenspannung.
Wenn man eine AD-Messung durchführt, wird der Pin dafür automatsich zum Eingang.
Ah, jetzt hab ichs kapiert.
Ich hab mich schon gewundert wie man bei 5,1k und 22k auf einen Faktor von 5,2941 kommt, obwohl rein rechnerisch 22k nur 4,XX mal größer sind als 5,1k.
Beim Faktor in der Demo ist die Spannung am 5,1k also schon mit eingerechnet.
Echt clever...da muss man erstmal drauf kommen!
Lesezeichen