Hallo Leute, ich beschäftige mich relativ neu mit dem Thema µC und wollte nun mal ein kleines Programm schreiben welches nach der Betätigung eines Mikroschalters unter anderem eine LED für eine gewisse Zeit einschaltet. Also eigentlich nix wildes. Da das ganze über Batterie gespeist werden soll macht es natürlich Sinn den µC (es handelt sich um einen ATtiny 85) wenn er nicht gebraucht wird in den Sleep zu schicken. Auch dies ist wohl kein Problem. Bei dem Eingang PB4 welchen ich dazu nutzen möchte muss ich ja den internen PullUp einschalten (oder nicht ?) Ich habe aber irgendwo gelesen dass die internen PullUps der Eingänge schon recht viel Strom verbrauchen, daher sollte man im Sleep Betrieb die auch so weit möglich abschalten. Dies kann ich für den Eingang welchen ich als Interrupt nehmen will ja nicht machen. Daher meine Frage wie viel Strom zieht denn der interne PullUp ? Nach meinem Verständnis kann der ja so oder so nur Strom ziehen wenn der Mikroschalter betätigt ist, also der Eingan auf Low liegt. Liegt der Eingang auf High kann ja eigentlich annähernd kein Strom fließen, sonst wäre der Eingang ja auf Grund des Spannungsabfalls am PullUp quasi nicht mehr High. Was also ist der richtige Weg das ganze möglichst Stromsparend mit nem externen Interrupt über den Mikroschalter zu realisieren ? Gruß Christian
:
Gesperrt durch Moderator
Christian schrieb: > Was also ist der richtige Weg das ganze möglichst Stromsparend mit nem > externen Interrupt über den Mikroschalter zu realisieren ? Das mit dem Pullup siehst du genau richtig. Das, was du irgendwo gelesen hast, ist Unsinn. Was man nicht machen darf, ist die Eingänge einfach offen lassen. mfg.
:
Bearbeitet durch User
Hi, Pull-Up macht auf jeden Fall Sinn. Laut Datenblatt haben die beim Attiny mindestens 20kOhm, heißt bei 5V frisst der während du den Taster dann drückst (Den musst du dann natürlich gegen GND schalten) I=U/R höchstens 0,25mA.. Aber halt nur während du eben den Taster drückst. Außerdem Lässt sich der Attiny per Interrupt aufwecken; wie sich das mit dem Pin-Level verhält weiß ich allerdings nicht. Evtl. brauchst du dann nen externen Pull-down und schaltest gegen VCC. Im Sleep Mode zieht der Chip unter einem uA. So würde ich die Sache angehen. Datenblatt wälzen, Tutorials ansehen und dann findest du schon raus wie das läuft. Learning by doing Grüße Chrissi
Christian schrieb: > Da das ganze über Batterie gespeist werden soll macht es natürlich Sinn > den µC (es handelt sich um einen ATtiny 85) wenn er nicht gebraucht wird > in den Sleep zu schicken. Auch dies ist wohl kein Problem. > Bei dem Eingang PB4 welchen ich dazu nutzen möchte muss ich ja den > internen PullUp einschalten (oder nicht ?) Eine Schaltung mit ext. Pullup-Widerstand kann dann sinnvoll sein, falls der Taster auch blockieren kann, bzw. im Schlafmodus aktiv bleibt. Beitrag "Re: EIN-AUS mit Taster per Interrupt, ATtiny25 o.ä."
>Eine Schaltung mit ext. Pullup-Widerstand kann dann sinnvoll sein [...]
Hm. Ich frag mich gerade, was denn ein externer Pullup-Widerstand
prinzipiell anders machen soll als ein interner? Oder begründet sich
Deine oben zitierte Aussage nur in der Tatsache, dass der Wert des
internen Pullups eine eher vage Größe ist, wohingegen jener eines
externen beliebig gewählt werden kann und diesen dann auch (z. B. als
Metallfilmwiderstand) mit hoher Genauigkeit besitzt?
Oder gibt es einen weiteren Grund, den ich nicht sehe?
LostInMusic schrieb: > Oder gibt es einen weiteren Grund, den ich nicht sehe? Besonders hohe Genauigkeit benötigt ein Pullup nicht. Ob der 0,1% oder 10% abweicht, ist vollkommen egal. Entscheidend ist, dass man extern einen wesentlich kleineren Widerstand auswählen kann, was die Störempfindlichkeit herabsetzt. Ob das nun besonders hohe Qualität oder Paranoia ist, mag jeder selbst entscheiden. mfg.
>Entscheidend ist, dass man extern einen wesentlich kleineren Widerstand >auswählen kann, was die Störempfindlichkeit herabsetzt. Also in der Schaltung, die in dem oben von "m.n." verlinkten Thread "Re: EIN-AUS mit Taster per Interrupt, ATtiny25 o.ä." vorgestellt wird, benutzt der Autor einen 2M2-Widerstand als Pullup. Oder besser gesagt zwei 2M2-Widerstände, die einen Spannungsteiler bilden. Diese Widerstände sind also deutlich größer, also hochohmiger als die internen Pullups beim AVR. Hat der Autor dieser Schaltung damit dann die Störempfindlichkeit heraufgesetzt? Welchen Sinn ergibt das?
Wenn es Dich stört, daß durch den Pullup Strom fließt, wenn sich jemand auf die Taste setzt, dann kannst Du bei Dauerdruck den Pullup abschalten und per Watchdog-Interrupt z.B. alle 1s nachsehen, ob der immer noch draufsitzt.
LostInMusic schrieb: > Hat der Autor dieser Schaltung damit > dann die Störempfindlichkeit heraufgesetzt? Welchen Sinn ergibt das? Ja, der Eingang ist deutlich störempfindlicher. Ich kann mir die Schaltung nur so erklären, das der Autor den ohnehin sehr geringen Leckstrom des Eingangs ( typ. < 0,05µA, max. 1µA lt. Datenblatt) noch weiter herabsetzen möchte. Der Preis für den noch etwas geringeren Leckstrom würde ich nicht zahlen wollen, denn der so beschaltete Eingang ist natürlich sehr störempfindlich.
:
Bearbeitet durch User
LostInMusic schrieb: > Oder besser gesagt zwei 2M2-Widerstände, die einen Spannungsteiler > bilden. Es geht nicht um einen Spannungsteiler! Der eigentliche Pullup-Widerstand ist R3; R2 und C1 bilden einen Tiefpass, der Störungen sehr stark filtert. > Diese Widerstände sind also deutlich größer, also hochohmiger > als die internen Pullups beim AVR. Hat der Autor dieser Schaltung damit > dann die Störempfindlichkeit heraufgesetzt? Kleine Widerstände senken die Störempfindlichkeit, sofern die Störung selbst recht hochohmig bleibt. Insofern sind kleine Widerstände im Allgemeinen nicht verkehrt. Aber: > Welchen Sinn ergibt das? In der gezeigten Schaltung sorgt R2 mit seinen 2M2 dafür, daß die Störung immer hochohmig eingekoppelt wird; der für Störimpulse recht niederohmige C1 bildet hält diese in Verbindung mit R2 wirksam vom µC-Eingang fern. Die Stromaufnahme ist selbst bei geschlossenem Kontakt sehr gering. Bei den anderen Schaltungen liegt vor dem Eingang ein Tiefpass mit 10k und 100nF, der unabhängig vom verwendeten Pullup-Widerstand Störungen sehr stark unterdrückt. Da ist der verwendete Widerstand zweitrangig (einmal intern ca. 30-50k und einmal weiter unten extern 1M). Matthias Sch. schrieb: > denn der so beschaltete Eingang ist natürlich sehr > störempfindlich. Was ist denn daran 'natürlich'? Hast Du schon mal Schaltungen für Batteriebetrieb gebaut?
LostInMusic schrieb: > Also in der Schaltung, die in dem oben von "m.n." verlinkten Thread > "Re: EIN-AUS mit Taster per Interrupt, ATtiny25 o.ä." Diese Schaltung weicht vom Mainstream ab und wurde hier schon äusserst kontrovers diskutiert. Ich hoffe, ich habe mich diplomatisch genug ausgedrückt. Ohne irgend jemandem zu nahe zu treten. mfg.
Thomas Eckmann schrieb: > LostInMusic schrieb: >> Also in der Schaltung, die in dem oben von "m.n." verlinkten Thread >> "Re: EIN-AUS mit Taster per Interrupt, ATtiny25 o.ä." > > Diese Schaltung weicht vom Mainstream ab und wurde hier schon äusserst > kontrovers diskutiert. > Ich hoffe, ich habe mich diplomatisch genug ausgedrückt. Ohne irgend > jemandem zu nahe zu treten. Das hast Du gut formuliert ;-) Vor genau 30 Jahren hatte ich eine Schaltung veröffentlicht, bei der ein µC neben einer reziproken Frequenzmessung auch noch das 7-Segment LED-Display per Multiplex angesteuert hatte. Prompt kam ein wüst schimpfender Leserbrief, dessen Autor meinte, die 7-Segmentansteuerung habe man gefälligst mit einem fertigen ICM7208 durchzuführen. Ich war eigentlich froh, diesen nicht mehr verwenden zu müssen, da beim Einschalten immer Müll angezeigt wurde. Ferner wäre es meine Pflicht gewesen, einen 8051 statt eines 6511 zu verwenden. War das ein dummer Hund! Ein anderer meckerte 'rum, daß man ja garkeine Torzeit einstellen könne und wollte deshalb die Rechnung nicht bezahlen. Noch ein dummer Hund! "War ich, kenn ich, weiß ich schon" ;-)
m.n. schrieb: > Was ist denn daran 'natürlich'? Hast Du schon mal Schaltungen für > Batteriebetrieb gebaut? Oh ja, dutzende. Und es ist einfach Physik. Komm mit dem Finger in die Nähe des 10nF und die Schaltung erkennt Blödsinn. Siehe auch die Diskussion da im Thread. Da der Taster auch gleich daneben ist, passiert das von ganz alleine, ebenso führt ein winziger Leckstrom an den Tasterleitungen auch zur Fehlschaltung. Lass ein wenig Feuchtigkeit an den 10nF, usw. Und das Taster ohne Mindeststrom mit der Zeit unzuverlässig werden, weisst du mittlerweile. Ich nehme mal an, das du der M.N. bist, der die Schaltung da vorstellt. In den letzten anderthalb Jahren hast du vermutlich gemerkt, das die Schaltung nicht der Weisheit letzer Schluss ist. Thomas Eckmann schrieb: > Diese Schaltung weicht vom Mainstream ab und wurde hier schon äusserst > kontrovers diskutiert. Mit Recht. Das ist wirklich eine merkwürdige Schaltung. Und das wars.
Christian schrieb: > Was also ist der richtige Weg das ganze möglichst Stromsparend mit nem > externen Interrupt über den Mikroschalter zu realisieren ? einen pulldown zu nehmen und den Taster nach + zu schalten optimal am PINCHANGE Interrupt.
Joachim B. schrieb: > optimal am PINCHANGE Interrupt. Dem ist das vollkommen egal, in welche Richtung er wackelt. mfg.
Thomas Eckmann schrieb: > Dem ist das vollkommen egal, in welche Richtung er wackelt. weiss ich nur die /INT wollen nach unten und brauchen pullups, die PCINT kann man wählen.
Joachim B. schrieb: > Thomas Eckmann schrieb: >> Dem ist das vollkommen egal, in welche Richtung er wackelt. > > weiss ich nur die /INT wollen nach unten und brauchen pullups, die PCINT > kann man wählen. /INT-Eingänge brauchen in der Regel negative Pegel bzw. Flanken. AVRs haben allerdings INT-Eingänge, die wie die PCINT-Eingänge beide Flanken erkennen können und zudem noch einen statischen '0'-Pegel. Das wird im Register MCUCR konfiguriert. Daher ist es egal, ob pullup oder pulldown. Christian schrieb: > Was also ist der richtige Weg das ganze möglichst Stromsparend mit nem > externen Interrupt über den Mikroschalter zu realisieren ? Ich hoffe, Du hast die Schaltung mittlerweile fertig aufgebaut und freust Dich, daß Alles wunschgemäß funktioniert.
Joachim B. schrieb: > einen pulldown zu nehmen und den Taster nach + zu schalten Warum? Ich schalte Kontakte immer gegen GND. Störungen (elektrostatische Entladungen) gegen GND sind im allgemeinen harmloser, als sie auf die VCC aufzumodulieren. Und bei Montagefehlern wird nicht die VCC kurzgeschlossen.
:
Bearbeitet durch User
Beitrag #5176768 wurde von einem Moderator gelöscht.
Beitrag #5176796 wurde von einem Moderator gelöscht.
Dieser Beitrag ist gesperrt und kann nicht beantwortet werden.