Gast
#586368
Hallo @ all
Ich möchte Daten von den Ports einlesen. Der Datenbus ist 8 Bit breit.
Zuerst übertrage ich das Low-Byte und anschließend das High-Byte. Danach
möchte ich das Low-Byte und High-Byte zusammenfassen zu einem unsigned
int. Hier mein Quellcode:
bit status;
char low_byte, high_byte;
if(status == LOW_BYTE)
{
low_byte = PINC;
status = HIGH_BYTE;
}
else
{
high_byte = PINC;
ptr_datenpuffer[i] = high_byte;
ptr_datenpuffer[i] = ptr_datenpuffer[i] << 8;
ptr_datenpuffer[i] = low_byte;
status = LOW_BYTE;
}
Ich dachte das durch die Wertzuweisung die unteren 8 Bits des unsigned
int beschrieben werden. Anschließend wollte ich das ganze um 8 Stellen
nach links schieben und dann das Low-Byte zuweisen. Dies scheint so aber
nicht zu funktionieren
Grüsse
Sebastian