Stromaufnahme atmega8 zu hoch??

#3944182
Lesenswert?

Hallo. Ich habe schon gelesen, dass die delay_ms und waitMs funktionen 
mehr strom verbrauchen. Laut dieser tabelle

http://www.mikrocontroller.net/articles/Leistungsaufnahme_von_Mikrocontrollern

 soll der Verbrauch des atmega8 2,3 mA brauchen. Meiner braucht aber 
11,4 mA

Liegt das wirklich am Programm? Kann ich und darf ich die Taktzahl 
drosseln?

Danke für die Info!!
#3944184
Lesenswert?

Darko Dragojevic schrieb:
> Hallo. Ich habe schon gelesen, dass die delay_ms und waitMs
> funktionen mehr strom verbrauchen.
Mehr Strom als was?

> soll der Verbrauch des atmega8 2,3 mA brauchen. Meiner braucht aber
> 11,4 mA
Ist das nur der uC alleine oder misst du auch den Strom von 
Spannungsreglern, LEDs, usw. mit? Mit welcher Freqzenz und Spannung 
läuft dein uC?

> Kann ich und darf ich die Taktzahl
> drosseln?
Ob du kannst weiß ich nicht, du darfst es wenn der uC seine Aufgaben mit 
der gewählten Frequenz immer noch schnell genug erledigt.
#3944456
Lesenswert?

Guten Morgen!
ich habe den Strom gemessen der für die Einspeisung des atmega zuständig 
ist, also rein der uC. Ohne LED ohne taster oder LM317.

Darko Dragojevic schrieb:
> Ich habe schon gelesen, dass die delay_ms und waitMs funktionen
> mehr strom verbrauchen.

Als was?


antwort: Mehr als ohne verwendete delayfunktionen, oder ist das egal für 
den Stromverbrauch was im Quellcode steht?



Darko Dragojevic schrieb:
> Meiner braucht aber
> 11,4 mA

Bei was?

antwort: wenn ich gar nichts schalte, also der minimalverbrauch.

Wenn ich den taster drücke, dann kommen 2mA dazu, weil das ja son Pull 
resistor ist.

Danke nochmal, dass ihr mir da so weiterhelft!
#3944463
Lesenswert?

Achso, da war ja noch ne taktrate.

die ist 3684000

also knapp 4 Mio.


Es sollen nur 1 taster und 4 ausgänge genutzt werden. wie tief darf ich 
das denn stellen kann ich das auf 200.000 stellen. Das wäre ja für das 
programm immer noch klasse! ist wie gesagt nur ein taster und 4 digitale 
ausgänge...

LG aus Cuxhaven
#3944510
Lesenswert?

Darko Dragojevic schrieb:

> antwort: Mehr als ohne verwendete delayfunktionen, oder ist das egal für
> den Stromverbrauch was im Quellcode steht?

dem ATMega ist es egal, ob er mittels delay_ms Däumchen drehen soll oder 
ob er ein paar teuflisch schwierige quadratische Gleichungen lösen soll.
Der braucht da immer den gleichen Strom.

Was einen Unterschied macht, das ist, wenn man ihn zwischendurch 
schlafen legen kann. Betrachte ich mir aber deine Programmierkünste, 
dann solltest du dieses Thema aber noch verschieben. Mindestens 3 bis 4 
Monate. Und in der Zwischenzeit fleissig üben.
#3944523
Lesenswert?

Darko Dragojevic schrieb:
> Achso, da war ja noch ne taktrate.
>
> die ist 3684000
>
> also knapp 4 Mio.
>
>
> Es sollen nur 1 taster und 4 ausgänge genutzt werden. wie tief darf ich
> das denn stellen kann ich das auf 200.000 stellen. Das wäre ja für das
> programm immer noch klasse! ist wie gesagt nur ein taster und 4 digitale
> ausgänge...
>
> LG aus Cuxhaven

Einen µC sollte man nur so schnell laufen lassen wie nötig. Hier sollte 
man sich also die Frage stellen wie schnell man reagieren muss auf die 
Eingaben und wie schnell der Ausgang dann schalten soll.

