Gast
#1359525
Hallo, ich versuche mich gerade an einem AVR MC (ATmega 32-16PU) und verwende für die Assembler Programmierung AVR Studio. Ich habe ein eigentlich Simples Programm geschrieben wo eine Led per Tasten - druck leuchten soll und mit einem zweiten Taster wieder aus gehen soll. Mit einem dritten soll die Led blinken. Wenn ich mein Programm im Debug - Modus durchgehe, tritt nachdem der Timer überläuft folgende Fehlermeldung ein: “AVR Simulator: Uninitialized stack pointer used at 0x003b” danach springt er trotzdem in die ISR und führt auch meine Befehle für den Interrupt aus. Nachdem er damit fertig ist kommt folgende Meldung: ”AVR Simulator: Invalid opcode 0xffff at address 0x009898” Wäre nett wenn sich jemand kurz Zeit dafür nehmen könnte. Vielen Dank vorab. .include "m32def.inc" .org 0x000 .def temp = r18 .def t1h = r19 .def t1l =r20 .def stini = r17 .cseg rjmp init .org 0x010 rjmp intt1 .org 0x02b init: ldi stini, LOW(RAMEND) ;Untere 8 bit laden out SPL, stini ldi stini, HIGH(RAMEND) ;Obere 8 bit laden out SPH, stini ldi r16,0x60 out DDRD,r16 sei ldi r19, 0xc2 ldi r20, 0xf7 ldi temp, 0b00000100 out TIMSK, temp rjmp loop loop: SBIc PinD,2 rjmp an sbic PinD,3 rjmp aus sbic PinD,4 rjmp blink jmp loop an: ori r27, 0x60 out PORTD, r27 ldi temp, 0b00000000 ; t1 aus out TCCR1b, temp rjmp loop aus: ldi temp, 0b00000000 ; t1 aus out TCCR1b, temp ldi r27, 0x00 out PORTD, r27 rjmp loop blink: ldi temp, 0b00000101 ; teiler 1024 out TCCR1b, temp out tcnt1l,t1l out tcnt1h,t1h ldi r27, 0b00100000 out PORTD, r27 rjmp loop intt1: com r27 out portd, r27 out tcnt1l,t1l out tcnt1h,t1h reti