Hallo, schreibe zur Zeit ein Programm für ein ATMega128. Habe früher nur ATMega8 und 16 benutzt. Kann mir jemanden sagen ob ich in diesem kürzen Code irgendetwas falsch mache. Im Simulator läuft alles wunderbar, aber wenn ich das Programm auf dem uC programmiere, kommt das Programm nie zu der Zeile nach "rcall test". Sieht aus wie ein Stackproblem, aber ich weiss nicht was ich da falsch mache. Hier den Code: .include "m128def.inc" .org 0x0000 jmp reset ;***************************** reset: ;Init stack ldi R16, high(RAMEND) out SPH, R16 ldi R16, low(RAMEND) out SPL, R16 ;PORT A output ldi R16, 0x01 out DDRA, R16 rcall test ldi R16, 0x01 out PORTA, R16 loop: jmp loop test: ldi R17,1 ret
Habe schon die Lösung gefunden. Die Fuse M103C, 103 Compability mode ist von Atmel schon gesetzt. Nach dem Löschen läuft alles supa. siehe auch: http://www.mikrocontroller.net/articles/AVR_Checkliste unter Atmega128
Hi Alle; Diese Funktionen sind for ATMEL uC geschrieben, I waere sehr dankbar, wenn jemand mir sagen koennte, wei kann ich zu msp430 umsetzen. danke #define WAIT_FOR_BOUNDARY() while(!(get_hvalue(TIMESTAT2) | 0xFFFE)) #define ENABLE_T1_COMPC_INT() do { put_hvalue(TIMECNTL3, get_hvalue(TIMECNTL3) | 0x0019); } while (0) #define DISABLE_T1_COMPC_INT() do { put_hvalue(TIMECNTL3, get_hvalue(TIMECNTL3) & 0xFFE6); } while (0) #define CLEAR_T1_COMPC_INT() do { put_hvalue(TIMESTAT3, 0x0001); } while (0)
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.