Zu deinem Stromverbrauch: Was hängt denn an den Ausgängen so dran? Dann 
solltest du noch berücksichtigen, dass dein Atmega mit 4 MHz nur typisch 
2.3 mA Strom braucht, es kann aber auch locker doppelt so viel sein.
#3944534
Lesenswert?

Bei Deinen Angaben lassen sich zwei Ursachen für Stromverbrauch 
ausmachen:

Stromverbrauch der Ausgänge.
Stromverbrauch durch den Programmablauf.

Stromverbauch der Ausgänge: Da ist ganz klar, durch die Beschaltung 
bestimmt und wie die Ausgänge belastet werden. Da nichts weitres zum 
Programmablauf bekannt ist, kann  man auch nichts sagen dazu.

Stromverbrauch durch die Programmverarbeitung: Ob das Programm in einer 
Warteschleife(wait..) abläuft oder im normalen Teil, ändert das kaum 
etwas am Stromverbrauch, wenn nicht gerade an den Ausgängen 
herumgeschaltet wird.
Da ist Taktfrequenz maßgebend. Je langsamer der Takt, desto weniger 
Strom.
AVRs dürfte man sogar auf ganz niedrige Taktfrequenzen im kHz-Bereich 
einstellen.

Am Strom etwas per Takt zu sparen, ist aber Drehen am falschen Knopf.

Zum Stromsparen muss man Andres tun, das mehr für Fortgeschrittene ist:
Den Kontroller immer dann "schlafen" lassen, wenn keine Aufgabe ansteht 
und ihn von Wartezeiten befreien.

Beispiel: nicht mit "wait..." warten lassen, sondern einen Timer 
starten, der z.B. 1ms lang, ohne Programmeingriff abläuft. Dann den 
Kontroller schlafen lassen. Nach 1ms weckt der Timer den Kontroller 
wieder auf und der arbeitet die Befehle ab, die nach einer ms anstehen, 
dann kommt die nächste Schlafphase.

Erst durch diesen komplizierten Wechsel in den sleep-mode erreicht man 
effektive Stromersparnis.
Gast #3944555
Lesenswert?

Vielleicht hat er einige I/O Pins unbeschaltet gelassen und nichtmal 
Pull-Up's eingeschaltet. Das erhöht die Stromaufnahme ein wenig.

Mir kommen die 11 mA auch recht hoch vor. Im Datenblatt steht 7 mA (bei 
5V 4Mhz).
Gast #3944715
Lesenswert?

Alex W. schrieb:
> Eventuell hat er die Ports aktiviert und dabei die Pull-Ups an! Dabei
> werden über die internen Rs die VCC gegen Masse geschaltet.

Man kann die Ports nicht deaktivieren.
Schaltet man die Ports auf Ausgang, sind die Pullups immer abgeschaltet.
Die gibt es nur bei Eingangsports.
#3947023
Lesenswert?

Hallo. Frohes neues!

Also ich habe an die Ausgänge über einen Vorwiderstand Transistoren BC 
548 angesteuert. Jedoch werden die Ausgänge nicht geschaltet, wenn ich 
den Taster nicht drücke. Und wenn nichts geschaltet ist habe ich den 
hohen strom. Das bedeutet also, dass es für die Strommessung nicht von 
Relevanz ist, was da an den Ausgängen ist.

Ich werde gleich einfach ein leeres Programm aufspielen und dann 
nocheinmal messen.

Und Ausgänge mit Pulldown oder Pullup hab ich ja noch nie gehört!!

Das gibt es doch nur bei Eingängen...

Danke nochmal für die Hilfestellungen.

Meint ihr, dass ich das mit euch nicht hinbekommen könnte den uC in den 
sleepmodus zu bringen. Das kann doch nicht sooo schwer sein...

LG Darko
#3947054
Lesenswert?

