Forum: Mikrocontroller und Digitale Elektronik sdcc und texte


von Uli (Gast)


Lesenswert?

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
Noch kein Account? Hier anmelden.