Hallo Leute
die Kapazität zwischen 1nf und 10nf möchte ich mit einen Atmega48
mikrocontroller messen aber ohne einen externalen Timer. Einfach mit
zwei Widerstände. Schauen Sie bitte den Schaltplan. Kapazität von
gezeichneten Kondensator ist zu messen. Am anfang werde ich PB0 als
Eingang definieren, Strom fließt Über R2 und C, und Kondensator wird
eladen,(Wegen ein internal widerstand für 1M fließt kein strom in mikro
rein). Ladezeit wird mit dem Timer0 gemessen.Dann wird PB0 als Ausgang
definiert und da 1M nicht mehr da ist, wird der kondensator über 1K
widerstand entladen. Gemessende Kapazität soll dann später auf einen
LCD(PORTC)gezeigt werden. Meine Frage ist ob es möglich ist. Sieht
jemand irgend ein Problem in dem Fall?
Grüße
Yalda
Die Ladespannung würde ich nicht fest an Vcc legen, sondern an einen
anderen µC Pin. Dann kann man laden - entladen dadurch steuern, dass man
diesen (Ausgangs-) Pin auf 0 oder 1 legt.
das geht schon...
wenn du die messung nicht extrem genau brauchst, so gehts noch
einfacher:
nur der c an nen pin :
out:0 -> c entladen
in+pullup -> c lädt auf
poll/zählschleife -> zeit messen, bis pin auf hi geht
fertisch
erstmal danke für alle Antworten.
Aber wird nicht viel Strom beim Entladen auf micro fließen besonderes
wenn man kein außeren Wiederstand benutzt?
Yalda
im prinzip ja..
bei 10nf ca 100ma 1us lang...das macht dem port keine sorgen
aber dir..? dann mach 100 ohm an den port, somit max. 50ma möglich, das
entspricht dann dem db
Ich habe sowas mal gemacht.
Genau wurde dann, als ich 2 Kondensatoren verwendet habe. Den, den Du
messen willst, und einen Referenzkondensator.
Einmal wurde der eine, einmal der andere aktiviert, indem er auf Masse
geschaltet wurde.
Habe ich zb 1.0nF als Referenz und messe ich einmal 3ms und beim
Messkondensator 4.5ms, so ist der zu messende:
4.5/3*1nF=1.5nF
pq
Nein, Ich möchte die Kapazität auf meinem LCD so schreiben. 1,001 nF
oder 1001 pF. Jetzt sehe ich die Kapazität ungenau in mein LCD, dass
heißt die letzte Zahlen bleiben nicht konstant in LCD und ändern sich
ständig. Zum Beispiel : 1,001 nf nach 100ms 1,003 nf und... . Ic wollte
entdecken ob es mein Quellcode Problem ist oder Hardwareproblem. Bist du
Fehlerrechnung Lehrer? Ich bin nicht gut in Fehlerrechnung, deswegen
kein Ahnung 0,1% 0der 0.001 ;)
Bei Genauigkeiten gibt es in solchen Fällen immer zwei Angaben: eine
relative Genauigkeit und eine absolute. Also beispielsweise 0,1% vom
angezeigten Wert +/+ 10pF. Denn schon durch den Anschluss einen
Kondensators an den Controller bist du mit einer parasitären und wohl
kaum sonderlich konstanten Kapazität von mindestens 10pF dabei. Das
macht eine Angabe von 1,001nF eher fragwürdig.
Eine eigene Frage?
Dieser Thread ist über 17 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.