So, also das eine ist die Theorie, das andere die Praxis.
Ich habe ein leeres Programm ohne if und ohne waitMs funktionen geladen, 
von 11,1 auf 10,9 mA runtergegangen.

Dann habe ich die Taktfrequerz von 3686400 auf 368640 und dann 
probehalber auf 36864 Hz runtergesetzt, also um faktor 100 
runtergesetzt.

Die stromaufnamhe blieb konstant auf 10,9 mA ohne programm und mit khz 
Taktfrequenz...

komisch oder?
#3947059
Lesenswert?

Also ich ändere die Taktfrequenz hier:

#define   F_CPU 3686400  // Taktfrequenz des myAVR-Boards
#include  <avr\io.h>    // AVR Register und Konstantendefinitionen
//----------------------------------------------------------------------
void initPorts(void)        // Unterprogramm füpr die Initalisierung
{
  //  DDRB=0x07;                      // Set Bits 0, 1 und 3 von DDRB =1 
"Ausgang"
  DDRB |= (1 << PB0);             // damit ist dann PB0 ein Ausgang
  DDRB |= (1 << PB1);             // damit ist dann PB1 ein Ausgang
  DDRB |= (1 << PB2);             // damit ist dann PB2 ein Ausgang
....

in der ersten Quellcodezeile

daneben steht auch die taktfrequenz... als kommentar
#3947065
Lesenswert?

Darko Dragojevic schrieb:
> Dann habe ich die Taktfrequerz von 3686400 auf 368640 und dann
> probehalber auf 36864 Hz runtergesetzt, also um faktor 100
> runtergesetzt.

Wie hast Du das gemacht? Denn

Peter II schrieb:
> stellen kann du überhaupt nichts. du musst einen passenden Quarz
> verbauen oder wenn vorhanden den internen Teiler verwenden.

Also so einfach den Takt auf 1/10 oder 1/100 ändern geht nicht!
Was im Programm steht, ändert den Takt nicht! Das ist nur eine 
Information für den Compiler, um  die Wartezeiten richtig rechnen und 
dann im Programm einstellen zu können.

Gruß Dietrich
#3947071
Lesenswert?

Schätze mal, dein Mega8 ist auf internen R/C-Oszillator mit 8MHz 
eingestellt. Um ihn auf 3,6MHz zu kriegen muss der Quarzoszillator per 
Fuse aktiviert werden.

Ein frisch gelieferter Mega8 taktet mit internen 1MHz und dann sind es 
nur noch 2,3mA. Beim funktionsgleichen Mega8A nur 1,8mA, beim 
pinkompatiblen Mega88PA sogar nur noch 0,8mA.
#3947075
Lesenswert?

aha, so langsam lüftet sich das Geheimnis... Ich hatte mich auch schon 
gewundert, warum die Millisekundenanzahlen nicht mit denen der realität 
übereinstimmen. 500ms im Programm sind in Wirklichkeit viel länger. Doch 
wo kann ich denn die Fuses einstellen, ich brauche für 1 Taster und 4 
ausgänge keine 8 Mhz, vielleicht 8 Khz!!
#3947194
Lesenswert?

Also ich habe da nichts dran rumgestellt. Wenn ihr das so sagt, dann 
wird das so sein. also verbraucht er mit 1 Mhz ca. 11 mA (wurde mit 2 
verschiedenen Digital Multimetern gemessen) und dann mit 8 Mhz knapp 100 
mA? Im Datenblatt sind aber deutlich niedrigere werte als 11 mA 
angegeben?

Ok wenn das nicht geht, dann sagt mir doch bitte wie ich den sleep modus 
aktiviere, dann mach ich das so
#3947214
Lesenswert?

Darko Dragojevic schrieb:
> (wurde mit 2 verschiedenen Digital Multimetern gemessen)

Nur so mal als Idee: hattest Du beim Messen hinter dem Multimeter 
(also direkt am µC) einen Stützkondensator?
Vielleicht spinnt der µC ja, wenn Du ihn über das Multimeter ohne 
Kondensator versorgst. Denn ein Multimeter hat einen Innenwiderstand, 
sodass die Spannung am µC einbricht bei den Stromspitzen, die ein µC 
beim Arbeiten erzeugt.

Gruß Dietrich
#3947276
Lesenswert?

Hallo. Sorry, dass ich an der falschen stelle die Taktfrequenz zu ändern 
versuchte. Ich wusste es nicht besser!!!! Meine Multimeter haben einen 
Innenwiderstand, die sicherlich im Gigaohmbereich liegen, und die die 
Messungen im mA Bereich sicher gut durchführen können, ohne das die 
Spannung einbricht. Aber Schwamm nun drüber.

Könnt ihr mir denn wenigesten sagen, wieso bis zu 23 IO Ports am Atmega 
8 zur Verfügung stehen können. (laut datenblatt. Ich habe nur 5, brauche 
noch 4, weil ich 4 Endschalter nachrüste, und habe keinen mehr frei. Ich 
benutze

Port B0
Port B1
Port B2
Port B6
und Port B7

Port B3 bis B5 sind für den Programmieradapter.

Wo finde ich die restlichen 15 IO Ports?

Ich hoffe das könnt ihr mir sagen. Danke!
#3947305
Lesenswert?

Hallo. Ich habe mich auch mit der 250 Seiten langen beschreibung des AT 
mega auseinandergesetzt. Dort stand drin, dass man die Ports C0 bis C5 
nur als ausgang definieren kann. Ich hatte aber überlesen, dass das die 
alternate functions, also die Zusatzfunktionen.

Ok, sollte das klappen, dass man c0 bis c3 als eingang definieren kann, 
dann hat das n Ende genommen, mit der hohen stromaufnahme, denn mit 
einem endschalter weiß die Kiste wo der motor steht und dann kann der at 
mega Spannungslos geschaltet werden und dann ist der Stromverbrauch


N U L L    K O M M A    N U L L !!!!


:-)


überlistet :-)

 PS: C7 gibt es nicht :-)
