Hallo, kann mir jemand sagen wie ich mit CodeVision AVR am besten eine Integer Zahl in ihr High Byte und Low Byte zerlege so das ich sie als 8-Bit Zahl per UART übertragen kann? Gruß Malte.
Eigentlich heist das Forum "GCC", aber ich will mal nicht so sein ;)
Entweder macht man das mit einer "union":
union
u
{
int iValue;
unsigned char cValue[2];
};
...oder einfach "Mask&Shift":
int iValue;
unsigned char cLow;
unsigned char cHigh;
[..]
cLow = iValue & 0xFF;
cHigh = iValue >> 8;
[..]
Hi, jo war schon klar das es hier nicht 100% reinpasst, aber ich denk immernoch besser als woanders oder? Immerhin gehts ja hier um C Compiler ;-) Mask&Shift... oh man, naja wenn man ein Brett vorm Kopf hat ;-) Danke Gruß Malte.
Hallo, kann mir jemand sagen wie man in c Zwei char Zahlen (High Byte und Low Byte) zusammenbringen kann, so das man sie als 16-Bit bekommst?
1 | |
2 | ...
|
3 | unsigned int 8Low = 0xFF; |
4 | unsigned int 8High = 0x10; |
5 | unsigned int 16Value = 0x0000; |
6 | |
7 | ...
|
8 | 16Value = ???? // 8Low + 8High |
9 | ...
|
Gruß
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.