AtmelStudio 7 - Problem beim Debuggen

Gast #4537989
Lesenswert?
• ▲
▼
Hallo,

ich habe eine einfache Assembler-Routine, die ich in meinem main.c 
Aufrufe.
Wenn ich die Assembler-Routine schrittweise mit F10 debugge, dann stoppt 
der Debugger irgendwann und der gelbe Pfeil (wo ich mich im ASM-Code 
gerade befinde) verschwindet.
Dies passiert an unterschiedlichen Stellen im Assembler-Code.

Hier der Code:
1
secondfunc_asm:
2
  LDI    R16, 8                  ; Zähler auf 8 setzen
3
  
4
  LOOP:
5
    SBI   _SFR_IO_ADDR(PORTB), 5 ; Pin auf HIGH
6
    SBRS  R1, 7
7
    NOP
8
    CBI   _SFR_IO_ADDR(PORTB), 5 ; Pin auf LOW      
9
    LSL    R1 
10

11
    DEC    R16
12
    CPI    R16, 0  
13
    BRNE  LOOP
14
RET

Habe den Code hier auf wenige Zeilen reduziert, um das Wesentliche zu 
zeigen. So wie der Code hier gezeigt ist, macht er kaum Sinn, aber das 
Problem tritt hier auf.

Woran kann das liegen, dass der Debugger an unterschiedlichen Stellen 
einfach stoppt und ich nicht weiter debuggen kann?

Danke...
Gast #4538068
Lesenswert?
• ▲
▼
Hallo Oh doch,

habe es auch mit folgendem Code probiert, löst aber das Problem nicht:
1
secondfunc_asm:
2

3
  ; Stack initialisieren
4
  ldi r16, lo8(RAMEND)
5
  out _SFR_IO_ADDR(SPL), r16
6
  ldi R16, hi8(RAMEND)
7
  out _SFR_IO_ADDR(SPH), r16
8
  
9
  LDI    R17, 8                  ; Zähler auf 8 setzen
10
  
11
  LOOP:
12
    SBI   _SFR_IO_ADDR(PORTB), 5 ; Pin auf HIGH
13
    SBRS  R1, 7
14
    NOP
15
    CBI   _SFR_IO_ADDR(PORTB), 5 ; Pin auf LOW      
16
    LSL    R1 
17

18
    DEC    R17
19
    CPI    R17, 0  
20
    BRNE  LOOP
21
RET
#4539523
Lesenswert?
• ▲
▼
Ich hab das mal mit deinem ASM Code probiert und bei mir ist es so das 
Atmel Studio 7 willkürlich statt Stepover in den Running mode geht. Wenn 
ich dann aber auf Pause klicke ist es nur einen Schritt weiter geangen. 
Auch der Cycle Counter ist nur um eines erhöht, egal wie lange ich 
warte.

Gruß JackFrost
Gast #4539823
Lesenswert?
• ▲
▼
Hallo Bastian,

danke für Deine Hilfe.
Was bedeutet das nun? Kann man mit AtmelStudio 7 keinen ASM-Code 
debuggen?
Ich hab mal irgendwo gelesen, dass Andere Probleme mit Sprungbefehlen in 
ASM hatten und dann die Compiler-Optimierungen abgeschaltet haben.
Habe das auch mal probiert (-O0) aber das bringt nichts.
Müssen da evtl. noch andere Einstellungen aktiviert / deaktiviert 
werden?

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