#3947323
Lesenswert?

Darko Dragojevic schrieb:
> Also ich habe da nichts dran rumgestellt. Wenn ihr das so sagt, dann
> wird das so sein. also verbraucht er mit 1 Mhz ca. 11 mA (wurde mit 2
> verschiedenen Digital Multimetern gemessen) und dann mit 8 Mhz knapp 100
> mA? Im Datenblatt sind aber deutlich niedrigere werte als 11 mA
> angegeben?
>

Auch wenn ich mir fast sicher bin, dass das auf taube Ohre stößt:

Wenn man sich bei der Taktfrequenz und bei den Ports so anstellts, wie 
hier im Thread aufgezeigt, dann solltest man nicht behaupten, dass Atmel 
falsche Daten liefert. Du wirst, wenn Du richtig suchst, schon noch 
rausfinden, wie schnell der MCU läuft und welchen Stromverbrauch er 
wirklich hat. Und das wird dann zum Datenblatt passen.
Falls Du es nicht rausfindest, dann poste Deinen ganzen Schaltplan und 
nicht nur sinnfreie "Prosa".
#3947497
Lesenswert?

Hallo. Ich behaupte nicht, dass die Pläne von Atmel falsch sind, ich 
habe lediglich behauptet, irgendwo was anderes gelesen zu haben. Mit 
einer sehr hohen Wahrscheinlichkeit, habe ich irgendwelche Informationen 
nicht gekannt oder falsch gelesen. Ich werde nun einen Schaltplan 
aufmalen und ihn hochladen.

Gruß Darko
Gast #3947514
Lesenswert?

Hi,

Bin ich denn der einzige hier, der sich unter anderem wundert über 
"Multimeter, Strom messen, Innenwiderstand Gigaohm" ?

Ein einfaches Multimeter hat so 10 Megaohm (lt. Wiki) beim 
Spannungsmessen...nicht Gigaohm. Beim Strom messen sollte der 
Innnenwiderstand alerdings etwas kleiner ausfallen...

Darko hat offensichtlich recht wenig Ahnung von allem.
Eine Fehlmessung ist somit auch nicht ausgeschlossen.

Gruß
Marvin
#3947515
Lesenswert?

Ihr könnt ja alles bekommen. Ich kann für meine nicht so hohe Kompetenz 
nichts. wenn ich alles besser wüsste als ihr zusammen, würde ich mich 
hier im Forum wohl kaum anmelden.
Und wenn ich meine Platine nicht besser beschreiben kann als 4 mal 8 cm, 
dann mach ich das nicht um hier zu chatten oder um euch zu ärgern.
Ich habe wirklich sinnvolleres noch zu tun und möchte dieses Projekt 
endlich zu ende bekommen. ich bin mir ganz sicher, wenn an meiner 
Platine ein profi was rumprogrammieren würde, würde das innerhalb von 
ganz wenigen Minuten fertig sein.
Und wenn ihr mich fragen würdet, welches Werkzeug man für den 
Bremsenwechsel eines Mercedes e klasse braucht, dann würde ich auch 
nicht irgendwelche Links schicken, in denen man erarbeiten kann welches 
Werkzeug grundsätzlich in Frage kommt und welches nicht.
Meine antwort würde beispielsweise Lauten:

-13er Maulschlüssel,
- hammer,
- 6er Imbus und
Knarre 19 MM mit Verlängerung

Und auf meine Frage wie man einen Eingang definiert bei dem atmega 8 
hätte ich eig. erwartet, soetwas wie beispielsweise:

PORTB AD001111001 = true

und nicht irgendwelche links...

Naja hoffentlich ist das bald fertig mit der Kiste
#3947520
Lesenswert?

Hallo. Danke für die Antwort. Ja selbstverständlich habe ich nicht viel 
Ahnung von der Materie. ich bin ja auch KFZ ler. Auf der anderen Seite 
habe ich mehr ahnung über uC als viele anderen, weil die noch nicht mal 
wissen was das überhaupt ist ein uC. Insofern bin ich ja nicht ganz 
dumm, auch wenn ihr das bestimmt anders seht...
Gast #3947527
Lesenswert?

Hi Darko,

Es ist nun mal so, dass es gute Tutorials gibt. Und wenn man merkt, Du 
hast diese Tutorials nicht gelesen wird der Ton gerne mal schroff.

Das Datenblatt eines uC ist eins Deiner Werkzeuge. Dieses gilt es, zu 
verstehen. Das ist nicht so einfach wie ein Maulschlüssel, aber 
notwendig.

Dein zweites Werkzeug ist deine Entwicklungsumgebung.

Deine Fehler bisher zeigen auf, dass Du wenig Ahnung hast. Unter 
anderem:
* Taktrate Deines uC einstellen
* Systembeschreibung (x x y cm)
* Wie Strom gemessen wird

Das sind Grundsatzprobleme, für die das Forum hier eher ungeeignet ist.
Wenn Du ein echtes Problem hast, wird Dir gerne geholfen.

Gruß Marv
Gast #3947530
Lesenswert?

Hi nochmal,

Zum Strom messen:
Was für ein Strommessgerät benutzt Du und wie ist es eingestellt ?

Ein Multimeter im 1A AC Messbereich wird Dir nicht viel anzeigen.
Im 100mA DC Bereich schon eher...

Gruß Marv
Gast #3947533
Lesenswert?

Und:

Auf den Abblock-C bist Du bisher nicht eingegangen und ist auch nicht im 
Schaltplan eingezeichnet...

Also 100nF und vielleicht auch 10uF parallel an die Versorgungspinne...

Und was ist eigentlich Deine Versorgung (ja, klar +5V, aber woher ?) ?

Gruß
#3947537
Lesenswert?

Ja ok, dann nehme ich das so hin, dass ich einfach zu wenig Ahnung habe 
um hier überhaupt mitzureden. Dann nutzt mir dieses Forum leider nicht 
viel. Ich dachte eigentlich, dass ich im vergleich zu anderen Mitbürgern 
sehr viel weiß im bereich der uC.

