Forum: Mikrocontroller und Digitale Elektronik Interrupt INT0 -> hoher Stromverbrauch


von Xaver Koller (Gast)


Lesenswert?

Hallo

ich verwende für ein kleines uC-Projekt einen ATMEL AT90S2313.
Es wird dabei ein Encoder mit einer Spur an den externen Interrupt
INT0 des uC angeschlossen und die Inkremente gezählt.
Es funktioniert soweit ganz gut, bis auf die Tatsache, dass der
Stromverbrauch bei 5V am INT0 auf über 80mA !! ansteigt.
Der Pin INT0 ist dabei mit 10kOhm gegen GND (pull-down) geschaltet.
Bei 0V am INT0 habe ich lediglich einen Stromverbrauch von 10mA.

Die für den Interrupt zuständigen Register habe ich wie folgt belegt:
DDRD = 0b11001100 //INT0 und INT1 als Ausgänge beschaltet
GIMSK = 0b01000000 //INT0 freigeben
MCUCR = 0b00000011 //Interrupt bei pos.Flanke am INT0

Ist dieser hohe Stromverbrauch bei Verwendung des externen Interrupts
normal?
Oder, was mache ich falsch?

Ich möchte die Schaltung lediglich mit einer Batterie versorgen, was
ich mir bei dem Stromverbrauch abschminken kann :(

Danke für jede Antwort

Xaver

von harry (Gast)


Lesenswert?

hi,

nee, das ist nicht normal.
die inputs von avr sind sehr hochohmig, deshalb kannst du den pulldown
als 100k ausführen, ggfs noch ein kondensator parallel dazu, damit der
int0 nicht auf jeden pips anspricht.
der int0 sollte als input definiert werden.
zwischen signalquelle und int0 könnte ein 10k zur strombegrenzung
liegen, wird aber nicht nötig sein, wenn int0 input ist.

gruss, harry

von Xaver Koller (Gast)


Lesenswert?

Danke Harry,
Problem war die Definition als Ausgang!!
Da hab ich die Beschreibung missverstanden.
INT0/1 als Ausgang wenn man einen Software-Interrupt ausführen will.

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
Noch kein Account? Hier anmelden.