Wenn Deine Variable pos den int-Wert 41 hat, was willst Du dann an das Display übergeben?
a) 0x29 oder
b) 0x41?
Fall a)
Dann geht's einfach mit P2 = pos;
Fall b)
Dafür müsstest Du eine kleine Funktion zum umrechnen schreiben:
Damit wäre dex2hex(41) = 65 = 0x41.Code:unsigned char dec2hex (int x) { unsigned char y; y = (x/10)*16 + (x%10); return y; } //Funktions-Aufruf: P2 = dec2hex(pos);
Allerdings kannst Du so dann keine Hex- Werte ans Display übergeben, die Buchstaben enthalten, wie z.B. 0xD3. Schließlich kennt int keine Buchstaben.
askazo







Zitieren

Lesezeichen