Receive Complete Interrupt an ATmega2561

OP #1252582
Hallo,
ich versuche gerade eine Interruptserviceroutine für das Empfangen 
serieller Daten an einem ATmega2561 zu benutzen.
Ich simuliere das programm gerade im AVR Studio. Mit Hilfe von hapsim 
sende ich Daten an die Simulation.
Das Programm funktioniert mit polling. In meiner tatsächlichen Anwendung 
wird polling zu langsam und es werden Daten verschluckt, darum bin ich 
auf den Interrupt angewiesen.
Zur Ausprobe benutze ich zwei Haltepunkte. Einen direkt nach Sei() und 
zu prüfen, ob alles richtig initialisiert wurde, einen zweiten in der 
ISR, in der ich zur Zeite nur einen Variable hochzähle.

Wird der Interrupt nun ausgelöst, wird die ISR nicht ausgeführt, statt 
dessen startet der Controler neu.
Das gleiche Problem habe ich, wenn ich die ISR komplett weglasse.
Ich vermute das das Programm zur falschen Adresse springt.

Meine ISR habe ich ISR(USART1_RX_vect) genannt.

Ich hoffe jemand hat eine Idee für mich.
OP #1252748
Nun habe ich herausgefunden, dass die Adresse 0x01f048 anscheinend die 
Adresse ist, an der die ISR stehen muss. Oder muss ich an der Stelle 
einen Strung an die ISR programmieren?
Wenn ja, wie mach ich das dann unter C?
Bei meinem ATmega32 brauchte ich das doch auch nicht machen ???

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 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.