Schau, du zerlegst sozusagen deine Uhrezeit in die einzelnen Zeichen, wandelst diese in große um und setzt sie wieder als String zusammen
Vielleicht verstehst du es so: (ich gehe jetzt davon aus, das deine Uhrzeit in als Zahl in Sekunden seit 1.1.1970 (?) daherkommt)
time ist deine "ganze" Zeit in sekunden
das array int small_time deine Uhrzeit in kleinen Buchstaben
Du machst dir eine Funktion, bzw benutzt eine Fertige die die Sekunden in die aktuelle Uhrzeit umwandelt:
Code:
void time_to_number(long time, int* small_time)
{
//UMWANDELN
}
Dann sieht dein array z.B so aus (13:05:27):
Code:
small_time:
[0]: 1
[1]: 3
[2]: 0
[3]: 5
[4]: 2
[5]: 7
Nun kommt wieder eine Funktion die dir das Ganze in deinen Text umwandelt
Code:
#define x_pos(x) (x)*120 //X Position für jedes Zeichen ermitteln - ich gehe von 120x200 Pixel pro Zeichen aus
#define y_pos 20 //Randabstand von oben
void number_to_text (const int* small time)
{
int i;
for(i=0;i<=5;i++)
{
switch(i)
{
case 0: Null(x_pos(i),y_pos);
break;
case 1: Eins(x_pos(i),y_pos);
break;
//Und so weiter....
}
}
}
Din deinem Hauptprogramm würde dann nur das stehen:
Code:
void main()
{
int small_time[6];
//Andere Dinge....
while(1)
{
time_to_number(funktion_die_zeit_liefert, small_time);
number_to_text(small_time);
}
}
Ich hoffe es hilft dir weiter 
Mir kommt gerade.... du könntest aber auch eine große 7 Segmentanzeige verwenden 
mfg thomas
Lesezeichen