Gast
#275771
Ich versuche gerade von BASCOM auf C umzusteigen.
Habe eine kleines Unterprogramm geschrieben, welches eine Integerzahl
über den UART ausgibt:
void print_char (char c)
{
while (!(UCSRA & (1<<UDRE))){}
UDR = c;
}
void print_int (int wert)
{
int temp;
int i;
for (i=0; wert!=0; i++)
{
temp = wert % 10;
temp += 48;
print_char(temp);
wert /= 10;
};
}
Das Funktioniert auch, allerdings werden die Stellen falsch herum (also
mit der kleinste Stelle zuerst ausgegebne).
Ich könnte zwar die einzelnen Stellen in ein ARRAY schreiben und dann,
falsch herum ausgeben.
Gibt es vielleicht eine eleganter Methode dafür?