Von SubSubroutine zurück in Subroutine

OP #1944784
Lesenswert?

Servus,

bräuhcte bitte kurz ein bischen Hilfestellung.

Es geht um folgenden Code
1
.include "m48def.inc"
2
 
3
.def temp = r16
4
.def cnt = r17
5
 
6
.org 0x0000
7
        rjmp    main
8
.org OVF0addr
9
        rjmp    t0_ovf
10
 
11
main:
12
        ; Stackpointer initialisieren
13
        ldi     temp, HIGH(RAMEND)
14
        out     SPH, temp
15
        ldi     temp, LOW(RAMEND)     
16
        out     SPL, temp
17

18
        ldi temp, (1<<COM0A0) | (1<<WGM01)
19
        out TCCR0A, temp
20

21
;        ldi temp, (1<<CS01) | (1<<CS00)
22
        ldi temp, (1<<CS00)
23
        out TCCR0B, temp
24

25
        ldi temp, 83
26
        out OCR0A, temp
27

28
        ldi temp, (1<<OCIE0A)
29
        sts TIMSK0, temp
30

31
        sei
32

33
loop:   rjmp    loop
34

35
t0_ovf:
36
        tst cnt
37
        breq langerloop
38
        inc cnt
39
        reti
40

41
langerloop:
42
        ldi temp, 111
43
        out OCR0A, temp
44
        reti

Hier soll nach dem Ausführen von langerloop zurück in t0_ovf zu der 
zeile inc cnt gesprungen werden und nicht (wie es aktuell tut) zurück 
ins Hauptprogramm. Welcher Befehl is dafür nötig?

Danke für Hilfe!!!

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