Externer Interrupt Beschaltung

OP #1695072
Lesenswert?

Hallo zusammen,

habe eine kurze Frage zur Beschaltung des Interruptpins[INT0] eines
ATMEGA 16. Arbeite gerade mit einem Sensor der mir ein Signal an einen 
74HTC14(Schmitt-Trigger invertiert) liefert. Wenn ich diese Schaltung 
separat prüfe bekomme ich an einem Ausgang des 7414 0V bzw. 5V. Wenn ich 
diesen Ausgang direkt auf den ATMEGA 16 Interruptpin gebe bekomme ich 
nur eine Spannung von 0V bzw. 1,9V. Diese 1,9V reichen nicht um einen 
Interrupt auszulösen. Kann mir bitte jemand weiterhelfen und die interne 
Beschaltung dieses PINs erklären.

Vielen Dank
#1695096
Lesenswert?

Christoph M. schrieb:
> Vielen dank für die schnelle Antwort.
> Das ist richtig. Hab PD2 als Ausgang definiert. Im Datenblatt steht aber
> auch dass ich PD2 als Ausgang definieren muss wenn ich den externen
> Interrupt INT0 nutzen möchte.

Wo genau?

Das ist unlogisch.
Ein Interrupt ist immer etwas, was von aussen an den µC herangetragen 
wird. Der Pin muss daher auf Input geschaltet sein. Bei manchen 
Funktionalitäten macht das die Hardware selbsttätig (zb wenn man den 
UART Empfangsteil einschaltet). Aber auf Ausgang schalten ist auf keinen 
Fall logisch. Wenn du so etwas liest, solltest du sofort stutzig werden. 
Ist es ein englisches Datenblatt, dann noch mal genau lesen, ob man sich 
nicht vertan hat und irgendwo ein not übersehen hat.
#1695124
Lesenswert?

Wenn ich mich richtig erinnere, steht im Datenblatt, dass sich der INT0 
als software-generierte Interruptquelle nutzen lässt, wenn man ihn als 
Ausgang initialisiert.  Das heißt natürlich nicht, dass man es so machen 
muss.  Und natürlich kann der Pin dann nicht mit einem anderen Ausgang 
verbunden werden.

Scheint mir eh eine Funktionalität zu sein, für die es außerhalb 
akademischer Tempel keine sinnvolle Anwendung gibt.  Ein cli, gefolgt 
von einem (r)call zur Interruptroutine, machen dasselbe.

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