Forum: Mikrocontroller und Digitale Elektronik Ulrich Radigs LCD Ansteuerung


von schurli (Gast)


Lesenswert?

Hi

Ich habe Ullis LCD Ansteuerung von seiner homepage auf meinem Atmega64 
mit DCF77 beflasht, nur leider funktioniert (nur) eine LCD Funtkion 
nicht.

Grundsätzlich läuft das LCD und man kann Text ausgeben.

Diese Funtkion hier spinnt herum:
1
void lcd_print_P (unsigned char zeile,unsigned char spalte,const char *Buffer,...)



Aufgerufen wird sie so:
1
lcd_print_P(0,0,"Time: %2i:%2i:%2i",hh,mm,ss);


Auf dem Lcd erscheinen nur wirre Zeichen.
Weiß jemand wie man das Problem lösen könnte?

von schurli (Gast)


Angehängte Dateien:

Lesenswert?

Funktion im Anhang

von Stefan E. (sternst)


Lesenswert?

Die Namensgebung ..._P lässt darauf schließen, dass die Funktion einen 
String im Flash erwartet. Deiner liegt aber im RAM.
Du kannst den String mit PSTR ins Flash verfrachten, also z.B. so:
PSTR("Hallo")
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Vereinfachung_f.C3.BCr_Zeichenketten_.28Strings.29_im_Flash

von schurli (Gast)


Lesenswert?

Könntest du mir sagen, was ich genau ändern müsste?

von Stefan E. (sternst)


Lesenswert?

> Könntest du mir sagen, was ich genau ändern müsste?

Ich dachte eigentlich, das hätte ich bereits.

lcd_print_P(0,0,PSTR("Time: %2i:%2i:%2i"),hh,mm,ss);

von schurli (Gast)


Lesenswert?

Es funktioniert wirklich!
Vielen Dank!!!

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.