wie kann man eine uint16 nach uint8 übertragen.
der wert von uint16 ist nicht grösser wie 200.
dieses für winavr-c.
castle
Druckbare Version
wie kann man eine uint16 nach uint8 übertragen.
der wert von uint16 ist nicht grösser wie 200.
dieses für winavr-c.
castle
Ich weiß jetzt nicht ob das geht, aber hast du schon mal mit einem einfach Cast versucht? Also
var8int = (uint8) var16int;
ich habe eine maske genommen. danke
Meinst Du etwas wie
Das ist Verschwendung, da der Compiler die Maskierung für Dich macht, indem er nur die unteren 8 Bit des Datenwortes nimmt. Wenn Du Glück hast, wird das später wegoptimiert, da es unnötiger Code ist.Code:uint8_t i;
uint16_t x;
i = x & 0xff;
Um ein Warning des Compilers zu vermeiden ist der Weg den Andun beschrieben hat genau der richtige.