Also mein avr-gcc (3.4) nimmt nach
#include <stdlib.h>
brav das itoa() ist der libc.a.
Oder selber Hand anlegen:
buf[] enthält danach den ASCII-String mit abschliessender '\0'.Code:char buf[6]; void itoa (unsigned short num) { char i; for (i=4; i>=0; i--) { char digit = num % 10; if (i < 4 && num == 0) digit = ' '; else digit += '0'; num /= 10; buf[i] = digit; } }
Die '\0' wird schon im startup Code geschrieben. Das geht aber bestimmt noch kürzer und schneller mit der div() Funktion, die gleichzeitig Rest und Quotient liefert.
Falls dein Terminal das nicht darstellt wie gewohnt, musst du eben noch den ASCII nach Terminal-Sonderlocke-Format konvertieren.







Zitieren

Lesezeichen