mikrocontroller.net

Forum: Compiler & IDEs ATmega8535 - alle Interrupts verursachen Reset


Autor: Kristof Csorba (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hello Alle!
Irgendwie kann ich in mein ATmega8535 zu keine der Interrupts Haendler
zuordnen. Im Beispiel Programm will ich ein LED einschalten, aber
nachdem ich INT0 aktivierte (einfache Knopf zwischen INT0 pin und GND),
wird ein Reset ausgefuehrt. (LED schaltet sich bald wieder aus.)
Dasselbe passiert bei Versuchen mit SIG_ACD und SIG_INTERRUPT1. Ich
habe signal.h, modell im makefile stimmt... andere Empfehlungen habe
ich bissher nicht gefunden. Mir scheint, fuer alle Interrupts wird der
default vector ausgefuehrt.
Hat jemand ein Idee, was ich falsch mache?

ciao,
Kristof

Autor: Mike Schultz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,

kann es sein, daß er dir die while() schleife wegoptimiert?
Ich bin der meinug mal gelesen zu haben, daß der Kompiler diese
Schleifen zum teil erkennt und wegläßt.

Und dann wartet er natürlich nicht, sondern läuft immer weiter und
führt "sinnlose" Befehle aus bis er wieder am Anfang ankommt. Und da
kommt dann ein Reset.

Mike

Autor: mthomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Compiler "wirft" keine Warnungen? Da sollte zumindest noch ein
#include <avr/signal.h> rein. Ausserdem: Parameter zur
delay-loop-Funktion duerfte ausserhalb des Wertebereichs sein.

Autor: Kristof Csorba (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Waaaaah...
OK, Ihr habt Recht! Der Compiler wirft
test1.c:14: warning: type of "__vector_14" defaults to "int"
zB. beim SIG_ADC. Und das habe ich nicht bemerkt. Noch ein Grund, warum
Interrupts nicht gehen koennen...
Danke fuer die Hilfe!
ciao,
Kristof

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.