Interupptproblem

Gast #138481
Hi.

Ich möchte bei meinem AT90S2313 den Interuppt so einstellen, das jede
Änderung den Interuppt auslöst.

         ldi temp, 0b00000001  ;INT0  konfigurieren
         out MCUCR, temp

Die anderen 3 Interuppt's, fallende, steigende Flanke und negativ
funktionieren super, nur dieser nicht. Ich nehme das Programm vom
Tutorial.

mach ich da was falsch?
Gast #138484
Schau mal im Datenblatt des 2313 nach.

Dort wirst du sehen, dass die Tabelle für das MCUCR Register so
aussieht:

ISC01   ISC00   Description

  0       0     The low level of INT0 generates an interrupt req
  0       1     Reserved
  1       0     The falling edge of INT0....
  1       1     The rising......


Ich denke das Tutorial ist für einen anderen Typ geschrieben
Gast #138487
Da der 2313 dieses Feature noch nicht hat, musst du in der ISR das Bit
ISC00 toggeln. Somit schaltet die steigende Flanke auf fallende um und
die fallende auf steigende.

...
Gast #138488
Komisch.

Ich sehe mir immer das Datenblatt an, von genau dem Typ, den ich
programmieren will.

Und wenn da ein Feature nicht drinsteht, käme ich gar nicht erst auf
die Idee, mich zu wundern, daß es auch nicht funktioniert.


Peter

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.