Hallo zusammen, es gelingt mir gerade nicht, Z mit einer Flash-ROM-Adresse zu laden. Nachdem meine bisherigen Versuche, Google zu fragen und das AVR-GLIBC-Manual zu lesen, nicht weiter halfen, hoffe ich nun, dass hier jemand damit Erfahrung hat. Im Prinzip ist es eine einfache Syntaxfrage, oder gibt es beim GNU Assembler hierfür keine Lösung der Art Sprungmarke: .db 0x01, 0x02, 0x03 [...] ldi ZL, low(Sprungmarke/Adresse) ldi ZH, high(Sprungmarke/Adresse) lpm (Beim AVR ASM v2 von Atmel lief das wunderbar) Ich habe die beiden Makros entsprechend durch (A & 0x00ff) bzw. (A >> 8) ersetzt und erhalte beim Versuch es zu assemblieren die Fehlermeldung "invalid sections for operation on `Sprungmarke' and `LO<nicht druckbares Zeichen>' wobei mir das LO vorkommt als die an der Adresse stehende Bytefolge bzw. seiner Abbildung in den bei der Ausgabe verwendeten Zeichensatz. Ich rate bzw. vermute, dass der Assembler nicht versteht, was ich von ihm will... Was mache ich falsch- oder: Wie lade ich ein Register mit einem aus der Adresse einer Sprungmarke abgeleiteten Wert, sodass es der GNU AVR Assembler versteht? Hintergrund des Ganzen: Habe bisher nur mit dem AVR Assembler v2 gearbeitet und wollte meinen Code langsam mal in Libraryform bringen, sodass man ihn elegant von C aus nutzen kann. Ich bin dankbar für alle Hinweise... Gruß Tristan
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.