[AVRasm]Stack oder Interruptfehler

OP #2921043
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
Angehängte Dateien:
#2921104
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
.org 0x000D    der nächste Befehl kommt auf Adresse 000D
2
  rjmp matcha  dieser nämlich, der nächste dann auf 000E
3
.org 0x000B    aber halt, wir machen nicht mit 000E weiter, sondern mit 000B
4
  rjmp extpin  dieser also auf 000B, der nächste auf 000C
5
...
6
in r16, DDRB   dieser also auf 000C, der nächste auf 000D 
7
cpi r16, 0x01  dieser also auf 000D, der nächste auf 000E
Und welcher soll jetzt auf 000D, 'rjmp matcha' oder 'cpi r16, 0x01'?

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 13 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.