Ich benutze ein Digital Multimeter ALCRON DT 60 und stelle auf den 
Messbereich 20 mA ein DC natürlich und nicht AC. Wir haben ja keinen 
Wechselstrom

Gruß
#3947544
Lesenswert?

Die 5V bzw. 4,98 V kommen von einem LM 317T

ich möchte aber auch betonen, selbst wenn wir den Fehler finden würden, 
warum 11 mA angezeigt werden, nützt es mir wenig, weil ich es nicht 
hinbekommen würde, die taktrate oder das programm so zu umschreiben, 
dass es weniger strom frisst. Ich habe nun weitere 4 eingangsports C0 
bis C3 für die 4 Endlagenschalter vorgesehen, sodass ich nur IF 
schleifen verwenden kann im Hauptprorgamm.

Wenn ich dann die Zündung einschalte und der uC wieder mit Strom 
versorgt wird, weiß er anhand der Endlagenschalter bescheid was Sache 
ist.

Insofern danke ich euch trotzdem an einer Fehlersuche Interesse gehabt 
zu haben. Ich werde die Tage bestimmt noch mal mit konkreteren Fragen 
kommen.

Gruß Darko
Gast #3947546
Lesenswert?

Das ist ja nicht böse gemeint, aber wenn ich Dich jetzt bitten würde, 
die Fuses auszulesen, könntest Du das ?

Das ist das Handwerkszeug. Man erwartet, dass Du weißt, was Fuses sind 
und wie Du diese ausließt und einstellen kannst.

Wenn Du es kannst, mach es und stelle fest, wie Dein uC getaktet ist.
intern / extern ?

Wenn intern, welche Frequenz ?

Wenn extern, welcher Quarz ?


Schreibe ein kleines Programm, was eine LED im 1s Takt toggelt.
Stimmt die Sekunde ?

Ja, alles toll.
Nein, F_CPU an Deine Taktfrequenz anpassen.


Gruß
#3947547
Lesenswert?

Und außerdem hat dieses Messgerät neben dem Messbereich 20mA noch den 
Messbereich 2 mA und dadrüber noch den Messbereich 200uA und dadrüber 
auch noch den bereich bis 20uA (maximal) und wenn in diesem letzten 
Bereich eine ganz ungenaue Messung stattfindet, dann ok aber nicht 
mittendrin. 20 mA sind ja ein ganz normal hoher messbarer Strom für das 
Messgerät...
#3947564
Lesenswert?

Hallo nochmal. Es ist nett, dass ihr so engagiert seid. Mich haben diese 
11mA sehr viel zeit, nerven und Mühe gekostet und ich habe erfahren dass 
ich in dem Bereich uC dumm bin. ich schreibe nun das Programm so um, 
dass wenn ich den uC spannungslos mache, die Sache immernoch einwandfrei 
funktioniert. Ich möchte mich nun einfach nicht mehr nicht melden, da 
das unfair wäre, aber ich möchte jetzt nicht noch mehr Zeit in diese 11 
mA reinstecken...

bis bald bestimmt!
#3947579
Lesenswert?

Hallo Darko,

kannst du mal beschreiben was du vorhast. So wie ich das bisher 
verstanden habe möchtest du einen µC in ein KFZ einbauen und dort sollen 
4 Endschalter abgefragt werden (Verdecksteuerung?) und es geht dir um 
einen niedrigen Verbrauch damit deine Batterie nicht leer gezogen wird.

Ist es wirklich erforderlich das der µC läuft wenn das Auto abgestellt 
ist. Du könntest nämlich das ganze über die Zündung steueren. Zündung 
aus = AVR aus.

Weiterhin benötigst du im KFZ-Bereich einige Sachen zur Entstörung ein 
LM7805 oder LM317 ohne diese Maßnahmen wird es in dieser Umgebung nicht 
lange mitmachen.

