Der Post hier ist schon alt, ich antworte jedoch trotzdem, falls jemand es doch brauchen sollte.
Dann nimm doch einen cast-Operator, sowie botty es sagte. Stichwort "implizite Datentypkonvertierung". Heißt also eine "gewaltsame" Konvertierung von einem größeren Datentyp (uint16_t) zu einem kleineren (uint8_t).
Dann werden nur die niedrigsten 8 Bits der uint16_t - Variable in das Portregister eingetragen.
Code:uint8_t LowByte; uint16_t DualByte; // hier folgt die Zuweisung der 16-Bit-Variable // Bei einer impliziten Datentypkonvertierung findet kein Runden etc. statt, // lediglich ein "Abschneiden" der höheren 8 Bits. Die niedrigen 8 Bits werden // der 8-bit-Variable zugewiesen LowByte = (uint8_t) DualByte;







Zitieren


Lesezeichen