mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Warum geht meiner INT0 nicht ??


Autor: Dominic Thomé (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

kann mir einer sagen, warum ich mit meinem AVR-GCC keinen INTO
generiert bekomme ?

MCUCR = _BV(ISC01)|_BV(ISC00); // Ansteigende Flanke
enable_external_int ((1<<INT0) );


Interrupt-Hnadler schaut so aus :
SIGNAL  (SIG_INTERRUPT0) { // Drehzahlmesser
      rpm++;
//    lcd_puts_P(".-#");
}
Sollte doch eigentlich so sein, daß wenn das SIgnal auf INT0-Pin von 0
auf 1 wechselt, meine Routine angesprungen werden soll, oder sehe ich
das falsch ?

Danke Dominic

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
steht in deinem Programm irgendwo sei() ?

Autor: Dominic Thomé (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Thomas,
ei, natürlich habe ich die Interrupts enabled, habe es bloss vergessen
oben zu erwähnen......
Ist in der main, gleich nach init(); wo der gesamte Initkram wie auch
die Interrupts gemacht werden.....

Dominic

Autor: Dieter B (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Hast du den INT0 Pin auch auf Eingang geschaltet ?

MFG
Dieter

Autor: Dominic Thomé (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Dieter,
hatte beides ausprobiert, Ausgang wie Eingang.
Laut Datenblatt des M16 soll es ja, sofern man nicht vorhat einen
Softwareinterrupt zu generieren egal sein, ob dieser Pin als Eingang
ode als Ausgang fungiert.

Dominic

Autor: Dominic Thomé (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach nochwas,

als Taktgenerator für den INT0, habe ich zur Zeit einen weiteren M16
auf dem STK500, welcher zyklisch von 0-255 Zählt und dies auf Port C
ausgibt, von dort 2 Strippen auf die andere Platine an den
INT-Eingang...

Dominic

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich schätz mal das
enable_external_int ((1<<INT0) );
sollte dafür sein aber probier trotzdem mal das INT0 Bit im GICR
Register manuell zu setzen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.