Forum: Mikrocontroller und Digitale Elektronik Interrupt geht nicht


von Dary (Gast)


Angehängte Dateien:

Lesenswert?

Hi.

Der Code im anhang soll eigentlich nur den Timer1/Counter1 starten und
bei einem überlauf Timer_Overflow aufrufen...macht er aber nicht immer
wenn ein überlauf stattfindet, dann springt er an eine andere adresse.
(in die Zeile wo ";Timer initialisieren" steht).
woran kann das leigen ? ich hab extra schon alle interrupts auf
Timer_Overflow gesetzt, damit ich auch ja den richtigen erwische.

MfG Dary

von dave (Gast)


Lesenswert?

Versuchs erstmal mit nem NOP vor oder nach jedem RJMP in deinen
Interruptvektoren.

von mmerten (Gast)


Lesenswert?

beim M16 sind die Int Vektoren double word einträge. Also immer jmp oder
rjmp gefolgt von nop benutzen, wobei mit rjmp nur die ersten 4k des
programmspeichers erreichbar sind.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.