Studio 6 und timer

OP #3754005
Lesenswert?

Hallo,

Ich habe mit Studio 6 einen Studio 4 Code für den ATtiny2313 importiert. 
Auf den ersten Anschein ist auch alles OK. Allerdings kann ich den Timer 
overflow mit F11 (step into) nicht simulieren, d.h. der Interruptsprung 
wird nicht ausgeführt. In Studio 4 ist alles genau zu verfolgen. Wenn 
ich im Studio 6 allerdings einen breakpoint setze, dann kann man sehen, 
daß der Sprung ausgeführt wird.

Hat jemand eine Erklärung, bzw. Abhilfe?

Gruß Bruno
Gast #3754068
Lesenswert?

Genaugenommen werden ISRs gar nicht angesprungen.

Das "klassische" Anspringen gibt es nur bei Unterroutinen.

Für Testzwecke kannst Du, so Du etwas Platz hast, die ISR doppelt, als 
"echte" Routine, kopieren und dann mit einem call aufrufen.
OP #3754108
Lesenswert?

Amateur schrieb:

> Für Testzwecke kannst Du, so Du etwas Platz hast, die ISR doppelt, als
> "echte" Routine, kopieren und dann mit einem call aufrufen.

Ich muß sagen, so ganz verstanden habe ich nicht wie Du das meinst, aber 
klingt umständlich. Wie Oliver schon sagt, kann man es im Run-Modus ja 
sehen. Wichtig ist nur, daß man es erst einmal weiß und nicht Stunden 
nach einem Fehler sucht.

Bruno
#3754455
Lesenswert?

Oliver S. schrieb:
> Bruno M. schrieb:
>> Hat jemand eine Erklärung, bzw. Abhilfe?
>
> Ist einfach so. Beim Debuggen mit Einzelschritten werden ISR's im
> Simulator nicht angesprungen.
>
> Abhilfe: Beschwer dich bei Atmel...

Alternativ könnte man natürlich auch einfach nur ein anderes Verhalten 
einstellen:
Debug -> Options and Settings -> Debugger -> Atmel Debugger
-> Mask interrupts while stepping
OP #3754488
Lesenswert?

Stefan Ernst schrieb:

> Alternativ könnte man natürlich auch einfach nur ein anderes Verhalten
> einstellen:
> Debug -> Options and Settings -> Debugger -> Atmel Debugger
> -> Mask interrupts while stepping

Hallo Stefan, funktioniert super!!

Herzlichen Dank.

Gruß Bruno
#3756480
Lesenswert?

Dazu hätte ich auch eine Frage, da ich grad ein ähnliches Problem habe.

Ich weiß, das es im Studio 4 die Möglichkeit gab, einzustellen ob die 
Timer im SingleStep Modus im Hintergrund laufen sollen, oder jeder 
Einzelschritt auch als ein (bzw soviele Takte wie für den Befehl 
notwendig) CPU-Takt angesehen wird. (run timer in stopped mode)

Ich suche diese Option verzweifelt im Studio 6.2. Die Anleitung sagt 
dazu nur, das es im Software-frontend einzustellen sei, aber nicht wo 
und wie???

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren