PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zahlen auf dem LCD



Allo
30.09.2006, 22:05
Hallo,

ich möchte auf meinem lcd mit HD44780-kompatieblem Controller die Uhrzeit ausgeben. dazu verwende ich den µC Atmega8 und programmiere in C.
Zum ansteuern des LCDs verwende ich die lcd.h von Peter Fleury. Normale Ausgaben wie


lcd_puts("HELLO WORLD\n");

klappen auch wunderbar, nur ich habe keinen Schimmer wie ich Zahlen ausgeben soll!

Mein Compiler sagt dazu:


main.c:120: Warnung: Verarbeiten des Argumentes 1 von »lcd_puts« erzeugt Zeiger von Ganzzahl ohne Typkonvertierung


Das heißt imo das ich eine Variable (z.B. volatile uint8_t minutes) in ein Char umwandeln soll. Ich weiß jedoch nicht wie ich das anstellen soll und googlen half da auch nicht viel weiter :-k

Vielleicht kann jemand hier im Forum weiterhelfen.

Mfg,
Allo

izaseba
30.09.2006, 22:20
und googlen half da auch nicht viel weiter Think

Und was sagt die Forumsuche, wenn Du nach itoa suchts ?
Bedenke, um itoa zu nutzen mußt Du stdlib einbinden

gruß Sebastian

Inges
01.10.2006, 13:19
Einfachste Möglichkeit ist der Befehl 'sprintf'. Er wandelt eine Zahl, die in einer Variablen gespeichert ist, in einen String (Zeichenkette):

#include <stdio.h> // Wird benötigt !!

unsigned int Zahl; // Maximal 65535 -> maximal 5 Zeichen
char Zeichenkette[6]; // 6-> String mit 5 möglichen Zeichen
Zahl=128;
sprintf(Zeichenkette,"%i",Zahl); // sprintf speichert die Zahl aus der Variable 'Zahl', als Zeichen in den String 'Zeichenkette'
lcd_puts(Zeichenkette); // Ausgabe der Zahl auf dem Display