www.mikrocontroller.net

Forum: Compiler & IDEs Interrupt erzeugt Reset


Autor: Jens123 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, cih habe ein kleines Problem.

wenn ich :
SIGNAL (SIG_INTERRUPT0) {
  KB_PORT |= _BV(KB_DATA);
}
in die main.c schreibe klappt alles

wenn ich es jedoch in die kb.c reinpacke macht der controller immer ein
reset

Hat jemand eine idee, wieso?

muss ich das noch irgendwie in die hb.h reinpacken??

Autor: Jörg Wunsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Linkst Du denn kb.c überhaupt mit zum Ergebnis dazu?

Ein `reset' passiert immer dann, wenn ein Interrupt eintrifft, der
keinen passenden Handler hat, da der Standard-Handler einen JMP 0
macht.

Autor: Jens123 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja mache ich
lag an der signal.h interrupt.h hatte ich drin
anfaenngerfehler ;)

Autor: Stefan Seegel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast du in kb.c auch den include von signal.h drin ? den fehler mache
ich auch gern wenn man seine codeschnipsel dann in das richtige c file
einsortiert geht nix mehr ;-)

Stefan

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.