Hallo Leute, ich habe bisher nur Assembler und ein bisschen Bascom programmiert, und ich arbeite im Moment nur mit 8051 kompatiblen Chips. Ich habe nun ein Projekt mit USB anbindung vor und möchte deshalb mit dem 89C5131 von Atmel arbeiten. Da ich ein C-Newbee bin stehe ich bereits am Anfang vor einem Problem, bei dem ich Hilfe benötige. Der 5131 hat u.A. ein EEPROM in dem ich ein paar Daten dauerhaft ablegen möchte. So u.A. auch die Displaysprache. Wie im Assembler will ich die Entsprechenden Texte im Code Bereich abspeichern und folgendermassen aufrufen: Lcd_out(1,1,dtext1); Bedeutet: In der Zeile 1 an Position 1 soll der Text "dtext1" ausgegeben werden. Die Lcd Ausgabe funktioniert einwandfrei. Angenommen ich habe vier Zeilen a 16 Zeichen Text im Code Bereich gespeichert und danach direkt weitere 4 Zeilen a 16 Zeichen in einer anderen Sprache. Wenn ich dann eine "Offset" Variable zum Aufruf hinzufüge, wie es beim Assembler funktioniert, klappt es beim SDCC nicht: Lcd_out(1,1,dtext1+Offset); funktioniert, wenn Offset = 0 ist. Ist Offset = 32 (oder auch 34 wegen der Nullterminierung des Strings) wird ein Text aus dem Nirwana angezeigt. Was mach ich bei der Adressierung falsch???????? Viele Grüsse Uli
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.