moin @ all, ich bekomme seitdem ich mein CompareMatch Interrupt von 0x000A korrigiert habe zu: 0x000D folgende Fehlermeldung: ******(23): error: Overlap in .cseg: addr=0xd conflicts with 0xd:0xe Wo liegt der Fehler? Bzw. was bedeutet der Fehler? Zeile 23 ist die Abfrage direkt nach der Initialisierung: cpi r16, 0x01 //Ist DDRB schon konfiguriert? Vielen Dank schon mal für sämtliche antworten fabi
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
Quizfrage: auf welchen Adressen liegen jetzt die Befehle 'in' und 'cpi'?
anscheinend hab ich mich noch zu wenig mit stack beschäftigt. Wo kann ich das nachlesen. bzw. kannst du mir das erklären? Ich find gerade nix passendes im tutorial bzw. hier im forum
ok, wenn man 0x000D hinter 0x000B schreibt, funktionierts wieder. Einigermasen logisch, wegen der Größe der Zahlen, die dahinter stehen. Aber mehr hab ich leider auch noch nicht davon verstanden.
Fabian Scheidig schrieb: > Aber mehr hab ich leider auch noch nicht davon verstanden. Die Befehle werden nacheinander im Speicher angeordnet. Dieses streng monotone Nacheinander wird mit dem .org beeinflusst:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
Und welcher soll jetzt auf 000D, 'rjmp matcha' oder 'cpi r16, 0x01'?
danke für die super Erklärung, warum findet man sowas nicht im Tutorial?
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.