Ein stromgesteuerter Transistor ist verbrauchstechnisch auch nicht 
umbedingt das beste, hier würde ich einen FET nehmen der wird durch eine 
Spannung geregelt und es fließt nur im Umlademoment ein Strom.

Beschreibe dein Projekt mal etwas näher.

Hier kannst du erstmal die ersten Schritte 
gehen.https://www.mikrocontroller.net/articles/AVR-Tutorial#Aufbau_des_Tutorials

Mittels der Fuses stellst du Dinge wie Taktfrequenz, Taktquelle, 
Startverzögerung usw. ein. Anbei ein paar Bilder aus dem AVR-Studio dort 
muss man nur entsprechend anklicken, bei anderen Programmen muss du dir 
die Bits evtl. erst zusammenwürfeln und invertrieren.
Angehängte Dateien:
Gast #3947642
Lesenswert?

Darf ich daran erinnern, was ich ganz Anfang schon geschrieben hatte? :

> Vielleicht hat er einige I/O Pins unbeschaltet gelassen und nichtmal
> Pull-Up's eingeschaltet. Das erhöht die Stromaufnahme ein wenig.

Der Schaltplan zeigt, dass die meisten I/O Pins unbeschaltet sind. Also 
prüfe endlich, wie diese Pins per Software konfiguriert sind! Denn genau 
das könnte dein Fehler sein.

Ich habe das schon bewusst so geschrieben, denn Deine Frage wurde hier 
schon öfters gestellt und die Ursache war fast immer genau diese. Das 
ist ein typischer Anfängerfehler : CMOS Eingänge offen lassen.
#3949249
Lesenswert?

>> Vielleicht hat er einige I/O Pins unbeschaltet gelassen und nichtmal
>> Pull-Up's eingeschaltet. Das erhöht die Stromaufnahme ein wenig.

Bitte um eine kurze Erklärung. Eingänge sind eigentlich hochohmig, so 
das hier kaum Strom fließt und wenn keine Spannung anliegt erst recht 
nicht. Wenn man jetzt die Pullups aktiviert oder aktiviert läßt sind die 
Chancen von Verlusten schon mal enorm gestiegen. Es kann dann nicht nur 
ein Strom in den Eingang hin einfließen (ca. 1µA) sondern auch vom Pin 
in die externe Beschaltung (bei 20-100 kOhm internen Pullups) kann das 
bei mehreren Pins schon zu ein paar mA führen.

Wenn ich einen Eingang benötige, dann spielt es doch keine Rolle ob er 
umbeschaltet ist und rumflattert. Es erhöht höchstens die 
Störempfindlichkeit der Schaltung deswegen wäre ein externer Pulldown 
die bessere(stromsparende) Wahl

Es gibt im Datenblatt ein paar Angaben dazu
I/O Pin Pull-up Resistor Current vs. Input Voltage
Input Leakage Current I/O Pin
I/O Pin Pull-up Resistor
#3949264
Lesenswert?

Thomas O. schrieb:
> Wenn ich einen Eingang benötige, dann spielt es doch keine Rolle ob er
> umbeschaltet ist und rumflattert.

Doch, es spielt eine Rolle: Eine CMOS-Stufe hat einen Querstrom durch 
beide FETs, wenn die Gatespannungen sich im analogen Bereich befindet: 
beide FETs sind noch etwas angesteuert.
Schaltung einer CMOS-Stufe: 
http://de.wikipedia.org/wiki/Complementary_metal-oxide-semiconductor#Technik

Gruß Dietrich
#3949266
Lesenswert?

Thomas O. schrieb:
> ein Strom in den Eingang hin einfließen (ca. 1µA)

Das ist der Grenzwert im Datasheet. Der tatsächliche Wert ist 
vernachlässigbar.

> Wenn ich einen Eingang benötige, dann spielt es doch keine Rolle ob er
> umbeschaltet ist und rumflattert.

Du vergisst den Querstrom der beiden MOSFETs der Eingangsstufe. Der ist 
bei einer Eingangsspannung in halber Höhe im Maximum.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren