Hallo. Wie groß kann ein Pulldown maximal sein, um einen minimale "Stromverschwendung" zu realisieren ? Eingesetzt soll er an einen ATMEGA 1 Portpin werden, der über einen Taster auf +3V gezogen wird.
Taster gegen GND und nur kurz zur Abfrage den Pin als Input mit internem Pullup hochfahren, in der übrigen Zeit auf Output Low setzen. Spart mehr Strom als jeder daueraktive Pullup/down und der exakte Wert ist dann weitgehend egal.
Das Datenblatt (electrical characteristics) gibt folgendes her: Leckstrom I < 8µA, max. L-Eingangsspannung U = 0,2 * Vcc. Also: R * I < 0,2 * Vcc <=> R < 0,2*Vcc/I Arbeitest Du mit Vcc = 3 V? Wenn ja, dann R < 0,2*3 V / 8 µA = 75 kOhm. Gruß, Michael
@A.K. Hochohmige, unbeschaltete Eingänge (noch dazu mit langem Kabel dran) sind gefährlich für das Bauteil. Ich würd's nicht empfehlen. Gruß, Michael
Warum Eingang? Wie ich geschrieben habe, wird der Pin die meiste Zeit auf Ausgang programmiert, Low-Pegel natürlich. Da ist nichts offen, ausser für ein paar Takte während der Umschaltung zwischen Out/Low und In/High.
Ach ja, wenn man Angst vor Kurzschluss haben muss, dann halt 1K in Serie dranhängen.
War eben etwas abwesend, daher die relativ späte Antwort @A.K. : Das funktioniert so nicht. Ein Tastendruck muss den Pegel der Leitung am Pin auf +3V ziehen, dass der Mikrocontroller aus seinem Dornröschenschlaf (Powerdown) erwacht. (Die Dioden verhindern, dass die anderen Leitungen gleich mit auf 3V gehen). Der Taster wird so und so nur für ein paar Sekunden gedrückt. Im Anhang ist die Schaltung, soweit ich sie Fertig habe (Wiederstände nicht ernst nehmen) Was kann ich sonst noch unternehmen, um möglichst wenig Strom zu verbrauchen (im Active, Idle und Power-down-Modus) ?
@MSE : Im Datenblatt des ATMEGA16 steht "Input Leakage Current I/O Pin < 1µA" daher müsste deine Formel wie folgt heißen : R < 0.2*3V / 0.000001 A R < 600K Daher würde ich 560 KOhm verwenden ( oder villeicht doch besser 510 KOhm oder 470 KOhm ) ???
Halloe Christoph! Wenn in Deinem Datenblatt 1µA steht, kannst Du natürlich damit rechnen. Ich habe meinen Wert aus einem ATmega128 Datenblatt (Das außerdem schon etwas älter ist, wer weiß, vielleicht haben sie den Wert ja verändert...). Allerdings würde ich mit dem Widerstandswert doch deutlich unter dem berechneten Grenzwert bleiben, damit der Controller den entsprechende Pegel auch wirklich sicher erkennt. Auch bloßes ausprobieren, ob es eben so geht, ist hier nicht verlässlich: Mach Dir klar, dass der Leckstrom bei Deinen Testbedingungen (vielleicht 20°C und eine bestimmte Luftfeuchte) ein anderer ist als im Sommer bei 36°C Umgebungstemperatur und 80% Luftfeuchte. (Die Luftfeuchte beeinflusst natürlich nicht den Chip von innen aber kann evtl. zusammen mit Dreck auf der Platine den Stromfluß erhöhen.) Gruß, Michael
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.